/* Concept E: the existing site's layout, with the approved revision's voice. */
:root{--c-black:#25323a;--c-yellow:#f8cf28;--c-white:#fffff0;--c-muted:#dee1d9;--c-line:#54616a;--c-surface:#293840;--c-elevated:#30414b;--font-mono:var(--font-sans);--bw-heavy:1px;--bw-mid:1px;--hero-image:url('assets/bridge-hero_v1.webp')}
.site-header{background:rgba(28,39,46,.96);box-shadow:0 7px 20px #0006}
.nav__link,.brand__word{text-shadow:0 3px 3px #000b,0 6px 12px #0008}
.btn{box-shadow:0 5px 0 #10191f66,0 12px 24px #0007;transition:transform .2s,box-shadow .2s,background .2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 6px 0 #10191f55,0 16px 28px #0008}
.btn--solid{color:#202b32;background:var(--c-yellow)}
.btn--ghost{background:rgba(22,32,39,.66);color:var(--c-white);border-color:var(--c-yellow);text-shadow:0 2px 4px #000a}
.hero{min-height:710px;max-height:none;padding-top:64px;padding-bottom:60px;justify-content:center}
.hero__image{width:100%;height:100%;object-fit:cover;object-position:center 46%}
.hero__scrim{background:linear-gradient(90deg,rgba(13,22,29,.92) 0%,rgba(13,22,29,.77) 33%,rgba(13,22,29,.32) 59%,transparent 86%)}
.hero-composition{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:64px;align-items:center}
.hero-copy{min-width:0}.hero-copy>.eyebrow{max-width:57ch;line-height:1.7;margin-bottom:32px}
.hero__title{font-size:clamp(50px,6.25vw,90px);line-height:.98;max-width:none;letter-spacing:-.055em;margin-bottom:34px}
.hero__title,.hero .eyebrow,.hero__lede,.scope-sidebar{text-shadow:0 3px 4px #000b,0 10px 24px #0009}
.hero__foot{grid-template-columns:1fr;gap:24px;padding-top:24px;border-top:1px solid var(--c-yellow)}
.hero__lede{font-size:clamp(16px,1.35vw,19px);font-weight:400;line-height:1.65;max-width:64ch;color:var(--c-white)}
.hero__action{justify-content:flex-start;flex-wrap:wrap;gap:16px}
.scope-sidebar{border-left:1px solid var(--c-yellow);padding-left:24px;display:flex;flex-direction:column;gap:20px}
.scope-sidebar>div:first-child{font-size:11px;letter-spacing:.12em;line-height:1.6;color:var(--c-white)}
.scope-panel{padding:25px 24px;background:rgba(28,40,49,.72);border:1px solid #fffff038;box-shadow:0 14px 35px #0005;backdrop-filter:blur(3px)}
.scope-panel h2{font-size:24px;font-weight:700;line-height:1.2;letter-spacing:-.03em;margin-bottom:16px}
.scope-panel p{font-size:14px;line-height:1.6;margin-bottom:20px}
.scope-links{display:flex;flex-direction:column}.scope-links a{padding:12px 0;border-top:1px solid #fffff02e;display:flex;justify-content:space-between;gap:14px;font-size:12px;line-height:1.4;color:var(--c-white)}
.scope-links a span{color:var(--c-yellow)}.scope-links a:hover{color:var(--c-yellow)}
.scope-sidebar>div:last-child{font-size:11px;letter-spacing:.07em;line-height:1.9;padding:16px 20px;background:rgba(28,40,49,.72);border:1px solid #fffff038;box-shadow:0 10px 24px #0005}
.service-strip{display:flex;justify-content:space-around;gap:24px;flex-wrap:wrap;padding:24px 40px;border-block:1px solid var(--c-yellow);background:#1d2931;color:var(--c-yellow);font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.035em}
.h2{line-height:1;text-shadow:0 4px 12px #0005}.rule-left{border-left-width:1px;border-left-color:var(--c-yellow)}
.def-row{border-color:var(--c-line)}.def-row .inline-link{margin-top:12px;font-size:12px}.packages{background:#202d35;border-block:1px solid #ffffff14}
.offer-card{background:#293840;box-shadow:0 10px 20px #0003}.offer-card .package-price{color:var(--c-white);font-size:16px;font-weight:700;line-height:1.7}.offer-card .inline-link{font-size:12px}
.philosophy__short p{color:var(--c-muted);font-size:18px;line-height:1.65;margin-top:24px}.values{grid-template-columns:1fr;gap:28px}.value{border-left:1px solid var(--c-yellow);padding-left:24px}.value__title{color:var(--c-yellow)}
.cta{background:#1d2931;border-top:1px solid var(--c-yellow)}.cta__title,.cta__lede{color:var(--c-white)}.cta__inner{gap:30px}.closing-actions{display:flex;gap:16px;flex-wrap:wrap;justify-content:center}
.footer{background:var(--c-black)}.draft-note{text-align:center;padding:16px 24px;font-size:12px;background:#1d2931;color:var(--c-muted)}.draft-note a{color:var(--c-yellow);text-decoration:underline}
:focus-visible{outline:2px solid var(--c-yellow);outline-offset:5px}
@media(min-width:1500px){.hero-composition{gap:100px;grid-template-columns:minmax(0,1fr) 365px}}
@media(max-width:1100px){.hero-composition{gap:30px;grid-template-columns:minmax(0,1fr) 300px}.hero__title{font-size:clamp(42px,6vw,65px)}.scope-sidebar{padding-left:18px}.hero{padding-top:44px;padding-bottom:44px}}
@media(max-width:800px){.hero-composition{grid-template-columns:1fr;gap:36px}.hero{min-height:0}.hero__title{font-size:clamp(40px,8.5vw,68px)}.hero__scrim{background:linear-gradient(90deg,#0d161de8,#0d161d75 70%,#0d161d26)}.hero__image{object-position:60% center}.scope-sidebar{max-width:none}.scope-panel{padding:24px}.scope-links{display:grid;grid-template-columns:1fr 1fr;column-gap:22px}.scope-sidebar>div:last-child br{display:none}.scope-sidebar>div:last-child{line-height:1.8}.service-strip{justify-content:flex-start;font-size:11px;padding:24px}.hero-copy>.eyebrow{font-size:10px}.hero__lede{font-size:16px}.offer-grid{grid-template-columns:1fr}.philosophy__short p{font-size:16px}}
@media(max-width:440px){.hero__action,.closing-actions{display:grid;width:100%}.btn{padding-inline:18px}.scope-links{grid-template-columns:1fr}.hero__title{font-size:10vw}.brand__word{font-size:18px}.brand{gap:10px}.hero-copy>.eyebrow{margin-bottom:24px}}
@media(prefers-reduced-motion:reduce){.btn{transition:none}.btn:hover{transform:none}}
.rule-left>.eyebrow{justify-self:start;width:fit-content}
.hero-copy>.eyebrow{text-shadow:0 2px 3px #0005}
/* Keep the footer name on its intended two lines at normal browser zoom. */
.footer__word{font-size:clamp(28px,2.5vw,40px);line-height:1.05;letter-spacing:-.035em;white-space:nowrap;text-shadow:0 3px 4px rgba(0,0,0,.7),0 9px 18px rgba(0,0,0,.5)}
/* A single-line desktop introduction with the coast visible through the gold. */
.hero-copy>.eyebrow{max-width:none;width:fit-content;white-space:nowrap;font-size:11px;letter-spacing:.065em;line-height:1.5;padding:10px 14px;background:rgba(248,207,40,.68);color:#152129;text-shadow:0 1px 2px rgba(0,0,0,.2)}
@media(max-width:1100px) and (min-width:801px){.hero-copy>.eyebrow{font-size:9px;letter-spacing:.025em;padding-inline:10px}}
@media(max-width:600px){.hero-copy>.eyebrow{white-space:normal;max-width:100%;font-size:10px}}
.packages .offer-card h3{color:var(--c-yellow)}

/* Scroll the existing service strip at the live site's measured pace. */
.service-strip{display:block;overflow:hidden;padding-inline:0}
.service-strip .marquee__group{min-width:100vw;justify-content:space-around;gap:48px;padding-inline:24px;color:inherit;font:inherit;letter-spacing:inherit;line-height:inherit}
.service-strip:hover .marquee__track,.service-strip:focus .marquee__track{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.service-strip .marquee__track{width:100%;animation:none}.service-strip .marquee__group{min-width:0;width:100%;flex-wrap:wrap;gap:24px}.service-strip .marquee__group[aria-hidden]{display:none}}

/* Bridge palette, lower framing, and matching translucent hero surfaces. */
.hero__image{object-position:center calc(46% + 192px);background-color:#090b0a}
.hero .btn--ghost{background:rgba(22,32,39,.66);backdrop-filter:none}
.scope-panel,.scope-sidebar>div:last-child{background:rgba(28,40,49,.72);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.service-strip{padding-block:12px}
.service-strip .marquee__group{gap:32px;padding-inline:16px;justify-content:space-around}
.service-strip .marquee__group>span{flex:none}
.service-strip .service-dot{display:block;width:4px;height:4px;flex:none;border-radius:50%;background:currentColor}
@media(max-width:800px){.hero__image{object-position:60% 96px}.service-strip{padding-block:10px}}
@media(prefers-reduced-motion:reduce){.service-strip .marquee__group{gap:16px}.service-strip .marquee__group>span{padding-left:0}}

.offer-card .package-price .price-amount{color:var(--c-yellow)}

@media(prefers-reduced-motion:reduce){.service-strip .service-dot{display:none}}
