/* ============================================================
   Blackwater Web Studio — Design System Stylesheet
   Deployed via WordPress enqueue (wp-content/uploads/blackwater/blackwater-design-system.css)
   Loaded by a small sandbox loader: wp-content/novamira-sandbox/blackwater-enqueue.php
   This file is the ONE place to edit brand-wide tokens, glass recipe, buttons, etc.
   Elementor widgets reference these via their "CSS Classes" (Advanced tab) field —
   e.g. type "bw-card bw-card--l2 bw-card--hover" into a Container's CSS Classes box.
   ============================================================ */
/* Webfonts.
   Clash Display (display/headings) — SELF-HOSTED at /wp-content/uploads/blackwater/fonts/
   Satoshi (UI/body) — served from the Fontshare CDN; no binaries vendored (unchanged from source system). */
@import url("https://api.fontshare.com/v2/css?f[]=satoshi@300,400,500,700,900&display=swap");
@font-face{font-family:'Clash Display';src:url("/wp-content/uploads/blackwater/fonts/ClashDisplay-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Clash Display';src:url("/wp-content/uploads/blackwater/fonts/ClashDisplay-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Clash Display';src:url("/wp-content/uploads/blackwater/fonts/ClashDisplay-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Clash Display';src:url("/wp-content/uploads/blackwater/fonts/ClashDisplay-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
:root{
  --bw-abyss:#0B132B;
  --bw-midnight:#1C2541;
  --bw-harbor:#3A506B;
  --bw-tide:#5BC0BE;
  --bw-current:#6FFFE9;
  --bw-white:#FFFFFF;
  --bw-void:#050A16;
  --bw-ink-050:#F5F6F8;
  --bw-ink-100:#EBEDF0;
  --bw-ink-200:#D8DCE3;
  --bw-ink-300:#C4CAD3;
  --bw-ink-400:#B0B9C4;
  --bw-ink-500:#9CA8B5;
  --bw-ink-600:#7C8B9C;
  --bw-ink-700:#5A6E85;
  --bw-ink-800:#3A506B;
  --bw-tide-08:rgba(91,192,190,.08);
  --bw-tide-16:rgba(91,192,190,.16);
  --bw-tide-32:rgba(91,192,190,.32);
  --bw-current-12:rgba(111,255,233,.12);
  --bw-current-24:rgba(111,255,233,.24);
  --bw-current-40:rgba(111,255,233,.40);
  --bw-white-06:rgba(255,255,255,.06);
  --bw-white-10:rgba(255,255,255,.10);
  --bw-white-16:rgba(255,255,255,.16);
  --bw-white-70:rgba(255,255,255,.70);
  --bw-midnight-62:rgba(28,37,65,.62);
  --bw-midnight-80:rgba(28,37,65,.80);
  --bw-abyss-72:rgba(11,19,43,.72);
}
:root{
  --surface-canvas:var(--bw-abyss);
  --surface-raised:var(--bw-midnight);
  --surface-sunken:var(--bw-void);
  --surface-glass:var(--glass-tint-2);
  --surface-glass-quiet:var(--glass-tint-1);
  --surface-overlay:var(--glass-tint-3);
  --surface-accent:var(--bw-tide);
  --surface-accent-quiet:var(--bw-tide-08);
  --text-display:var(--bw-white);
  --text-heading:var(--bw-ink-050);
  --text-body:var(--bw-ink-300);
  --text-muted:var(--bw-ink-500);
  --text-quiet:var(--bw-ink-700);
  --text-accent:var(--bw-current);
  --text-on-accent:var(--bw-abyss);
  --text-link:var(--bw-current);
  --text-link-hover:var(--bw-white);
  --border-quiet:var(--bw-white-06);
  --border-default:var(--glass-border);
  --border-strong:var(--bw-white-16);
  --border-accent:var(--glass-border-hover);
  --divider:linear-gradient(90deg,transparent,rgba(255,255,255,.10),transparent);
  --control-bg:rgba(255,255,255,.04);
  --control-bg-hover:rgba(255,255,255,.07);
  --control-border:var(--bw-white-10);
  --control-placeholder:var(--bw-ink-700);
  --focus-ring:var(--ring-focus);
  --disabled-opacity:.42;
}
[data-surface="light"]{
  --surface-canvas:var(--bw-ink-050);
  --surface-raised:var(--bw-white);
  --surface-glass:rgba(255,255,255,.62);
  --text-display:var(--bw-abyss);
  --text-heading:var(--bw-abyss);
  --text-body:var(--bw-ink-800);
  --text-muted:var(--bw-ink-700);
  --text-accent:var(--bw-tide);
  --text-link:var(--bw-harbor);
  --text-link-hover:var(--bw-abyss);
  --border-default:rgba(11,19,43,.10);
  --border-strong:rgba(11,19,43,.18);
  --control-bg:rgba(11,19,43,.04);
  --control-border:rgba(11,19,43,.12);
}
:root{
  --font-display:"Clash Display","Satoshi",ui-sans-serif,system-ui,sans-serif;
  --font-body:"Satoshi",ui-sans-serif,system-ui,-apple-system,sans-serif;
  --font-mono:ui-monospace,"SF Mono",Menlo,monospace;
  --fw-light:300; --fw-regular:400; --fw-medium:500; --fw-semibold:600; --fw-bold:700;
  --fs-display-1:clamp(3.25rem,6.2vw,6rem);
  --fs-display-2:clamp(2.75rem,4.6vw,4.25rem);
  --fs-h1:clamp(2.25rem,3.6vw,3.25rem);
  --fs-h2:clamp(1.875rem,2.6vw,2.5rem);
  --fs-h3:clamp(1.5rem,1.9vw,1.75rem);
  --fs-h4:1.3125rem;
  --fs-body-lg:1.1875rem;
  --fs-body:1.0625rem;
  --fs-body-sm:.9375rem;
  --fs-caption:.8125rem;
  --fs-eyebrow:.75rem;
  --lh-display:1; --lh-tight:1.1; --lh-heading:1.22; --lh-body:1.65; --lh-loose:1.8;
  --ls-display:-.032em; --ls-heading:-.018em; --ls-body:0em; --ls-eyebrow:.18em; --ls-button:.005em;
}
:root{
  --space-0:0; --space-1:.25rem; --space-2:.5rem; --space-3:.75rem; --space-4:1rem; --space-5:1.25rem;
  --space-6:1.5rem; --space-8:2rem; --space-10:2.5rem; --space-12:3rem; --space-16:4rem; --space-20:5rem;
  --space-24:6rem; --space-32:8rem; --space-40:10rem; --space-50:12.5rem;
  --container-max:1240px; --container-wide:1440px; --container-narrow:820px; --container-pad:clamp(1.25rem,5vw,3rem);
  --section-y:clamp(5rem,10vw,10.5rem); --section-y-tight:clamp(3.5rem,6vw,6rem);
  --stack-gap:clamp(1.5rem,2.4vw,2.5rem); --grid-gap:clamp(1rem,1.8vw,1.5rem); --measure:64ch;
}
:root{
  --radius-xs:6px; --radius-sm:10px; --radius-md:14px; --radius-lg:20px; --radius-xl:24px;
  --radius-2xl:32px; --radius-3xl:40px; --radius-pill:999px;
  --radius-card:var(--radius-xl); --radius-control:var(--radius-md); --radius-button:var(--radius-pill); --radius-surface:var(--radius-2xl);
}
:root{
  --shadow-xs:0 1px 2px rgba(5,10,22,.36); --shadow-sm:0 4px 12px -4px rgba(5,10,22,.44);
  --shadow-md:0 12px 32px -10px rgba(5,10,22,.56); --shadow-lg:0 28px 64px -18px rgba(5,10,22,.66);
  --shadow-xl:0 56px 130px -36px rgba(5,10,22,.78);
  --glow-tide:0 14px 40px -14px rgba(91,192,190,.55);
  --glow-current:0 0 0 1px rgba(111,255,233,.28),0 18px 52px -16px rgba(111,255,233,.42);
  --glow-inset:inset 0 0 32px -12px rgba(111,255,233,.28);
  --highlight-top:inset 0 1px 0 rgba(255,255,255,.16); --highlight-edge:inset 0 0 0 1px rgba(255,255,255,.08);
  --ring-focus:0 0 0 3px rgba(91,192,190,.38);
}
:root{
  --glass-blur-1:14px; --glass-blur-2:22px; --glass-blur-3:34px; --glass-saturate:145%;
  --glass-tint-1:rgba(28,37,65,.42); --glass-tint-2:rgba(28,37,65,.62); --glass-tint-3:rgba(11,19,43,.86);
  --glass-border:rgba(255,255,255,.10); --glass-border-hover:rgba(111,255,233,.28);
  --glass-sheen:linear-gradient(160deg,rgba(255,255,255,.14) 0%,rgba(255,255,255,.04) 34%,rgba(255,255,255,0) 62%);
  --glass-shadow:0 24px 60px -22px rgba(5,10,22,.62);
  --glass-filter-1:blur(var(--glass-blur-1)) saturate(var(--glass-saturate));
  --glass-filter-2:blur(var(--glass-blur-2)) saturate(var(--glass-saturate));
  --glass-filter-3:blur(var(--glass-blur-3)) saturate(var(--glass-saturate));
  --grad-hero-veil:linear-gradient(180deg,rgba(11,19,43,.30) 0%,rgba(11,19,43,.62) 46%,var(--bw-abyss) 100%);
  --grad-tide:linear-gradient(135deg,var(--bw-current) 0%,var(--bw-tide) 62%);
  --grad-tide-soft:linear-gradient(135deg,rgba(111,255,233,.18) 0%,rgba(91,192,190,.06) 70%);
  --grad-text:linear-gradient(104deg,var(--bw-white) 0%,var(--bw-ink-200) 42%,var(--bw-current) 100%);
  --grad-rule:linear-gradient(90deg,transparent,rgba(111,255,233,.42),transparent);
  --grad-panel:linear-gradient(180deg,rgba(28,37,65,.72) 0%,rgba(11,19,43,.58) 100%);
}
:root{
  --dur-instant:90ms; --dur-fast:160ms; --dur-base:280ms; --dur-slow:520ms; --dur-reveal:760ms; --dur-ambient:14s;
  --ease-out:cubic-bezier(.22,1,.36,1); --ease-soft:cubic-bezier(.33,1,.68,1); --ease-in-out:cubic-bezier(.65,0,.35,1); --ease-linear:linear;
  --lift-hover:-3px; --press-scale:.985; --reveal-rise:24px; --stagger:90ms;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--surface-canvas);color:var(--text-body);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);letter-spacing:var(--ls-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5{font-family:var(--font-display);font-weight:var(--fw-medium);color:var(--text-heading);letter-spacing:var(--ls-heading);line-height:var(--lh-heading);margin:0}
p{margin:0}
a{color:var(--text-link);text-decoration:none;transition:color var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out)}
a:hover{color:var(--text-link-hover)}
img{max-width:100%;display:block}
::selection{background:var(--bw-current-40);color:var(--bw-abyss)}
.bw-container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-pad)}
.bw-container--wide{max-width:var(--container-wide)}
.bw-container--narrow{max-width:var(--container-narrow)}
.bw-section{position:relative;padding-block:var(--section-y)}
.bw-section--tight{padding-block:var(--section-y-tight)}
.bw-glass{position:relative;background:var(--surface-glass);-webkit-backdrop-filter:var(--glass-filter-2);backdrop-filter:var(--glass-filter-2);border:1px solid var(--border-default);border-radius:var(--radius-card);box-shadow:var(--glass-shadow),var(--highlight-top)}
.bw-glass--quiet{background:var(--surface-glass-quiet);-webkit-backdrop-filter:var(--glass-filter-1);backdrop-filter:var(--glass-filter-1)}
.bw-glass--overlay{background:var(--surface-overlay);-webkit-backdrop-filter:var(--glass-filter-3);backdrop-filter:var(--glass-filter-3)}
.bw-glass::after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--glass-sheen);opacity:.9;pointer-events:none}
.bw-display{font-family:var(--font-display);font-weight:var(--fw-medium);font-size:var(--fs-display-1);line-height:var(--lh-display);letter-spacing:var(--ls-display);color:var(--text-display)}
.bw-eyebrow{font-family:var(--font-body);font-size:var(--fs-eyebrow);font-weight:var(--fw-medium);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-accent)}
.bw-lede{font-size:var(--fs-body-lg);color:var(--text-body);max-width:var(--measure)}
.bw-gradient-text{background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent}
.bw-reveal{opacity:0;transform:translate3d(0,var(--reveal-rise),0);transition:opacity var(--dur-reveal) var(--ease-out),transform var(--dur-reveal) var(--ease-out)}
.bw-reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}.bw-reveal{opacity:1;transform:none}}
.bw-icon{display:inline-block;flex:none;background-color:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}
.bw-btn{display:inline-flex;align-self:flex-start;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-body);font-weight:var(--fw-medium);letter-spacing:var(--ls-button);border-radius:var(--radius-button);border:1px solid transparent;cursor:pointer;text-decoration:none;white-space:nowrap;position:relative;isolation:isolate;transition:transform var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),background-color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out),filter var(--dur-base) var(--ease-out)}
.bw-btn--sm{height:38px;padding-inline:var(--space-5);font-size:var(--fs-body-sm)}
.bw-btn--md{height:46px;padding-inline:var(--space-6);font-size:var(--fs-body)}
.bw-btn--lg{height:56px;padding-inline:var(--space-8);font-size:var(--fs-body-lg)}
.bw-btn--block{width:100%;align-self:stretch}
.bw-btn--primary{background:var(--grad-tide);color:var(--text-on-accent);font-weight:var(--fw-semibold);box-shadow:var(--glow-tide),var(--highlight-top)}
.bw-btn--primary:hover{transform:translateY(var(--lift-hover));box-shadow:var(--glow-current),0 22px 54px -16px rgba(91,192,190,.6);filter:saturate(112%)}
.bw-btn--secondary{background:var(--surface-glass);-webkit-backdrop-filter:var(--glass-filter-2);backdrop-filter:var(--glass-filter-2);border-color:var(--border-default);color:var(--text-heading);box-shadow:var(--highlight-top)}
.bw-btn--secondary:hover{transform:translateY(var(--lift-hover));border-color:var(--border-accent);background:var(--control-bg-hover);color:var(--bw-white)}
.bw-btn--outline{background:transparent;border-color:var(--border-strong);color:var(--text-heading)}
.bw-btn--outline:hover{border-color:var(--bw-tide);color:var(--text-accent);background:var(--surface-accent-quiet)}
.bw-btn--ghost{background:transparent;color:var(--text-heading);padding-inline:var(--space-2)}
.bw-btn--ghost:hover{color:var(--text-accent)}
.bw-btn:active{transform:scale(var(--press-scale)) translateY(0)}
.bw-btn__icon{transition:transform var(--dur-base) var(--ease-out)}
.bw-btn:hover .bw-btn__icon--trailing{transform:translateX(3px)}
.bw-badge{display:inline-flex;align-self:flex-start;align-items:center;gap:var(--space-2);height:28px;padding-inline:var(--space-3);border-radius:var(--radius-pill);font-size:var(--fs-eyebrow);font-weight:var(--fw-medium);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;border:1px solid var(--border-default);background:var(--surface-glass-quiet);-webkit-backdrop-filter:var(--glass-filter-1);backdrop-filter:var(--glass-filter-1);color:var(--text-muted)}
.bw-badge--accent{border-color:var(--bw-current-24);color:var(--text-accent);background:var(--bw-tide-08)}
.bw-badge__dot{width:6px;height:6px;border-radius:var(--radius-pill);background:var(--bw-current);box-shadow:0 0 0 3px var(--bw-current-24)}
.bw-tag{display:inline-flex;align-self:flex-start;align-items:center;white-space:nowrap;gap:var(--space-2);padding:5px var(--space-3);border-radius:var(--radius-sm);font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--text-muted);background:var(--control-bg);border:1px solid var(--border-quiet)}
.bw-card{position:relative;display:flex;flex-direction:column;border-radius:var(--radius-card);border:1px solid var(--border-default);box-shadow:var(--glass-shadow),var(--highlight-top);overflow:hidden;transition:transform var(--dur-slow) var(--ease-out),border-color var(--dur-slow) var(--ease-out),box-shadow var(--dur-slow) var(--ease-out)}
.bw-card--l1{background:var(--glass-tint-1);-webkit-backdrop-filter:var(--glass-filter-1);backdrop-filter:var(--glass-filter-1)}
.bw-card--l2{background:var(--glass-tint-2);-webkit-backdrop-filter:var(--glass-filter-2);backdrop-filter:var(--glass-filter-2)}
.bw-card--l3{background:var(--glass-tint-3);-webkit-backdrop-filter:var(--glass-filter-3);backdrop-filter:var(--glass-filter-3)}
.bw-card--solid{background:var(--grad-panel);-webkit-backdrop-filter:none;backdrop-filter:none}
.bw-card__body{position:relative;z-index:1;flex:1;min-height:0}
.bw-card--hover:hover{transform:translateY(-4px);border-color:var(--border-accent);box-shadow:var(--shadow-lg),var(--glow-inset),var(--highlight-top)}
.bw-divider{border:0;height:1px;background:var(--divider);margin:0}
.bw-divider--accent{background:var(--grad-rule)}
.bw-divider--labelled{display:flex;align-self:stretch;align-items:center;gap:var(--space-4);height:auto;background:none}
.bw-divider__line{flex:1;height:1px;background:var(--divider)}
.bw-divider__label{font-size:var(--fs-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-quiet);white-space:nowrap}
.bw-divider--vertical{width:1px;height:auto;align-self:stretch;background:linear-gradient(180deg,transparent,rgba(255,255,255,.10),transparent)}
.bw-field{display:flex;flex-direction:column;gap:var(--space-2)}
.bw-label{font-size:var(--fs-caption);font-weight:var(--fw-medium);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}
.bw-input{width:100%;font-family:var(--font-body);font-size:var(--fs-body);color:var(--text-heading);background:var(--control-bg);border:1px solid var(--control-border);border-radius:var(--radius-control);padding:0 var(--space-4);height:50px;-webkit-backdrop-filter:var(--glass-filter-1);backdrop-filter:var(--glass-filter-1)}
.bw-input::placeholder{color:var(--control-placeholder)}
.bw-input:focus{outline:none;border-color:var(--bw-tide);box-shadow:var(--focus-ring)}
.bw-input--textarea{height:auto;min-height:132px;padding:var(--space-4);line-height:var(--lh-body);resize:vertical}
.bw-check{display:inline-flex;align-self:flex-start;align-items:flex-start;gap:var(--space-3);cursor:pointer;font-size:var(--fs-body-sm);color:var(--text-body)}
.bw-check__box{flex:none;width:20px;height:20px;margin-top:1px;border-radius:var(--radius-xs);border:1px solid var(--control-border);background:var(--control-bg);display:grid;place-items:center;color:var(--text-on-accent)}
.bw-check__box--on{background:var(--grad-tide);border-color:transparent;box-shadow:var(--glow-tide)}
.bw-switch{display:inline-flex;align-self:flex-start;align-items:center;gap:var(--space-3);cursor:pointer;font-size:var(--fs-body-sm);color:var(--text-body)}
.bw-switch__track{position:relative;flex:none;width:46px;height:26px;border-radius:var(--radius-pill);background:var(--control-bg);border:1px solid var(--control-border)}
.bw-switch__track--on{background:var(--grad-tide);border-color:transparent;box-shadow:var(--glow-tide)}
.bw-switch__knob{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:var(--radius-pill);background:var(--bw-white);box-shadow:var(--shadow-sm)}
.bw-switch__track--on .bw-switch__knob{transform:translateX(20px)}
.bw-nav{position:fixed;top:0;left:0;right:0;z-index:60;transition:background-color var(--dur-slow) var(--ease-out),backdrop-filter var(--dur-slow) var(--ease-out),border-color var(--dur-slow) var(--ease-out),box-shadow var(--dur-slow) var(--ease-out);border-bottom:1px solid transparent}
.bw-nav--stuck{background:var(--glass-tint-1);-webkit-backdrop-filter:var(--glass-filter-2);backdrop-filter:var(--glass-filter-2);border-bottom-color:var(--border-default);box-shadow:0 12px 40px -24px rgba(5,10,22,.8)}
.bw-nav__mark{height:34px;width:auto;filter:drop-shadow(0 2px 10px rgba(111,255,233,.22))}
.bw-nav__wordmark{font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:1.0625rem;letter-spacing:.02em;text-transform:uppercase;line-height:1}
.bw-nav__wordmark span{display:block;font-family:var(--font-body);font-size:.5625rem;font-weight:var(--fw-medium);letter-spacing:.32em;color:var(--text-muted);text-transform:uppercase;margin-top:3px}
.bw-nav__link{position:relative;display:inline-block;padding:var(--space-2) var(--space-4);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);color:var(--text-body);border-radius:var(--radius-pill)}
.bw-nav__link:hover{color:var(--bw-white);background:var(--control-bg)}
.bw-footer{position:relative;border-top:1px solid var(--border-quiet);background:linear-gradient(180deg,rgba(28,37,65,.35),var(--bw-abyss))}
.bw-footer__col-title{font-size:var(--fs-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-quiet);margin-bottom:var(--space-5)}
.bw-footer__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}
.bw-footer__list a{color:var(--text-body);font-size:var(--fs-body-sm)}
.bw-footer__list a:hover{color:var(--text-accent)}
.bw-footer__legal{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);flex-wrap:wrap;font-size:var(--fs-caption);color:var(--text-quiet)}
.bw-heading{display:flex;flex-direction:column;gap:var(--space-4);max-width:760px}
.bw-heading--center{align-items:center;text-align:center;margin-inline:auto}
.bw-heading__eyebrow{display:inline-flex;align-items:center;gap:var(--space-3);font-size:var(--fs-eyebrow);font-weight:var(--fw-medium);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-accent);align-self:flex-start}
.bw-heading--center .bw-heading__eyebrow{align-self:center}
.bw-heading__eyebrow::before{content:"";width:26px;height:1px;background:var(--grad-tide);flex:none}
.bw-heading__title{font-family:var(--font-display);font-weight:var(--fw-medium);font-size:var(--fs-h1);line-height:var(--lh-tight);letter-spacing:var(--ls-display);color:var(--text-display)}
.bw-heading__lede{font-size:var(--fs-body-lg);color:var(--text-body);max-width:var(--measure)}
.bw-feature{padding:var(--space-8)}
.bw-feature__tile{display:grid;place-items:center;width:52px;height:52px;border-radius:var(--radius-md);background:var(--grad-tide-soft);border:1px solid var(--bw-current-24);color:var(--text-accent);box-shadow:var(--highlight-top)}
.bw-feature__title{font-family:var(--font-display);font-size:var(--fs-h4);font-weight:var(--fw-medium);color:var(--text-display);letter-spacing:var(--ls-heading)}
.bw-feature__body{font-size:var(--fs-body-sm);color:var(--text-body)}
.bw-service{padding:var(--space-10)}
.bw-service__index{font-family:var(--font-display);font-size:var(--fs-caption);font-weight:var(--fw-medium);letter-spacing:var(--ls-eyebrow);color:var(--text-quiet)}
.bw-service__title{font-family:var(--font-display);font-size:var(--fs-h3);font-weight:var(--fw-medium);color:var(--text-display);letter-spacing:var(--ls-heading)}
.bw-service__body{font-size:var(--fs-body);color:var(--text-body)}
.bw-service__link{display:inline-flex;align-items:center;align-self:flex-start;white-space:nowrap;gap:var(--space-2);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);color:var(--text-accent);margin-top:auto}
.bw-stat__value{font-family:var(--font-display);font-size:var(--fs-display-2);font-weight:var(--fw-medium);line-height:1;letter-spacing:var(--ls-display);color:var(--text-display)}
.bw-stat__label{font-size:var(--fs-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted)}
.bw-stat__caption{font-size:var(--fs-body-sm);color:var(--text-quiet)}
.bw-quote{padding:var(--space-10)}
.bw-quote__mark{font-family:var(--font-display);font-size:3.5rem;line-height:.6;color:var(--bw-tide-32)}
.bw-quote__text{font-family:var(--font-display);font-weight:var(--fw-regular);font-size:var(--fs-h3);line-height:1.34;letter-spacing:var(--ls-heading);color:var(--text-heading)}
.bw-quote__foot{display:flex;align-items:center;gap:var(--space-4);margin-top:auto}
.bw-quote__name{font-size:var(--fs-body-sm);font-weight:var(--fw-medium);color:var(--text-heading);line-height:1.3}
.bw-quote__role{font-size:var(--fs-caption);line-height:1.3;color:var(--text-quiet)}
.bw-step{position:relative;display:flex;gap:var(--space-6);padding-bottom:var(--space-12)}
.bw-step__num{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--radius-pill);border:1px solid var(--bw-current-24);background:var(--glass-tint-2);-webkit-backdrop-filter:var(--glass-filter-1);backdrop-filter:var(--glass-filter-1);font-family:var(--font-display);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);color:var(--text-accent);box-shadow:var(--highlight-top)}
.bw-step__line{flex:1;width:1px;margin-top:var(--space-3);background:linear-gradient(180deg,rgba(111,255,233,.28),transparent)}
.bw-step__title{font-family:var(--font-display);font-size:var(--fs-h4);font-weight:var(--fw-medium);color:var(--text-display);letter-spacing:var(--ls-heading);margin-bottom:var(--space-3)}
.bw-step__body{font-size:var(--fs-body-sm);color:var(--text-body);max-width:52ch}
.bw-price{padding:var(--space-10)}
.bw-price__name{font-family:var(--font-display);font-size:var(--fs-h4);font-weight:var(--fw-medium);color:var(--text-display)}
.bw-price__value{font-family:var(--font-display);font-size:var(--fs-h2);font-weight:var(--fw-medium);line-height:1.05;letter-spacing:var(--ls-display);color:var(--text-display)}
.bw-price__period{font-size:var(--fs-body-sm);color:var(--text-quiet);white-space:nowrap}
.bw-price__item{display:flex;align-items:flex-start;gap:var(--space-3);font-size:var(--fs-body-sm);color:var(--text-body)}
.bw-price__check{color:var(--text-accent);margin-top:3px}
.bw-price--featured{border-color:var(--bw-current-24);box-shadow:var(--shadow-lg),var(--glow-inset),var(--highlight-top)}
.bw-acc__item{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--glass-tint-1);-webkit-backdrop-filter:var(--glass-filter-1);backdrop-filter:var(--glass-filter-1);overflow:hidden}
.bw-acc__item--open,.e-n-accordion-item[open]{border-color:var(--border-accent);background:var(--glass-tint-2)}
.bw-marquee{position:relative;overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.bw-marquee__track{display:flex;align-items:center;gap:var(--space-16);width:max-content;animation:bw-drift var(--dur-ambient) linear infinite}
.bw-marquee:hover .bw-marquee__track{animation-play-state:paused}
.bw-marquee__item{font-family:var(--font-display);font-size:var(--fs-h4);font-weight:var(--fw-medium);letter-spacing:.02em;color:var(--text-quiet);white-space:nowrap}
@keyframes bw-drift{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.bw-cta{position:relative;overflow:hidden;border-radius:var(--radius-surface);border:1px solid var(--border-default);background:var(--grad-panel);box-shadow:var(--shadow-lg),var(--highlight-top);padding:clamp(2.5rem,5vw,4.5rem)}
.bw-cta__glow{position:absolute;inset:auto -10% -60% 30%;height:340px;background:radial-gradient(ellipse at center,rgba(91,192,190,.34),transparent 68%);filter:blur(18px);pointer-events:none}
.hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;padding-block:calc(82px + var(--space-16)) var(--space-24)}
.hero__bg{position:absolute;inset:-8% -4%;background:radial-gradient(60% 80% at 82% 30%, rgba(111,255,233,.38) 0%, rgba(91,192,190,.22) 32%, rgba(91,192,190,0) 62%),radial-gradient(45% 60% at 95% 65%, rgba(91,192,190,.28) 0%, rgba(58,80,107,0) 60%),linear-gradient(115deg, var(--bw-abyss) 0%, var(--bw-abyss) 38%, var(--bw-midnight) 58%, var(--bw-harbor) 76%, var(--bw-tide) 100%)}
.hero__veil{position:absolute;inset:0;background:linear-gradient(102deg,rgba(11,19,43,.94) 0%,rgba(11,19,43,.82) 34%,rgba(11,19,43,.44) 68%,rgba(11,19,43,.62) 100%)}
.hero__floor{position:absolute;left:0;right:0;bottom:0;height:34%;background:linear-gradient(180deg,transparent,var(--bw-abyss))}
.hero__title{font-family:var(--font-display);font-weight:var(--fw-medium);font-size:var(--fs-display-1);line-height:.98;letter-spacing:var(--ls-display);color:var(--text-display)}
.hero__cue{position:absolute;left:50%;bottom:var(--space-8);transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--space-3);z-index:1}
.hero__cue-line{width:1px;height:46px;background:linear-gradient(180deg,transparent,var(--bw-current));animation:cue 2.4s var(--ease-in-out) infinite}
@keyframes cue{0%,100%{opacity:.25;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}
.panel__bar{display:flex;align-items:center;gap:var(--space-3);padding-bottom:var(--space-5);border-bottom:1px solid var(--border-quiet)}
.panel__url{font-family:var(--font-mono);font-size:var(--fs-caption);color:var(--text-muted)}
.panel__metric{padding:var(--space-4);border-radius:var(--radius-md);background:var(--control-bg);border:1px solid var(--border-quiet)}
.panel__row{display:flex;align-items:center;gap:var(--space-3);padding:11px var(--space-4);border-radius:var(--radius-sm);background:var(--control-bg);border:1px solid var(--border-quiet);font-size:var(--fs-caption);color:var(--text-body)}
.panel__row--accent{border-color:var(--bw-current-24);background:var(--bw-tide-08);color:var(--text-accent)}
.panel__row-tail{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--text-quiet)}
.work__media{position:relative;aspect-ratio:16/10;border-radius:var(--radius-md);overflow:hidden;background:linear-gradient(140deg,var(--bw-midnight),var(--bw-abyss));border:1px solid var(--border-quiet)}
.work__ph{position:relative;font-size:var(--fs-caption);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-quiet)}
.bw-logo-mark{height:34px;width:auto;display:block}
