:root { --navy:#0d1c2a; --navy-2:#102538; --gold:#d6aa3d; --white:#f8f8f4; --muted:#d1d7dc; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--white); background:var(--navy); font-family:"Arial Narrow",Arial,sans-serif; line-height:1.45; }
a { color:inherit; }
.skip-link { position:fixed; left:1rem; top:-5rem; z-index:100; padding:.7rem 1rem; color:var(--navy); background:var(--gold); }
.skip-link:focus { top:1rem; }
.site-header { position:sticky; top:0; z-index:20; display:flex; align-items:center; justify-content:space-between; min-height:96px; padding:.45rem clamp(1rem,5vw,4rem); background:rgba(13,28,42,.98); border-bottom:2px solid var(--gold); }
.brand { display:block; width:min(470px,48vw); }
.brand img { display:block; width:100%; height:82px; object-fit:contain; object-position:left center; }
nav { display:flex; gap:1.35rem; color:var(--white); font-weight:800; text-transform:uppercase; }
nav a { padding:.55rem 0; border-bottom:2px solid transparent; text-decoration:none; }
nav a:hover,nav a:focus-visible { color:var(--gold); border-color:var(--gold); }
.hero,.detail-hero { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(230px,.6fr); align-items:center; gap:clamp(2rem,6vw,6rem); min-height:620px; padding:clamp(3.5rem,7vw,6.5rem) clamp(1.25rem,6vw,6rem); background:linear-gradient(120deg,var(--navy),var(--navy-2)); border-bottom:10px solid var(--gold); }
.hero-art { margin:0; }
.hero-art img,.detail-hero>img { display:block; width:100%; max-width:390px; margin:auto; }
.eyebrow { margin:0 0 .75rem; color:var(--gold); font-size:clamp(.95rem,1.5vw,1.25rem); font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
h1,h2,h3,.footer-kicker { font-family:Georgia,"Times New Roman",serif; }
h1 { margin:0; font-size:clamp(2.7rem,6vw,6rem); font-weight:700; line-height:1; text-transform:uppercase; }
h1 span,h1 em { display:block; }
h1 em { color:var(--gold); font-style:normal; }
h2 { margin:0; color:var(--white); font-size:clamp(2.2rem,4.5vw,4.25rem); line-height:1.05; text-transform:uppercase; }
.hero-lead { max-width:64ch; margin:1.5rem 0 0; color:var(--muted); font-size:clamp(1.05rem,1.8vw,1.25rem); }
.hero-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1.8rem; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:.75rem 1.1rem; border:2px solid var(--gold); font-weight:900; text-decoration:none; text-transform:uppercase; }
.button-primary { color:var(--navy); background:var(--gold); }
.button-secondary { color:var(--white); }
.button:hover,.button:focus-visible { outline:2px solid var(--white); outline-offset:3px; }
.service-area { max-width:75ch; margin:1.25rem 0 0; color:var(--muted); }
.services,.detail-section { padding:clamp(3.5rem,7vw,6rem) clamp(1.25rem,5vw,5rem); }
.section-heading,.detail-heading { max-width:1050px; margin:0 auto 2.5rem; text-align:center; }
.service-grid { display:grid; grid-template-columns:repeat(3,1fr); max-width:1420px; margin:auto; border:2px solid var(--gold); }
.service-grid article { display:flex; flex-direction:column; padding:2rem clamp(1rem,2.5vw,2.5rem); background:var(--navy-2); text-align:center; }
.service-grid article+article { border-left:1px solid var(--gold); }
.service-number { display:grid; width:72px; height:72px; margin:0 auto 1rem; place-items:center; color:var(--gold); border:2px solid var(--gold); border-radius:50%; font:2rem Georgia,serif; }
.service-grid h3 { min-height:2.25em; margin:0; font-size:clamp(1.5rem,2.2vw,2.15rem); line-height:1.08; text-transform:uppercase; }
.service-grid h4 { margin:1rem 0; padding:.7rem 0; color:var(--gold); border-top:1px solid var(--gold); border-bottom:1px solid var(--gold); font:700 clamp(1.05rem,1.6vw,1.35rem) Georgia,serif; text-transform:uppercase; }
.service-grid ul,.detail-grid ul { margin:0; padding-left:1.2rem; text-align:left; }
.service-grid li,.detail-grid li { margin:.65rem 0; }
li::marker { color:var(--gold); }
.service-link { display:block; margin-top:auto; padding:.8rem 1rem; color:var(--navy); background:var(--gold); border:2px solid var(--gold); font-weight:900; text-decoration:none; text-transform:uppercase; }
.service-link:hover,.service-link:focus-visible { color:var(--white); background:transparent; outline:2px solid var(--white); outline-offset:3px; }
.detail-heading>p:last-child { max-width:78ch; margin:1rem auto 0; color:var(--muted); font-size:1.1rem; }
.detail-grid { display:grid; grid-template-columns:repeat(4,1fr); max-width:1300px; margin:auto; border:2px solid var(--gold); }
.detail-grid.three-up { grid-template-columns:repeat(3,1fr); }
.detail-grid article { padding:1.6rem; background:var(--navy-2); }
.detail-grid article+article { border-left:1px solid var(--gold); }
.detail-grid span { color:var(--gold); font:700 1.6rem Georgia,serif; }
.detail-grid h3 { min-height:2.4em; margin:.75rem 0 1rem; font-size:clamp(1.25rem,1.8vw,1.7rem); line-height:1.1; text-transform:uppercase; }
.detail-note { max-width:1240px; margin:2rem auto 0; padding:1.2rem 1.5rem; color:var(--white); background:var(--navy-2); border:2px solid var(--gold); }
.detail-note strong { color:var(--gold); font-family:Georgia,serif; text-transform:uppercase; }
footer { padding:2.5rem 1.25rem; color:var(--white); background:var(--navy-2); border-top:8px solid var(--gold); text-align:center; }
.footer-kicker { margin:0; color:var(--gold); font-size:clamp(2rem,4vw,3.8rem); text-transform:uppercase; }
.footer-links { display:flex; justify-content:center; gap:1.25rem; margin:.8rem 0; }
.footer-links a { font-weight:800; text-decoration-color:var(--gold); }
.service-footprint { max-width:920px; margin:.8rem auto 0; color:var(--muted); }
.fine-print { max-width:850px; margin:1rem auto 0; color:var(--muted); font-family:Georgia,serif; font-style:italic; }
.contact-pending { max-width:920px; margin:1rem auto; padding:1rem; color:var(--gold); border:1px solid var(--gold); font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.identity-panel { max-width:1100px; margin:0 auto; padding:clamp(3rem,7vw,6rem) clamp(1.25rem,5vw,5rem); text-align:center; border-top:1px solid var(--gold); }
.identity-panel h2 { color:var(--white); }
.identity-panel p { margin:.45rem 0; font-size:1.15rem; }
.identity-panel strong { color:var(--gold); }
.future-note { max-width:760px; margin:1.5rem auto 0!important; padding:1rem; color:var(--muted); border:1px solid var(--gold); }
.about-grid { display:grid; grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr); gap:clamp(2rem,6vw,5rem); align-items:center; max-width:1200px; margin:auto; }
.about-photo { margin:0; padding:.65rem; background:var(--navy-2); border:2px solid var(--gold); }
.about-photo img { display:block; width:100%; aspect-ratio:1/1; object-fit:cover; }
.about-photo figcaption { padding:.7rem .25rem .1rem; color:var(--muted); text-align:center; }
.about-copy h2 { margin-bottom:1.25rem; }
.about-copy p { color:var(--muted); font-size:1.1rem; }
.about-copy strong { color:var(--gold); }
.fact-row { display:grid; grid-template-columns:repeat(3,1fr); max-width:1200px; margin:3rem auto 0; border:2px solid var(--gold); }
.fact-row p { margin:0; padding:1.25rem; text-align:center; background:var(--navy-2); }
.fact-row p+p { border-left:1px solid var(--gold); }
.fact-row strong { display:block; color:var(--gold); font:700 1.35rem Georgia,serif; text-transform:uppercase; }
.contact-form-section { padding:clamp(3.5rem,7vw,6rem) clamp(1.25rem,5vw,5rem); background:var(--navy-2); }
.contact-form-grid { display:grid; grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr); gap:clamp(2rem,6vw,5rem); max-width:1200px; margin:auto; align-items:start; }
.contact-form-intro { position:sticky; top:130px; }
.contact-form-intro>p:last-child { color:var(--muted); font-size:1.1rem; }
.inquiry-form { display:grid; gap:1.15rem; padding:clamp(1.25rem,4vw,2.5rem); background:var(--navy); border:2px solid var(--gold); }
.form-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.inquiry-form label { display:grid; gap:.45rem; color:var(--white); font-weight:800; }
.inquiry-form label span { color:var(--gold); }
.inquiry-form input,.inquiry-form select,.inquiry-form textarea { width:100%; min-height:52px; padding:.8rem .9rem; color:var(--white); background:var(--navy-2); border:1px solid var(--gold); border-radius:0; font:inherit; font-size:1rem; }
.inquiry-form textarea { min-height:170px; resize:vertical; }
.inquiry-form input::placeholder,.inquiry-form textarea::placeholder { color:#aeb7bf; opacity:1; }
.inquiry-form input:focus,.inquiry-form select:focus,.inquiry-form textarea:focus { outline:2px solid var(--white); outline-offset:2px; }
.inquiry-form option { color:var(--white); background:var(--navy); }
.honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.turnstile-slot { min-height:65px; }
.privacy-note { margin:0; color:var(--muted); font-size:.95rem; }
.submit-button { width:100%; min-height:54px; cursor:pointer; }
.submit-button:disabled { cursor:wait; opacity:.7; }
.form-status { min-height:1.5em; margin:0; padding:.1rem 0; font-weight:800; }
.form-status.is-success { color:#c8f2c8; }
.form-status.is-error { color:#ffd0c7; }
@media(max-width:950px){
  nav{gap:.7rem;font-size:.86rem}.hero,.detail-hero{grid-template-columns:1fr minmax(190px,.4fr);min-height:0}.service-grid{grid-template-columns:1fr}.service-grid article+article{border-left:0;border-top:1px solid var(--gold)}.service-grid h3{min-height:0}.detail-grid,.detail-grid.three-up{grid-template-columns:repeat(2,1fr)}.detail-grid article:nth-child(3){border-left:0}.detail-grid article:nth-child(n+3){border-top:1px solid var(--gold)}.about-grid,.contact-form-grid{grid-template-columns:1fr}.contact-form-intro{position:static}.fact-row{grid-template-columns:1fr}.fact-row p+p{border-left:0;border-top:1px solid var(--gold)}
}
@media(max-width:650px){
  .site-header{position:static;flex-direction:column;justify-content:center}.brand{width:min(100%,470px)}nav{display:flex;flex-wrap:wrap;justify-content:center;width:100%;padding:.25rem 0 .65rem}.hero,.detail-hero{grid-template-columns:1fr}.hero-art img,.detail-hero>img{max-width:240px}.hero-actions{display:grid}.detail-grid,.detail-grid.three-up,.form-row{grid-template-columns:1fr}.inquiry-form{padding:1.15rem}.detail-grid article+article,.detail-grid article:nth-child(3){border-left:0;border-top:1px solid var(--gold)}.detail-grid h3{min-height:0}.footer-links{display:none}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* === 2026-09-29 mock rebuild extensions === */
.contact-line { max-width:920px; margin:1rem auto; padding:1rem; color:var(--gold); border:1px solid var(--gold); font-weight:900; letter-spacing:.04em; }
.contact-line a { color:var(--gold); text-decoration:none; border-bottom:1px solid transparent; }
.contact-line a:hover,.contact-line a:focus-visible { border-color:var(--gold); }
.lane-product-line { margin:.35rem 0 0; color:var(--gold); font-weight:800; letter-spacing:.04em; text-transform:uppercase; font-size:.95rem; }
.service-grid ul { margin:.25rem 0 1.25rem; padding-left:1.15rem; text-align:left; color:var(--muted); }
.service-grid li { margin:.55rem 0; color:var(--muted); }
.product-grid { display:grid; grid-template-columns:repeat(2,1fr); max-width:1300px; margin:auto; border:2px solid var(--gold); }
.product-grid article { padding:1.75rem clamp(1rem,2.5vw,2.25rem); background:var(--navy-2); }
.product-grid article+article { border-left:1px solid var(--gold); }
.product-grid h3 { margin:0 0 .85rem; font-size:clamp(1.45rem,2vw,2rem); line-height:1.1; text-transform:uppercase; color:var(--white); }
.product-grid p { margin:0 0 1rem; color:var(--muted); }
.product-grid ul { margin:0; padding-left:1.2rem; color:var(--muted); }
.process-steps { display:grid; grid-template-columns:repeat(5,1fr); max-width:1300px; margin:auto; border:2px solid var(--gold); }
.process-steps article { padding:1.35rem 1rem; background:var(--navy-2); text-align:center; }
.process-steps article+article { border-left:1px solid var(--gold); }
.process-steps .step-num { display:grid; width:48px; height:48px; margin:0 auto .75rem; place-items:center; color:var(--navy); background:var(--gold); border-radius:50%; font:700 1.15rem Georgia,serif; }
.process-steps h3 { min-height:2.4em; margin:0 0 .65rem; font-size:clamp(1rem,1.4vw,1.25rem); line-height:1.15; text-transform:uppercase; }
.process-steps p { margin:0; color:var(--muted); font-size:.98rem; }
.cta-band { display:grid; grid-template-columns:minmax(0,1.4fr) auto; gap:1.5rem; align-items:center; max-width:1300px; margin:2.5rem auto 0; padding:clamp(1.5rem,4vw,2.5rem); background:var(--navy); border:2px solid var(--gold); }
.cta-band h2 { font-size:clamp(1.5rem,3vw,2.4rem); }
.cta-band p { margin:.75rem 0 0; color:var(--muted); max-width:70ch; }
.benefits-ribbon { display:grid; grid-template-columns:repeat(4,1fr); max-width:1300px; margin:2rem auto 0; border:2px solid var(--gold); }
.benefits-ribbon p { margin:0; padding:1.1rem; text-align:center; background:var(--navy); color:var(--gold); font-weight:900; letter-spacing:.04em; text-transform:uppercase; font-size:.95rem; }
.benefits-ribbon p+p { border-left:1px solid var(--gold); }
.callout-panel { max-width:1240px; margin:2rem auto 0; padding:1.5rem 1.75rem; text-align:center; background:var(--navy-2); border:2px solid var(--gold); }
.callout-panel h2 { font-size:clamp(1.5rem,3vw,2.35rem); color:var(--gold); }
.callout-panel p { max-width:70ch; margin:1rem auto 0; color:var(--muted); font-size:1.08rem; }
.limits-block { max-width:1100px; margin:2.5rem auto 0; padding:1.25rem 1.5rem; border:1px solid var(--gold); text-align:center; }
.limits-block h2 { font-size:clamp(1.25rem,2.2vw,1.75rem); color:var(--gold); }
.limits-block p,.limits-block ul { color:var(--muted); }
.limits-block ul { display:inline-block; text-align:left; margin:1rem auto 0; }
.page-section-lead { max-width:78ch; margin:1rem auto 0; color:var(--muted); font-size:1.1rem; text-align:center; }
.detail-section.alt { background:var(--navy-2); }
.detail-section.alt .detail-grid article,.detail-section.alt .product-grid article,.detail-section.alt .process-steps article { background:var(--navy); }
@media(max-width:950px){
  .product-grid{grid-template-columns:1fr}
  .product-grid article+article{border-left:0;border-top:1px solid var(--gold)}
  .process-steps{grid-template-columns:1fr 1fr}
  .process-steps article:nth-child(odd){border-left:0}
  .process-steps article:nth-child(n+3){border-top:1px solid var(--gold)}
  .process-steps article+article{border-left:1px solid var(--gold)}
  .process-steps article:nth-child(odd)+article{border-left:1px solid var(--gold)}
  .cta-band{grid-template-columns:1fr}
  .benefits-ribbon{grid-template-columns:1fr 1fr}
  .benefits-ribbon p:nth-child(n+3){border-top:1px solid var(--gold)}
  .benefits-ribbon p:nth-child(odd){border-left:0}
  .benefits-ribbon p+p{border-left:1px solid var(--gold)}
}
@media(max-width:650px){
  .process-steps,.benefits-ribbon{grid-template-columns:1fr}
  .process-steps article+article,.benefits-ribbon p+p,.process-steps article:nth-child(n+3),.benefits-ribbon p:nth-child(n+3){border-left:0;border-top:1px solid var(--gold)}
}

/* === 2026-10-02 three-lanes landing, caution tape, phone menu === */
.lanes { background:#f8f6ef; color:var(--navy); }
.lanes .eyebrow { color:#8a6a1c; }
.lanes .section-heading h2 { padding:.9rem 0; color:var(--navy); font-size:clamp(1.6rem,3.2vw,2.8rem); border-top:1px solid var(--gold); border-bottom:1px solid var(--gold); }
.lane-grid { display:grid; grid-template-columns:repeat(3,1fr); max-width:1420px; margin:auto; }
.lane-grid article { display:flex; flex-direction:column; padding:1.25rem clamp(1rem,2.5vw,2.25rem); text-align:center; }
.lane-grid article+article { border-left:1px dashed #c9c3b3; }
.lane-num { display:grid; width:80px; height:80px; margin:0 auto 1rem; place-items:center; color:var(--gold); background:var(--navy); border:3px solid var(--gold); border-radius:50%; font:700 2rem Georgia,serif; }
.lane-grid h3 { min-height:2.1em; margin:0; color:var(--navy); font-size:clamp(1.6rem,2.4vw,2.3rem); line-height:1.05; text-transform:uppercase; }
.lane-tag { margin:.9rem 0 .5rem; padding-top:.7rem; color:#8a6a1c; border-top:1px solid var(--gold); font:700 clamp(1.05rem,1.6vw,1.35rem) Georgia,serif; text-transform:uppercase; }
.lanes .lane-product-line { color:#8a6a1c; }
.lane-list { margin:.5rem 0 1.5rem; padding:0; list-style:none; text-align:left; }
.lane-list li { display:flex; align-items:center; gap:.9rem; padding:.7rem 0; color:#1d2b38; border-bottom:1px solid var(--gold); }
.lane-icon { display:grid; flex:0 0 46px; width:46px; height:46px; place-items:center; background:var(--navy); border-radius:50%; }
.lane-icon svg { width:24px; height:24px; fill:none; stroke:var(--gold); stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.lanes .service-link:hover,.lanes .service-link:focus-visible { color:var(--navy); outline-color:var(--navy); }
.caution-tape { height:22px; background:repeating-linear-gradient(-45deg,var(--gold) 0 18px,var(--navy) 18px 36px); border-top:2px solid var(--gold); border-bottom:2px solid var(--gold); }
.coming-strip { max-width:900px; margin:1.75rem auto 0; background:var(--navy-2); border:2px solid var(--gold); }
.coming-strip p { margin:0; padding:1rem 1.25rem; color:var(--muted); text-align:center; }
.coming-strip strong { color:var(--gold); letter-spacing:.08em; text-transform:uppercase; }
.coming-strip a { color:var(--gold); font-weight:800; }
.under-construction { max-width:900px; margin:0 auto; background:var(--navy-2); border:2px solid var(--gold); text-align:center; }
.under-construction .uc-body { padding:clamp(1.5rem,4vw,2.5rem); }
.uc-sign { display:inline-block; padding:.5rem 1.1rem; color:var(--navy); background:var(--gold); border:2px solid var(--navy); outline:2px solid var(--gold); font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.under-construction h2 { margin-top:1.25rem; font-size:clamp(1.6rem,3.5vw,2.6rem); }
.under-construction p { max-width:62ch; margin:1rem auto 0; color:var(--muted); font-size:1.08rem; }
.under-construction .hero-actions { justify-content:center; }
.menu-toggle { display:none; min-height:44px; padding:.5rem 1rem; color:var(--gold); background:transparent; border:2px solid var(--gold); font:900 1rem "Arial Narrow",Arial,sans-serif; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; }
.menu-toggle::before { content:"\2630"; margin-right:.5rem; }
nav { gap:1.1rem; }
.brand { width:min(400px,34vw); }
@media(max-width:1100px){
  .site-header { position:sticky; flex-direction:row; flex-wrap:wrap; justify-content:space-between; }
  .brand { width:min(320px,55vw); }
  .brand img { height:64px; }
  .menu-toggle { display:inline-flex; align-items:center; }
  nav { display:none; }
  .site-header.nav-open nav { display:flex; flex-direction:column; width:100%; gap:0; padding:.5rem 0; font-size:1rem; }
  .site-header.nav-open nav a { padding:.85rem 0; text-align:center; border-top:1px solid rgba(214,170,61,.35); }
}
@media(max-width:950px){
  .lane-grid { grid-template-columns:1fr; }
  .lane-grid article+article { border-left:0; border-top:1px dashed #c9c3b3; padding-top:2rem; }
  .lane-grid h3 { min-height:0; }
}
