/*
Theme Name: Craft Prospect
Author: Shro Web
Description: Redesign concept theme for Craft Prospect.
Version: 1.0.0
Text Domain: craft
*/
@font-face{font-family:Montserrat;src:url(assets/fonts/montserrat.woff2) format("woff2");font-weight:400 800;font-display:swap}
@font-face{font-family:Inter;src:url(assets/fonts/inter.woff2) format("woff2");font-weight:400 800;font-display:swap}
:root{--navy:#0b1224;--navy2:#131d38;--red:#e2403f;--light:#f2f4f8;--ink:#0b1224;--mute:#9aa4bd;--line:rgba(255,255,255,.16);--d:Montserrat,system-ui,sans-serif;--b:Inter,system-ui,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;overflow-x:clip}
body{background:var(--navy);color:#e8ecf5;font:400 17px/1.65 var(--b);overflow-x:clip;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}a{color:inherit}ul{list-style:none}
.wrap{width:min(1240px,100% - 56px);margin-inline:auto}.narrow{max-width:820px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;color:#000;padding:8px 12px;z-index:99}
h1,h2,h3{font-family:var(--d);font-weight:800;line-height:1.05;letter-spacing:-.01em}
h1{font-size:clamp(3.4rem,9vw,8rem)}h2{font-size:clamp(2.1rem,4.2vw,3.5rem)}h3{font-size:1.35rem;line-height:1.2}
.lead{font-size:clamp(1.1rem,1.5vw,1.3rem);max-width:56ch;margin-top:20px;opacity:.95}.first{font-size:clamp(1.2rem,1.8vw,1.5rem);font-weight:600;line-height:1.4;margin:18px 0}p+p{margin-top:1em}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 30px;background:var(--red);color:#fff;font:700 .95rem/1 var(--d);text-decoration:none;border:2px solid var(--red);border-radius:4px;transition:background .2s,color .2s}.btn:hover{background:#fff;color:var(--navy);border-color:#fff}.btn.ghost{background:transparent;border-color:#fff}.btn.ghost:hover{background:#fff;color:var(--navy)}.btn.sm{padding:11px 20px;font-size:.88rem}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.more{font:700 1rem var(--d);text-decoration:none;border-bottom:3px solid var(--red);padding-bottom:3px}.more:hover{color:var(--red)}
header.site{position:sticky;top:0;z-index:60;background:rgba(11,18,36,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;height:84px;gap:28px}.logo img{height:56px;width:auto}
nav.main{display:flex;align-items:center;gap:32px}nav.main ul{display:flex;gap:28px}nav.main li a{font:600 .95rem var(--d);text-decoration:none;padding:6px 0;border-bottom:3px solid transparent;color:#dfe5f2}nav.main li a:hover,nav.main li a[aria-current]{border-color:var(--red);color:#fff}
.menu-btn{display:none;background:none;border:0;width:46px;height:46px;position:relative;cursor:pointer}.menu-btn span{position:absolute;left:9px;right:9px;height:3px;background:#fff;transition:transform .25s,top .25s}.menu-btn span:nth-child(1){top:17px}.menu-btn span:nth-child(2){top:27px}
.menu-btn[aria-expanded=true] span:nth-child(1){top:22px;transform:rotate(45deg)}.menu-btn[aria-expanded=true] span:nth-child(2){top:22px;transform:rotate(-45deg)}
.hero{position:relative;min-height:clamp(640px,92svh,980px);display:grid;align-items:center;overflow:hidden;background:#000}
.hero .hbg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 70%}
.hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(11,18,36,.88) 12%,rgba(11,18,36,.35) 62%,rgba(11,18,36,.1)),linear-gradient(0deg,var(--navy),transparent 22%)}
.hero .wrap{position:relative;z-index:2;padding-block:90px}.hero h1{max-width:9ch}.hero .lead{font-size:1.4rem;max-width:30ch}
.sec{padding:clamp(70px,9vw,120px) 0}.sec.light{background:var(--light);color:var(--ink)}.sec.dark{background:var(--navy2)}
.sh{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;border-bottom:3px solid var(--red);padding-bottom:14px;margin-bottom:36px}
.two{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,6vw,90px);align-items:center}.two.top{align-items:start}
.light h2:after,.light .sub{display:block}.sub{font-size:1.35rem;margin:34px 0 12px}
.light p{color:#2a3350}.light .first{color:var(--ink)}
.ph{margin:0}.ph img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px}.ph.badge img{aspect-ratio:auto;border-radius:6px}
.svc{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:70px}.svc>div{border-top:4px solid var(--red);padding-top:18px}.svc ul,.pgrid ul{margin-top:12px;display:grid;gap:8px}.svc li,.pgrid li{padding-left:18px;position:relative}.svc li:before,.pgrid li:before{content:"";position:absolute;left:0;top:.7em;width:8px;height:3px;background:var(--red)}
.blk p{margin-top:12px;color:#c9d1e6}.blk h3{font-size:1.8rem}
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:60px}.pgrid>div{border-top:4px solid var(--red);padding-top:18px}
.hw{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:60px}.hw img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:4px}
.volt{position:relative;overflow:hidden;padding:clamp(80px,10vw,140px) 0;background:#000}.volt .vbg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}.volt:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(11,18,36,.92) 20%,rgba(11,18,36,.4))}.volt .wrap{position:relative;z-index:2}.volt.slim{padding:70px 0;background:var(--navy2)}
.vtab dl div{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.vtab dt{font:600 1rem var(--d);color:var(--mute)}.vtab dd{font:800 2.6rem/1 var(--d)}.vtab .next{margin-top:24px;padding:18px 20px;border-left:5px solid var(--red);background:rgba(255,255,255,.07)}
.vals{display:grid;grid-template-columns:1fr 1fr;gap:44px 70px}.vals>div{border-top:3px solid var(--red);padding-top:18px}.vals.three{grid-template-columns:repeat(3,1fr);gap:40px}.vals p{margin-top:10px;color:#c9d1e6}.light .vals p{color:#2a3350}
.quote{background:var(--red);color:#fff;padding:clamp(60px,7vw,100px) 0}.quote blockquote p{font:600 clamp(1.3rem,2.4vw,2rem)/1.4 var(--d);max-width:30em}.quote cite{display:block;margin-top:22px;font:700 1rem var(--d);font-style:normal}
.part ul{display:flex;flex-wrap:wrap;gap:10px 34px;margin-top:34px}.part li{font:700 1.5rem var(--d);color:#fff}
.ngrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.nc{display:flex;flex-direction:column;gap:10px;padding:26px;background:#fff;border-top:4px solid var(--red);text-decoration:none;color:var(--ink);transition:transform .2s}.nc:hover{transform:translateY(-4px)}.nc b{font:700 1.2rem/1.25 var(--d)}.nc span{color:#4a5472;font-size:.95rem}.ngrid.all{grid-template-columns:repeat(2,1fr)}
.join{position:relative;overflow:hidden;padding:clamp(80px,10vw,130px) 0;background:#000}.join .jbg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.45}.join:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(11,18,36,.92),rgba(11,18,36,.5))}.join .wrap{position:relative;z-index:2}.join h2{max-width:20ch}
.phead{position:relative;overflow:hidden;padding:clamp(60px,8vw,110px) 0;background:var(--navy2);border-bottom:4px solid var(--red)}.phead .pbg{position:absolute;right:0;top:0;width:60%;height:100%;object-fit:cover;opacity:.55;-webkit-mask-image:linear-gradient(90deg,transparent,#000 60%);mask-image:linear-gradient(90deg,transparent,#000 60%)}.phead .wrap{position:relative;z-index:2}.phead h1{font-size:clamp(2.6rem,6vw,5.2rem);max-width:15ch}.phead .lead{max-width:48ch}
.prodl article{display:grid;grid-template-columns:.9fr 1.1fr auto;gap:34px;align-items:start;padding:34px 0;border-top:1px solid #cfd5e3}.prodl article:first-child{border-top:4px solid var(--red)}.prodl h2{font-size:clamp(1.7rem,2.8vw,2.4rem)}
.gov li{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid #cfd5e3;color:var(--ink)}.gov b{font:700 1.1rem var(--d)}.gov span{color:#4a5472;text-align:right}.ethos h3{margin:26px 0 8px}.ethos h2{margin-bottom:6px}
.gal{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;background:var(--navy)}.gal img{width:100%;aspect-ratio:1/1;object-fit:cover}
.job{background:#fff;padding:32px;border-top:4px solid var(--red)}.job .loc{color:var(--red);font-weight:700;margin:8px 0 14px}.job .btn{margin-top:22px}
.form{display:grid;gap:18px}.form p+p{margin-top:0}.form .two2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form label{display:block;font:600 .9rem var(--d);margin-bottom:6px;color:var(--ink)}.form input,.form select,.form textarea{font:400 1rem var(--b);padding:13px 14px;border:1px solid #b9c1d6;background:#fff;color:var(--ink);width:100%;border-radius:4px}.form input:focus,.form select:focus,.form textarea:focus{outline:3px solid rgba(226,64,63,.45)}.form .hp{position:absolute;left:-9999px}.form .btn{justify-self:start}
.notice{padding:14px 18px;background:#e3f4ea;color:#14532d;margin-bottom:22px;font-weight:600}.notice.bad{background:#fde8e8;color:#7f1d1d}
footer.site{background:#070c18;border-top:4px solid var(--red)}.foot{display:grid;grid-template-columns:1.3fr .8fr 1.2fr;gap:44px;padding:64px 0 44px}.f-brand img{width:210px;height:auto;margin-bottom:16px}.f-brand p{color:#aeb7cf;max-width:34ch}.foot h3{font-size:1.1rem;margin-bottom:14px}.foot ul{display:grid;gap:8px}.foot a{text-decoration:none;color:#c9d1e6}.foot a:hover{color:#fff}.news p{color:#aeb7cf;font-size:.95rem;margin-bottom:12px}.news input{width:100%;padding:12px 14px;border:1px solid #31405f;background:#0b1224;color:#fff;margin-bottom:10px;border-radius:4px;font:400 1rem var(--b)}
.foot-bar{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:22px 0 32px;border-top:1px solid var(--line);font-size:.85rem;color:var(--mute)}.foot-bar a{text-decoration:underline}
.prose{color:#2a3350}:focus-visible{outline:3px solid var(--red);outline-offset:3px}
@media(max-width:1000px){.two{grid-template-columns:1fr}.pgrid{grid-template-columns:1fr 1fr}.svc,.vals.three{grid-template-columns:1fr}.prodl article{grid-template-columns:1fr}.foot{grid-template-columns:1fr 1fr}.f-brand{grid-column:1/-1}.ngrid{grid-template-columns:1fr 1fr}}
@media(max-width:860px){body{font-size:16px}.wrap{width:calc(100% - 32px)}.bar{height:70px}.logo img{height:46px}.menu-btn{display:block}header.site{backdrop-filter:none;background:var(--navy)}
 nav.main{position:fixed;inset:70px 0 0 0;background:var(--navy);padding:24px 16px;transform:translateX(100%);transition:transform .3s;visibility:hidden;overflow:auto;flex-direction:column;align-items:stretch;gap:20px}nav.main.open{transform:none;visibility:visible}nav.main ul{flex-direction:column;gap:0}nav.main li a{display:block;font-size:1.7rem;padding:14px 0;border-bottom:1px solid var(--line)}nav.main .btn{align-self:flex-start}
 .hero h1{font-size:4.2rem}.vals,.vals.three,.ngrid,.ngrid.all,.form .two2,.hw{grid-template-columns:1fr}.pgrid{grid-template-columns:1fr}.gal{grid-template-columns:1fr 1fr}.phead .pbg{width:100%;opacity:.3}.foot{grid-template-columns:1fr}.vtab dd{font-size:2.1rem}.part li{font-size:1.2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nc{transition:none}}
