.design-strip{display:flex;justify-content:center;gap:1rem;align-items:center;padding:.48rem var(--gutter);background:var(--night);color:var(--paper-2);font-size:.7rem;letter-spacing:.02em}.design-strip strong{color:var(--aqua);text-transform:uppercase;letter-spacing:.14em}.design-strip a{font-weight:700}.site-header{min-height:92px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem;padding:0 var(--gutter);width:min(calc(100% - 40px),1560px);margin:14px auto 0;border:1px solid rgba(20,39,47,.12);border-radius:999px;position:relative;z-index:50;background:rgba(248,250,247,.86);box-shadow:0 12px 38px rgba(8,27,37,.08);backdrop-filter:blur(18px)}.brand{text-decoration:none;display:grid;grid-template-columns:58px auto auto;column-gap:.45rem;align-items:center;line-height:1}.brand__mark{grid-row:1/3;width:54px;height:54px;object-fit:contain}.brand span{font-family:var(--serif);font-size:2.05rem;align-self:end}.brand b{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;align-self:end;padding-bottom:.28rem}.brand small{grid-column:2/-1;font-size:.55rem;letter-spacing:.12em;text-transform:uppercase;margin-top:.12rem;color:var(--water-2)}.site-nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(.7rem,1.35vw,1.6rem)}.site-nav a{text-decoration:none;font-size:.71rem;text-transform:uppercase;letter-spacing:.1em;padding:.55rem 0;border-bottom:1px solid transparent}.site-nav a[aria-current=page]{border-bottom-color:var(--clay)}.site-nav .nav-brief{border:0;border-radius:999px;padding:.9rem 1.15rem;background:linear-gradient(115deg,var(--water),#174c5e);color:white;box-shadow:0 10px 25px rgba(8,27,37,.16)}.menu-button{display:none;background:none;border:0;min-height:48px}.menu-button span{width:24px;display:grid;gap:5px}.menu-button i{height:1px;background:currentColor;display:block}.site-footer{background:radial-gradient(circle at 82% 15%,rgba(75,196,199,.2),transparent 28%),var(--night);color:var(--paper-2);padding:clamp(80px,10vw,150px) var(--gutter) 30px;display:grid;grid-template-columns:2fr 1fr 1fr 2fr;gap:clamp(2rem,5vw,6rem);border-radius:50px 50px 0 0}.site-footer h2{font-family:var(--sans);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--aqua)}.site-footer a{display:block;margin:.7rem 0;font-size:.9rem}.site-footer__brand img{width:min(100%,520px);height:auto;margin:-1rem 0 1.2rem}.site-footer__brand p,.site-footer__notice p{font-size:.86rem;opacity:.75}.site-footer__notice{border-left:1px solid rgba(255,255,255,.25);padding-left:1.4rem}.site-footer__credit{grid-column:1/-1;padding-top:1.7rem;border-top:1px solid rgba(255,255,255,.2);max-width:none;font-size:.73rem;opacity:.6}.scroll-progress{position:fixed;z-index:1000;left:0;right:0;top:0;height:3px}.scroll-progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--lagoon),var(--clay),var(--sun))}
.contact-dock{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:1100;display:flex;flex-direction:column;gap:12px;align-items:center}.contact-dock__action{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;text-decoration:none;border:2px solid transparent;box-shadow:0 12px 30px rgba(8,27,37,.24);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.contact-dock__action span{font-family:Arial,sans-serif;font-size:1.7rem;line-height:1;transform:translateY(-1px)}.contact-dock__action:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(8,27,37,.3)}.contact-dock__action:active{transform:translateY(0)}.contact-dock__action:focus-visible{outline:3px solid var(--sun);outline-offset:4px}.contact-dock__action--call{background:var(--night);color:#fff;border-color:rgba(255,255,255,.28)}.contact-dock__action--email{background:#fff;color:var(--water);border-color:rgba(8,27,37,.14)}.site-footer{padding-bottom:164px}
@media(max-width:1100px){.contact-dock{right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));transform:none}.site-footer{padding-bottom:156px}}
@media(max-width:700px){.contact-dock{gap:10px}.contact-dock__action{width:56px;height:56px}.contact-dock__action span{font-size:1.55rem}}
@media(prefers-reduced-motion:reduce){.contact-dock__action{transition:none}}
