/*
Theme Name: NorthPilot
Theme URI: https://northpilot-emotional-library.punpunlunlun.chatgpt.site/
Author: NorthPilot
Description: A responsive product-launch theme for the NorthPilot ecommerce agency.
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: northpilot
*/

:root{--paper:#f1eee6;--ink:#11110f;--red:#c72820;--line:#b8b4aa;--muted:#6d6a63;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.skip-link{position:fixed;top:12px;left:12px;z-index:100;background:#fff;padding:10px 14px;transform:translateY(-160%)}.skip-link:focus{transform:none}
.site-header{min-height:84px;padding:0 54px;border-bottom:1px solid var(--ink);display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{font-size:20px;font-weight:900;letter-spacing:-.06em}.brand span{color:var(--red)}.site-nav{display:flex;align-items:center;gap:28px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.site-nav a:hover{color:var(--red)}.nav-cta{color:var(--paper)!important;background:var(--ink);padding:13px 17px;border-radius:8px}
.utility-rail{position:fixed;z-index:20;top:26%;width:28px;height:260px;background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:space-between;padding:10px 7px;writing-mode:vertical-rl;font-size:8px;letter-spacing:.13em;pointer-events:none}.rail-left{left:0}.rail-right{right:0;transform:rotate(180deg)}
.hero{min-height:770px;padding:28px 54px 20px;display:grid;grid-template-rows:auto 1fr auto;border-bottom:1px solid var(--ink)}.hero-kicker,.eyebrow{font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.status-dot{display:inline-block;width:7px;height:7px;background:#168754;border-radius:50%;margin-right:7px}.hero-grid{display:grid;grid-template-columns:8fr 4fr;align-items:end;gap:34px}.hero-copy{padding-bottom:26px}.hero h1{margin:0;font-size:clamp(62px,8vw,126px);line-height:.84;letter-spacing:-.075em;font-weight:800;max-width:1040px}.hero h1 span{display:block}.hero h1 span:last-child{color:var(--red)}.hero-deck{max-width:610px;font-size:clamp(18px,1.8vw,25px);line-height:1.25;letter-spacing:-.025em;margin:34px 0 28px}.primary-button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-width:290px;background:var(--ink);color:var(--paper);padding:17px 20px;border-radius:8px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.primary-button:hover{background:var(--red)}.media-crop{background-repeat:no-repeat;background-size:cover}.hero-portrait{aspect-ratio:4/5;border-radius:10px;background:#111 url("assets/images/identity-diptych.png") left center/200% 100% no-repeat}.hero-meta{padding-top:14px;border-top:1px solid var(--ink);display:flex;justify-content:space-between;font-size:9px;letter-spacing:.12em}
.section-shell{padding:120px max(54px,calc((100vw - 1350px)/2))}.intro{min-height:620px;display:grid;grid-template-columns:2fr 7fr 3fr;gap:40px;align-items:start;border-bottom:1px solid var(--line)}.intro h2,.section-heading h2,.services>h2,.proof h2,.contact h2{margin:0;font-size:clamp(42px,5.7vw,84px);line-height:.95;letter-spacing:-.06em;font-weight:700}.intro>p:last-child{font-size:17px;line-height:1.5;margin:4px 0 0}.section-heading{display:grid;grid-template-columns:8fr 4fr;gap:35px;align-items:end;margin-bottom:70px}.section-heading h2{max-width:850px;margin-top:16px}.section-heading>p{max-width:350px;line-height:1.5;margin:0}
.journey{background:#dbd7cd}.journey-grid{display:grid;grid-template-columns:7fr 5fr;gap:65px;align-items:start}.accordion{border-top:1px solid var(--ink)}.disclosure{border-bottom:1px solid var(--ink)}.disclosure h3{margin:0}.disclosure button{width:100%;padding:24px 0;background:none;border:0;color:inherit;cursor:pointer;display:grid;grid-template-columns:55px 1fr 30px;text-align:left;align-items:start}.row-mark{font-size:10px;padding-top:8px}.row-main{display:grid;gap:7px}.row-main b{font-size:31px;letter-spacing:-.045em}.row-main small{color:var(--muted);font-size:13px}.row-icon{font-size:27px;text-align:right}.disclosure-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows 520ms var(--ease)}.disclosure-panel>div{overflow:hidden}.disclosure-panel p{margin:0 44px 24px 55px;max-width:580px;line-height:1.55}.disclosure.is-open .disclosure-panel{grid-template-rows:1fr}.disclosure.is-open .row-main b{color:var(--red)}
.itinerary-card{background:var(--ink);color:var(--paper);border-radius:10px;padding:22px;min-height:500px;position:sticky;top:24px}.card-topline{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.12em}.itinerary-label{margin:76px 0 12px;font-size:9px;color:#aaa69f;letter-spacing:.12em}.itinerary-card h3{font-size:38px;line-height:1;letter-spacing:-.05em;margin:0 0 38px}.itinerary-card ol{list-style:none;padding:0;margin:0;border-top:1px solid #56534e}.itinerary-card li{display:grid;grid-template-columns:42px 1fr;padding:16px 0;border-bottom:1px solid #56534e}.itinerary-card li span{font-size:9px;color:#aaa69f}.itinerary-card li b{font-size:15px}.itinerary-card>a{display:flex;justify-content:space-between;margin-top:28px;color:#ff4c3f;font-size:12px;text-transform:uppercase;letter-spacing:.05em;font-weight:800}
.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:54px 18px}.project-image{aspect-ratio:1;border-radius:10px;background:#ccc7bd url("assets/images/project-mockups-grid.png") 0 0/200% 200% no-repeat}.project-2{background-position:100% 0}.project-3{background-position:0 100%}.project-4{background-position:100% 100%}.project-card>div:last-child{display:grid;grid-template-columns:1fr 4fr;margin-top:14px;padding-top:12px;border-top:1px solid var(--ink)}.project-card span{font-size:9px;letter-spacing:.1em}.project-card h3{margin:0;font-size:27px;letter-spacing:-.04em}
.services{background:var(--ink);color:var(--paper)}.services>h2{max-width:970px;margin:18px 0 80px}.service-list{border-top:1px solid #5c5953}.service-row{display:grid;grid-template-columns:1fr 5fr 5fr 1fr;gap:18px;align-items:center;padding:27px 0;border-bottom:1px solid #5c5953}.service-row>span:first-child{font-size:9px;color:#9b9892}.service-row h3{font-size:42px;letter-spacing:-.05em;margin:0}.service-row p{margin:0;color:#bbb7af}.service-row>span:last-child{text-align:right;color:var(--red)}
.proof{display:grid;grid-template-columns:5fr 7fr;gap:70px;align-items:stretch}.proof-image{aspect-ratio:4/5;background:#ccc url("assets/images/material-customer-grid.png") 0 0/400% 200% no-repeat;filter:grayscale(1);border-radius:10px}.proof-copy{padding-top:10px;display:flex;flex-direction:column}.proof h2{margin:18px 0 auto}.proof-points{margin-top:75px;border-top:1px solid var(--ink)}.proof-points p{display:grid;grid-template-columns:50px 1fr;border-bottom:1px solid var(--line);padding:17px 0;margin:0}.proof-points b{font-size:9px}.proof-points span{display:grid;grid-template-columns:1fr 2fr;gap:15px}
.contact{background:var(--red);color:var(--paper);min-height:760px;display:grid;grid-template-columns:1fr 1fr;gap:70px;position:relative;overflow:hidden}.contact-copy,.contact-form{position:relative;z-index:2}.contact h2{margin-top:20px}.contact-copy>p:last-child{max-width:510px;font-size:18px;line-height:1.45}.contact-form{background:var(--paper);color:var(--ink);border-radius:10px;padding:28px;display:grid;gap:18px;align-self:start}.contact-form label{display:grid;gap:7px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid var(--ink);background:transparent;color:var(--ink);padding:10px 0;border-radius:0;resize:vertical}.contact-form button{border:0;background:var(--ink);color:var(--paper);border-radius:8px;padding:16px;display:flex;justify-content:space-between;cursor:pointer;text-transform:uppercase;font-size:11px;font-weight:800}.form-message{padding:12px;background:#fff;color:#111;border-radius:6px}.footer-wordmark{position:absolute;bottom:-5vw;left:-1vw;font-size:16vw;line-height:.8;font-weight:900;letter-spacing:-.09em;opacity:.35;white-space:nowrap}
.site-footer{padding:28px 54px;background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center}.site-footer p{font-size:9px;letter-spacing:.12em;text-align:center}.site-footer p:last-child{text-align:right}
@media(max-width:900px){.utility-rail{display:none}.site-header{padding:0 22px}.site-nav a:not(.nav-cta){display:none}.hero{padding:24px 22px;min-height:auto}.hero-grid{grid-template-columns:1fr;padding-top:70px}.hero-portrait{width:min(72vw,430px);margin:26px 0 0 auto}.section-shell{padding:90px 22px}.intro,.section-heading,.journey-grid,.proof,.contact{grid-template-columns:1fr}.intro{min-height:auto}.itinerary-card{position:static}.service-row{grid-template-columns:35px 1fr 25px}.service-row p{grid-column:2}}
@media(max-width:600px){.site-header{min-height:70px}.nav-cta{padding:11px;font-size:9px}.hero{min-height:700px}.hero h1{font-size:clamp(53px,16vw,78px)}.hero-meta span:last-child{display:none}.hero-portrait{width:72%}.intro h2,.section-heading h2,.services>h2,.proof h2,.contact h2{font-size:45px}.project-grid{grid-template-columns:1fr}.service-row h3{font-size:33px}.proof-points span{grid-template-columns:1fr}.site-footer{padding:26px 22px;grid-template-columns:1fr 1fr}.site-footer p:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.disclosure-panel{transition:none}}
