/* ==========================================================================
   Fonts — self-hosted (same woff2 subsets as the reference site), so the page
   renders without a third-party request. unicode-range subsetting is kept.
   ========================================================================== */
@font-face { font-family: "Inter"; font-style: normal; font-weight: 400; font-display: swap; src: url("fonts/ba9851c3c22cd980-s.woff2") format("woff2"); unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 400; font-display: swap; src: url("fonts/21350d82a1f187e9-s.p.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 400; font-display: swap; src: url("fonts/c5fe6dc8356a8c31-s.woff2") format("woff2"); unicode-range: U+1F00-1FFF; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 400; font-display: swap; src: url("fonts/19cfc7226ec3afaa-s.woff2") format("woff2"); unicode-range: U+370-377, U+37A-37F, U+384-38A, U+38C, U+38E-3A1, U+3A3-3FF; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 400; font-display: swap; src: url("fonts/df0a9ae256c0569c-s.woff2") format("woff2"); unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 400; font-display: swap; src: url("fonts/8e9860b6e62d6359-s.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 400; font-display: swap; src: url("fonts/e4af272ccee01ff0-s.p.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 500; font-display: swap; src: url("fonts/ba9851c3c22cd980-s.woff2") format("woff2"); unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 500; font-display: swap; src: url("fonts/21350d82a1f187e9-s.p.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 500; font-display: swap; src: url("fonts/c5fe6dc8356a8c31-s.woff2") format("woff2"); unicode-range: U+1F00-1FFF; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 500; font-display: swap; src: url("fonts/19cfc7226ec3afaa-s.woff2") format("woff2"); unicode-range: U+370-377, U+37A-37F, U+384-38A, U+38C, U+38E-3A1, U+3A3-3FF; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 500; font-display: swap; src: url("fonts/df0a9ae256c0569c-s.woff2") format("woff2"); unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 500; font-display: swap; src: url("fonts/8e9860b6e62d6359-s.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 500; font-display: swap; src: url("fonts/e4af272ccee01ff0-s.p.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 600; font-display: swap; src: url("fonts/ba9851c3c22cd980-s.woff2") format("woff2"); unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 600; font-display: swap; src: url("fonts/21350d82a1f187e9-s.p.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 600; font-display: swap; src: url("fonts/c5fe6dc8356a8c31-s.woff2") format("woff2"); unicode-range: U+1F00-1FFF; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 600; font-display: swap; src: url("fonts/19cfc7226ec3afaa-s.woff2") format("woff2"); unicode-range: U+370-377, U+37A-37F, U+384-38A, U+38C, U+38E-3A1, U+3A3-3FF; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 600; font-display: swap; src: url("fonts/df0a9ae256c0569c-s.woff2") format("woff2"); unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 600; font-display: swap; src: url("fonts/8e9860b6e62d6359-s.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 600; font-display: swap; src: url("fonts/e4af272ccee01ff0-s.p.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 700; font-display: swap; src: url("fonts/ba9851c3c22cd980-s.woff2") format("woff2"); unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 700; font-display: swap; src: url("fonts/21350d82a1f187e9-s.p.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 700; font-display: swap; src: url("fonts/c5fe6dc8356a8c31-s.woff2") format("woff2"); unicode-range: U+1F00-1FFF; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 700; font-display: swap; src: url("fonts/19cfc7226ec3afaa-s.woff2") format("woff2"); unicode-range: U+370-377, U+37A-37F, U+384-38A, U+38C, U+38E-3A1, U+3A3-3FF; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 700; font-display: swap; src: url("fonts/df0a9ae256c0569c-s.woff2") format("woff2"); unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 700; font-display: swap; src: url("fonts/8e9860b6e62d6359-s.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 700; font-display: swap; src: url("fonts/e4af272ccee01ff0-s.p.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 800; font-display: swap; src: url("fonts/ba9851c3c22cd980-s.woff2") format("woff2"); unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 800; font-display: swap; src: url("fonts/21350d82a1f187e9-s.p.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 800; font-display: swap; src: url("fonts/c5fe6dc8356a8c31-s.woff2") format("woff2"); unicode-range: U+1F00-1FFF; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 800; font-display: swap; src: url("fonts/19cfc7226ec3afaa-s.woff2") format("woff2"); unicode-range: U+370-377, U+37A-37F, U+384-38A, U+38C, U+38E-3A1, U+3A3-3FF; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 800; font-display: swap; src: url("fonts/df0a9ae256c0569c-s.woff2") format("woff2"); unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 800; font-display: swap; src: url("fonts/8e9860b6e62d6359-s.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 800; font-display: swap; src: url("fonts/e4af272ccee01ff0-s.p.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Bodoni Moda"; font-style: normal; font-weight: 400 900; font-display: swap; src: url("fonts/4f52e7e286ad48dd.woff2") format("woff2"); unicode-range: U+302-303, U+305, U+307-308, U+310, U+312, U+315, U+31A, U+326-327, U+32C, U+32F-330, U+332-333, U+338, U+33A, U+346, U+34D, U+391-3A1, U+3A3-3A9, U+3B1-3C9, U+3D1, U+3D5-3D6, U+3F0-3F1, U+3F4-3F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF; }
@font-face { font-family: "Bodoni Moda"; font-style: normal; font-weight: 400 900; font-display: swap; src: url("fonts/5b2b7a6f7f37a283.woff2") format("woff2"); unicode-range: U+1-C, U+E-1F, U+7F-9F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF; }
@font-face { font-family: "Bodoni Moda"; font-style: normal; font-weight: 400 900; font-display: swap; src: url("fonts/9a8547324877773b.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Bodoni Moda"; font-style: normal; font-weight: 400 900; font-display: swap; src: url("fonts/95c8264a6767742a.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* ==========================================================================
   Drynex — layout, spacing, type scale and colour ramps mirror b9-agency.com
   (captured 2026-08-15). Tailwind utilities from the original are rewritten
   here as plain classes; the numbers are the ones measured on the live page.
   ========================================================================== */

:root{
  /* AURUM — rose gold on charcoal. Dark surface tiers (bg < surface <
     surface-2/border) so cards and dividers stay readable against the base. */
  --bg:#1A1714;
  --bg-alt:#1F1B17;
  --surface:#241F1B;
  --surface-2:#2E2823;
  --border:#2E2823;
  --fg:#F7E3E0;                /* blush pink — primary text on dark */
  --muted:#B8ADA6;              /* secondary/dim text */
  --muted-2:#D9CFC9;             /* nav links, slightly brighter than --muted */
  --primary:#C98A93;            /* rose gold — links, icons, small accents */
  --accent:#B76E79;              /* deeper rose gold — headline highlight core */
  --accent-soft:#3A2A2C;         /* rose-tinted dark chip background */
  --on-primary:#2C1418;          /* dark wine text sat on top of rose-gold buttons */
  --magenta:#B76E79;
  --deep:#B76E79;                /* metallic heading core colour */
  --deep-2:#C98A93;
  --pink-500:#C98A93;
  --zinc-400:#8F847D;
  --zinc-600:#B8ADA6;
  --zinc-900:#F7E3E0;
  --wine:#3A1E20;
  --wine-2:#24100F;

  --font-sans:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,
    "Helvetica Neue",Arial,"Noto Sans","Apple Color Emoji","Segoe UI Emoji";
  --font-bodoni:Georgia,"Times New Roman",serif;

  --container:72rem;          /* 1152px — content width lands on 1088px */
}

*{box-sizing:border-box;margin:0;padding:0;}

html{scroll-behavior:smooth;}
html,body{overflow-x:hidden;position:relative;}

body{
  font-family:var(--font-sans);
  background:var(--bg);
  color:var(--fg);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.5;
}

a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
button{font-family:inherit;}
section[id]{scroll-margin-top:105px;}

.container{max-width:var(--container);margin:0 auto;padding:0 1rem;}
@media (min-width:640px){ .container{padding:0 1.5rem;} }
@media (min-width:1024px){ .container{padding:0 2rem;} }

.section{padding:4rem 0;}
@media (min-width:1024px){ .section{padding:6rem 0;} }

.sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* Grain overlay reused by the hero and the two pink arenas. */
.noise::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cfilter id='a'%3E%3CfeTurbulence baseFrequency='.85' numOctaves='4' stitchTiles='stitch' type='fractalNoise'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");
  background-repeat:repeat;background-size:200px 200px;
  mix-blend-mode:multiply;opacity:.035;
}

/* --------------------------------------------------------------------------
   Typography
   -------------------------------------------------------------------------- */
.h2{
  font-family:var(--font-sans);
  font-size:1.5rem;line-height:2rem;font-weight:700;letter-spacing:-.025em;
}
@media (min-width:640px){ .h2{font-size:1.875rem;line-height:2.25rem;} }

.metallic{
  background:linear-gradient(90deg,var(--deep-2),var(--deep) 50%,var(--deep-2));
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:var(--deep);
  display:inline-block;overflow:visible;padding-bottom:.15em;
  filter:drop-shadow(0 2px 14px rgba(232,67,147,.25));
}
.metallic-dark{
  background:linear-gradient(90deg,#F7E3E0,#E8C4C0 20%,#F7E3E0 40%,#D9A8A4 60%,#F7E3E0 80%,#E8C4C0);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:#F7E3E0;
  display:inline-block;padding-bottom:.15em;
  filter:drop-shadow(0 2px 12px rgba(201,138,147,.35));
}

.kicker{
  font-size:.75rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(247,227,224,.55);margin-bottom:.75rem;
}
.kicker-lg{
  font-size:.875rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;
  color:rgba(247,227,224,.4);
}
.section-head{text-align:center;margin-bottom:3rem;}
.section-head .lead{
  font-size:1rem;line-height:1.625;color:var(--muted);
  max-width:42rem;margin:.75rem auto 0;
}
@media (min-width:640px){ .section-head .lead{font-size:1.125rem;} }

/* --------------------------------------------------------------------------
   Buttons
   -------------------------------------------------------------------------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.625rem;
  white-space:nowrap;border:none;cursor:pointer;
  font-family:var(--font-sans);font-weight:600;
  transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s ease,filter .2s ease;
}
.btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px;}

/* Rose-gold pill button — the site's one recurring CTA treatment. */
.btn-glass{
  color:var(--on-primary);
  background:
    linear-gradient(135deg,rgba(201,138,147,.95),rgba(183,110,121,.95) 40%,rgba(160,92,102,.92) 70%,rgba(183,110,121,.95)),
    radial-gradient(ellipse at 30% 40%,rgba(217,168,164,.35),transparent 60%),
    radial-gradient(ellipse at 70% 60%,rgba(201,138,147,.3),transparent 60%);
  border:1px solid rgba(217,168,164,.5);
  box-shadow:
    0 2px 8px rgba(0,0,0,.25),
    inset 0 1px 2px rgba(247,227,224,.35),
    inset 0 -1px 2px rgba(44,20,24,.3);
  text-shadow:0 1px 2px rgba(247,227,224,.2);
}
.btn-glass:hover{box-shadow:0 12px 40px rgba(183,110,121,.5),0 0 60px rgba(183,110,121,.2);}

.btn-lg{height:3.5rem;padding:0 2.5rem;border-radius:1rem;font-size:1rem;}
.btn-md{height:2.5rem;padding:0 1.25rem;border-radius:.5rem;font-size:.875rem;font-weight:500;}
.btn-block{width:100%;height:3rem;border-radius:.75rem;font-size:.875rem;}

.btn-outline{
  height:3.5rem;padding:0 2rem;border-radius:.75rem;font-size:1rem;
  color:var(--fg);background:var(--surface);
  border:1px solid var(--border);
  box-shadow:0 1px 2px rgba(0,0,0,.2);
  backdrop-filter:blur(4px);
}
.btn-outline:hover{background:var(--surface-2);border-color:var(--primary);}

.btn-stack{flex-direction:column;gap:.125rem;line-height:1.25;}
.btn-sub{font-size:.75rem;font-weight:400;color:rgba(44,20,24,.75);text-shadow:none;}
.cta-note{
  display:block;margin-top:.75rem;text-align:center;
  font-size:.75rem;color:var(--muted);
}

/* --------------------------------------------------------------------------
   Nav
   -------------------------------------------------------------------------- */
.nav{position:fixed;top:1.5rem;left:0;right:0;z-index:120;}
.nav-bar{
  display:flex;align-items:center;gap:1rem;height:66px;
  padding:0 .75rem 0 1.25rem;
  background:rgba(26,23,20,.85);
  backdrop-filter:blur(20px) saturate(140%);
  border:1px solid var(--border);
  border-radius:1rem;
  box-shadow:inset 0 1px 1px rgba(247,227,224,.06),0 8px 32px rgba(0,0,0,.35),0 2px 8px rgba(0,0,0,.2);
}
.nav-logo{
  font-family:var(--font-bodoni);font-size:1.5rem;font-weight:400;
  letter-spacing:.15em;line-height:1;flex-shrink:0;color:var(--primary);
}
.nav-links{
  display:flex;align-items:center;gap:2rem;margin:0 auto;
  font-size:.875rem;color:var(--muted-2);
}
.nav-links a{opacity:.85;transition:opacity .2s ease;}
.nav-links a:hover{opacity:1;color:var(--primary);}
.nav-locale-wrap{position:relative;}
.nav-locale{
  display:inline-flex;align-items:center;gap:.125rem;height:2.75rem;padding:0 .375rem;
  border:none;background:transparent;border-radius:.5rem;cursor:pointer;
  color:var(--muted-2);font-size:.875rem;font-weight:600;font-family:inherit;
}
.nav-locale:hover{background:rgba(247,227,224,.06);color:var(--fg);}
.nav-locale svg{transition:transform .2s ease;}
.nav-locale[aria-expanded="true"] svg{transform:rotate(180deg);}
.nav-locale-menu{
  position:absolute;top:calc(100% + .5rem);left:50%;transform:translateX(-50%);
  min-width:6rem;padding:.375rem;border-radius:.75rem;background:var(--surface);
  border:1px solid var(--border);box-shadow:0 12px 32px rgba(0,0,0,.4);
  display:none;flex-direction:column;gap:.125rem;z-index:130;
}
.nav-locale-menu.open{display:flex;}
.nav-locale-menu button{
  display:block;width:100%;padding:.5rem .625rem;border-radius:.5rem;border:none;
  background:transparent;text-align:left;font-size:.8125rem;font-weight:500;
  color:var(--fg);cursor:pointer;font-family:inherit;
}
.nav-locale-menu button:hover{background:var(--b9-accent-soft);color:var(--pink-500);}
.nav-locale-menu button[aria-current="true"]{color:var(--pink-500);font-weight:700;}
.locale-toast{
  position:fixed;left:50%;bottom:2rem;transform:translateX(-50%) translateY(10px);
  padding:.75rem 1.25rem;border-radius:.75rem;background:var(--surface-2);color:var(--fg);
  font-size:.875rem;font-weight:500;box-shadow:0 12px 32px rgba(0,0,0,.4);
  opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease;z-index:200;
}
.locale-toast.show{opacity:1;transform:translateX(-50%) translateY(0);}
.nav-toggle{
  display:none;align-items:center;justify-content:center;
  width:2.75rem;height:2.75rem;border-radius:.5rem;flex-shrink:0;
  border:1px solid var(--border);background:var(--surface);cursor:pointer;color:var(--fg);
}
.nav-panel{display:none;}

@media (max-width:900px){
  .nav-links{display:none;}
  .nav-locale{display:none;}
  .nav-cta{display:none;}
  .nav-toggle{display:inline-flex;}
  .nav-bar{justify-content:space-between;}
  .nav-panel{
    display:block;margin-top:.5rem;padding:.75rem;
    background:rgba(26,23,20,.96);backdrop-filter:blur(20px);
    border:1px solid var(--border);border-radius:1rem;
    box-shadow:0 8px 32px rgba(0,0,0,.4);
    max-height:0;overflow:hidden;opacity:0;visibility:hidden;
    transition:max-height .3s ease,opacity .2s ease,visibility .2s;
  }
  .nav-panel.open{max-height:380px;opacity:1;visibility:visible;}
  .nav-panel a{display:block;padding:.75rem .75rem;font-size:.9375rem;border-radius:.5rem;color:var(--fg);}
  .nav-panel a:hover{background:var(--accent-soft);}
  .nav-panel .btn{width:100%;margin-top:.5rem;}
}

/* --------------------------------------------------------------------------
   Hero
   -------------------------------------------------------------------------- */
.hero{
  position:relative;min-height:100vh;width:100%;
  display:flex;align-items:center;justify-content:center;
  padding:7rem 0 3rem;overflow:hidden;
}
@media (min-width:640px){ .hero{padding:8rem 0 4rem;} }
.hero-media{
  position:absolute;inset:0;z-index:0;
  background:linear-gradient(180deg,#1A1714 0%,#1F1815 45%,#241815 100%);
}
.hero-media img{
  width:100%;height:100%;object-fit:cover;object-position:70% 20%;
  filter:saturate(.85) brightness(.75);
}
@media (min-width:1024px){ .hero-media img{object-position:75% 25%;} }
.hero-veil{
  position:absolute;inset:0;z-index:1;
  background:
    radial-gradient(60% 55% at 50% 42%,rgba(26,23,20,.25),rgba(26,23,20,.82) 72%),
    linear-gradient(180deg,rgba(26,23,20,.65) 0%,rgba(26,23,20,.15) 40%,rgba(26,23,20,.6) 100%);
}
.hero-inner{position:relative;z-index:2;text-align:center;width:100%;}

.ig-card{
  display:inline-flex;align-items:center;gap:.875rem;
  padding:.75rem 1rem;margin-bottom:2rem;text-align:left;
  background:rgba(36,31,27,.9);
  backdrop-filter:blur(20px) saturate(140%);
  border:1px solid var(--border);border-radius:1.25rem;
  box-shadow:inset 0 1px 1px rgba(247,227,224,.06),0 8px 32px rgba(0,0,0,.35),0 2px 8px rgba(0,0,0,.2);
}
.ig-avatar{
  width:64px;height:64px;border-radius:50%;flex-shrink:0;padding:2.5px;
  background:conic-gradient(from 0deg,#833ab4,#c13584,#e1306c,#fd1d1d,#f77737,#fcaf45,#833ab4);
}
.ig-avatar span{
  display:flex;align-items:center;justify-content:center;
  width:100%;height:100%;border-radius:50%;
  background:var(--accent-soft);color:var(--deep);
  font-weight:800;font-size:1.125rem;letter-spacing:-.02em;
}
.ig-avatar img{
  width:100%;height:100%;border-radius:50%;object-fit:cover;
  border:2px solid #fff;
}
.ig-name{display:flex;align-items:center;gap:.25rem;font-size:1rem;font-weight:600;letter-spacing:-.01em;}
.ig-name svg{flex-shrink:0;}
.ig-followers{font-size:.75rem;color:var(--muted);margin-top:.125rem;}
.ig-quote{font-size:.75rem;color:var(--muted-2);font-style:italic;margin-top:.25rem;}
.ig-follow{
  display:inline-flex;align-items:center;padding:.375rem 1rem;border-radius:.5rem;
  background:#0095f6;color:#fff;font-size:.75rem;font-weight:600;border:none;
  box-shadow:0 2px 8px rgba(0,149,246,.35);margin-left:.5rem;flex-shrink:0;
}
@media (max-width:520px){ .ig-quote{display:none;} .ig-avatar{width:48px;height:48px;} }

.hero-eyebrow{
  font-size:.875rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--muted-2);margin-bottom:.75rem;
}
@media (min-width:640px){ .hero-eyebrow{font-size:1rem;margin-bottom:1rem;} }

.display{font-family:var(--font-bodoni);font-weight:400;letter-spacing:-.01em;line-height:1.1;color:var(--fg);}
.display span{display:block;font-size:2.75rem;}
.display span + span{margin-top:.25rem;}
@media (min-width:640px){ .display span{font-size:3.25rem;} .display span + span{margin-top:.5rem;} }
@media (min-width:768px){ .display span{font-size:4rem;} }
@media (min-width:1280px){ .display span{font-size:5rem;} }

.hero-sub{
  font-size:1rem;line-height:1.625;font-weight:500;color:var(--muted-2);
  max-width:42rem;margin:1.5rem auto 0;
}
@media (min-width:640px){ .hero-sub{font-size:1.125rem;} }
@media (min-width:768px){ .hero-sub{font-size:1.25rem;} }
.hero-sub .hl{color:var(--primary);font-weight:600;}

.hero-ctas{
  display:flex;align-items:center;justify-content:center;gap:1rem;
  flex-wrap:wrap;margin-top:2rem;
}
.scroll-hint{
  display:flex;flex-direction:column;align-items:center;
  margin-top:3rem;color:var(--muted);
}
.scroll-hint span{font-size:.625rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;}
.scroll-hint svg{width:1.25rem;height:1.25rem;margin-top:.5rem;animation:gentle-bob 2.5s ease-in-out infinite;}
@keyframes gentle-bob{0%,100%{transform:translateY(0);}50%{transform:translateY(4px);}}

/* --------------------------------------------------------------------------
   Curved section joints
   -------------------------------------------------------------------------- */
.wave{position:absolute;left:0;right:0;width:100%;height:4rem;z-index:1;}
@media (min-width:640px){ .wave{height:6rem;} }
@media (min-width:1024px){ .wave{height:8rem;} }
.wave-top{top:0;transform:translateY(-99%);}
.wave-bottom{bottom:0;transform:translateY(99%) scaleY(-1);}
.wave-bottom-in{bottom:0;transform:translateY(99%);}

/* --------------------------------------------------------------------------
   Services ("offer") arena
   -------------------------------------------------------------------------- */
.offer-band{
  position:relative;
  background:linear-gradient(180deg,#241815,#2E1D19 40%,#241815 70%,#2E1D19);
}
.offer-band .container{position:relative;z-index:2;padding-top:5rem;padding-bottom:5rem;}
.offer{
  position:relative;
  margin-top:-5rem;
  background:linear-gradient(180deg,#241815,#2E1D19 40%,#241815 70%,#2E1D19);
}
@media (min-width:640px){ .offer{margin-top:-6rem;} }
@media (min-width:1024px){ .offer{margin-top:-8rem;} }
.offer .container{position:relative;z-index:2;padding-top:5rem;padding-bottom:5rem;}
@media (min-width:1024px){ .offer .container{padding-top:7rem;padding-bottom:7rem;} }

.offer-grid{
  display:grid;grid-template-columns:repeat(6,1fr);gap:1.25rem;
}
.offer-grid .o1{grid-column:1 / span 4;grid-row:1 / span 2;}
.offer-grid .o2{grid-column:5 / span 2;grid-row:1;}
.offer-grid .o3{grid-column:5 / span 2;grid-row:2;}
.offer-grid .o4{grid-column:1 / span 3;grid-row:3;}
.offer-grid .o5{grid-column:4 / span 3;grid-row:3;}
@media (max-width:900px){
  .offer-grid{grid-template-columns:1fr;}
  .offer-grid > *{grid-column:1 !important;grid-row:auto !important;}
}

.offer-card,.offer-card-dark{
  border-radius:1.25rem;overflow:hidden;position:relative;
  display:flex;flex-direction:column;
  transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
}
.offer-card{
  background:linear-gradient(135deg,rgba(46,40,35,.98),rgba(40,34,30,.97) 50%,rgba(46,38,36,.96));
  border:1px solid var(--border);
  box-shadow:inset 0 1px 1px rgba(247,227,224,.05),0 8px 32px rgba(0,0,0,.3),0 2px 8px rgba(0,0,0,.15);
}
.offer-card-dark{
  background:linear-gradient(135deg,rgba(58,30,32,.98),rgba(44,20,24,.96) 50%,rgba(36,16,15,.95));
  border:1px solid rgba(201,138,147,.25);
  box-shadow:inset 0 1px 2px rgba(217,168,164,.1),0 8px 32px rgba(0,0,0,.35),0 2px 8px rgba(0,0,0,.2);
  color:var(--fg);
}
.offer-card:hover{
  transform:translateY(-4px);border-color:rgba(201,138,147,.45);
  box-shadow:inset 0 1px 1px rgba(247,227,224,.08),0 16px 48px rgba(183,110,121,.2),0 8px 24px rgba(0,0,0,.2);
}
.offer-card-dark:hover{
  transform:translateY(-4px);border-color:rgba(217,168,164,.45);
  box-shadow:inset 0 1px 2px rgba(217,168,164,.15),0 16px 48px rgba(58,30,32,.4),0 8px 24px rgba(0,0,0,.2);
}
.offer-card:hover .offer-emoji,.offer-card-dark:hover .offer-emoji{transform:scale(1.15);}
.offer-card:hover .offer-underline,.offer-card-dark:hover .offer-underline{transform:scaleX(1);}

/* macOS window chrome */
.win-bar{
  display:flex;align-items:center;gap:.4375rem;padding:.75rem 1rem;
  border-bottom:1px solid var(--border);background:rgba(0,0,0,.15);
}
.offer-card-dark .win-bar{background:rgba(0,0,0,.25);border-bottom-color:rgba(247,227,224,.08);}
.win-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;}
.win-dot.r{background:#ff5f57;} .win-dot.y{background:#ffbd2e;} .win-dot.g{background:#28c840;}
.win-title{
  margin-left:.5rem;font-size:12px;font-weight:500;color:var(--muted);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.offer-card-dark .win-title{color:rgba(247,227,224,.55);}

.offer-body{padding:1.5rem 1.5rem 1.75rem;display:flex;flex-direction:column;flex:1;}
.o1 .offer-body{padding:2.5rem 2.25rem 2.75rem;justify-content:center;}
.offer-head{display:flex;align-items:center;gap:1rem;}
.offer-emoji{font-size:1.875rem;line-height:1;transition:transform .3s cubic-bezier(.34,1.56,.64,1);}
.o1 .offer-emoji{font-size:3.75rem;}
.offer-head h3{font-size:1.25rem;font-weight:600;letter-spacing:-.01em;line-height:1.4;color:var(--fg);}
.o1 .offer-head h3{font-size:2.25rem;}
.offer-underline{
  display:block;height:2px;margin-top:.5rem;border-radius:2px;
  background:linear-gradient(90deg,var(--primary),rgba(201,138,147,0));
  transform:scaleX(0);transform-origin:left;transition:transform .35s ease;
}
.o1 .offer-underline{margin-top:.75rem;}
.offer-body p{margin-top:1rem;font-size:.875rem;line-height:1.65;color:var(--muted);}
.o1 .offer-body p{margin-top:2rem;font-size:1.125rem;}
.offer-card-dark .offer-body p{color:rgba(247,227,224,.7);}

/* Wine summary card */
.offer-summary{
  max-width:44rem;margin:3rem auto 0;padding:2.5rem 2rem;text-align:center;
  border-radius:1.5rem;color:var(--fg);position:relative;overflow:hidden;
  background:linear-gradient(135deg,rgba(58,30,32,.99),rgba(44,20,24,.97) 50%,rgba(36,16,15,.96));
  box-shadow:0 30px 60px rgba(0,0,0,.4),0 15px 30px rgba(0,0,0,.2),inset 0 1px 2px rgba(217,168,164,.1);
}
.offer-summary h3{
  font-family:var(--font-bodoni);font-weight:400;
  font-size:1.5rem;line-height:1.25;letter-spacing:-.02em;color:var(--fg);
}
@media (min-width:640px){ .offer-summary h3{font-size:1.875rem;} }
@media (min-width:1024px){ .offer-summary h3{font-size:2.25rem;} }
.offer-summary > p{
  font-size:1rem;color:rgba(247,227,224,.75);margin:.75rem auto 0;max-width:36rem;
}
.offer-summary .btn{margin-top:1.75rem;}
.offer-summary .foot{margin-top:.75rem;font-size:.75rem;color:rgba(247,227,224,.5);}

/* --------------------------------------------------------------------------
   Process
   -------------------------------------------------------------------------- */
.process{position:relative;background:var(--bg);}
.process-grid{
  position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;
  margin-top:3rem;
}
.process-line{
  position:absolute;top:44px;left:6%;right:6%;height:1px;
  background:linear-gradient(90deg,rgba(201,138,147,0),rgba(201,138,147,.4) 15%,rgba(201,138,147,.4) 85%,rgba(201,138,147,0));
}
@media (max-width:760px){
  .process-grid{grid-template-columns:1fr;gap:2.5rem;}
  .process-line{display:none;}
}
.process-step{text-align:center;position:relative;}
.process-circle{
  width:88px;height:88px;border-radius:50%;margin:0 auto;
  display:flex;align-items:center;justify-content:center;
  background:radial-gradient(circle at 50% 45%,var(--surface-2) 0 46%,rgba(46,40,35,.95) 47%,rgba(58,42,44,.55) 100%);
  box-shadow:0 8px 24px rgba(0,0,0,.3),inset 0 0 0 1px rgba(201,138,147,.18);
  position:relative;z-index:2;
}
.process-circle svg{width:1.75rem;height:1.75rem;color:var(--primary);transition:transform .3s cubic-bezier(.34,1.56,.64,1);}
.process-circle:hover svg{transform:scale(1.1);}
.process-num{
  width:26px;height:26px;border-radius:50%;margin:.75rem auto 1rem;
  display:flex;align-items:center;justify-content:center;
  background:var(--accent-soft);border:1px solid rgba(201,138,147,.3);
  color:var(--primary);font-size:.875rem;font-weight:700;
  position:relative;z-index:2;
}
.process-step h3{font-size:1.125rem;font-weight:600;letter-spacing:-.01em;margin-bottom:.5rem;color:var(--fg);}
.process-step p{
  font-size:.875rem;line-height:1.65;color:var(--muted);
  max-width:20rem;margin:0 auto;
}

/* --------------------------------------------------------------------------
   Compare arena
   -------------------------------------------------------------------------- */
.compare{
  position:relative;overflow:hidden;
  background:linear-gradient(180deg,#241815,#2A1B18 30%,#2E1D19 55%,#241815);
}
.compare .container{position:relative;z-index:2;padding-top:5rem;padding-bottom:5rem;}
@media (min-width:1024px){ .compare .container{padding-top:7rem;padding-bottom:7rem;} }
.compare-sub{
  font-family:var(--font-bodoni);font-style:italic;font-size:1.125rem;
  letter-spacing:.02em;color:rgba(247,227,224,.7);margin-top:.75rem;
}
@media (min-width:640px){ .compare-sub{font-size:1.25rem;} }

.score{
  position:relative;display:flex;align-items:center;justify-content:center;gap:2.5rem;
  padding:2rem 1.5rem;margin:3rem 0 3.5rem;border-radius:1.5rem;
  background:rgba(46,40,35,.4);border:1px solid var(--border);
  backdrop-filter:blur(8px);
}
.score-brand{
  font-family:var(--font-bodoni);font-size:1.5rem;font-weight:400;
  color:rgba(247,227,224,.55);
}
.score-num{
  font-family:var(--font-bodoni);font-style:italic;font-weight:700;
  font-size:3rem;line-height:1;
  background:linear-gradient(135deg,#C98A93,#B76E79 40%,#D9A8A4 80%,#C98A93);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  padding-inline:.15em;margin-inline:-.15em;
}
@media (min-width:640px){ .score-num{font-size:3.75rem;} }
@media (min-width:1024px){ .score-num{font-size:4.5rem;} }
.score-dash{font-size:1.875rem;font-weight:300;color:rgba(247,227,224,.15);user-select:none;}
.score-zero{
  font-family:var(--font-bodoni);font-style:italic;font-weight:700;
  font-size:3rem;line-height:1;color:rgba(247,227,224,.12);
}
@media (min-width:640px){ .score-zero{font-size:3.75rem;} }
@media (min-width:1024px){ .score-zero{font-size:4.5rem;} }
.score-label{
  font-size:.75rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;
  color:rgba(247,227,224,.3);
}
.score-cap{
  position:absolute;bottom:-1.5rem;left:50%;transform:translateX(-50%);
  font-size:11px;font-weight:500;color:rgba(247,227,224,.5);white-space:nowrap;
}
@media (max-width:520px){ .score{gap:1.25rem;padding:1.5rem 1rem;} }

.battle-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1.25rem;}
.battle-grid > *{grid-column:span 2;}
.battle-grid > .wide{grid-column:span 3;}
@media (max-width:900px){
  .battle-grid{grid-template-columns:1fr;}
  .battle-grid > *,.battle-grid > .wide{grid-column:1;}
}
.battle-card{
  padding:1.25rem;border-radius:1.25rem;position:relative;
  background:linear-gradient(135deg,rgba(46,40,35,.98),rgba(40,34,30,.97) 50%,rgba(46,38,36,.96));
  border:1px solid var(--border);
  box-shadow:inset 0 1px 1px rgba(247,227,224,.05),0 8px 32px rgba(0,0,0,.3),0 2px 8px rgba(0,0,0,.15);
  transition:transform .35s cubic-bezier(.4,0,.2,1),box-shadow .35s ease,border-color .35s ease;
}
.battle-card:hover{
  transform:translateY(-4px);border-color:rgba(201,138,147,.45);
  box-shadow:inset 0 1px 1px rgba(247,227,224,.08),0 16px 48px rgba(183,110,121,.2),0 8px 24px rgba(0,0,0,.2);
}
.battle-head{display:flex;align-items:center;gap:.625rem;margin-bottom:1rem;}
.battle-head .ic{
  width:1.75rem;height:1.75rem;border-radius:.5rem;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;font-size:.875rem;
  background:var(--accent-soft);
}
.battle-head h3{font-size:.9375rem;font-weight:600;color:var(--fg);}
.battle-us{
  display:flex;gap:.625rem;padding:.75rem;border-radius:.75rem;margin-bottom:.75rem;
  background:linear-gradient(135deg,rgba(201,138,147,.14),rgba(201,138,147,.06));
  border:1px solid rgba(201,138,147,.18);
}
.battle-us svg{width:1rem;height:1rem;color:var(--primary);flex-shrink:0;margin-top:.125rem;}
.battle-tag{
  display:block;font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;
  color:var(--primary);margin-bottom:.25rem;
}
.battle-us p{font-size:.9375rem;line-height:1.6;font-weight:500;color:var(--fg);}
.battle-them{display:flex;gap:.625rem;padding:0 .75rem;}
.battle-them .dash{color:rgba(247,227,224,.2);font-size:.75rem;font-weight:500;margin-top:.125rem;flex-shrink:0;}
.battle-them .battle-tag{color:var(--muted);font-size:9px;font-weight:500;}
.battle-them p{font-size:.75rem;line-height:1.6;color:var(--muted);}
.compare-cta{margin:3rem auto 0;display:flex;justify-content:center;}
.compare-cta .btn{animation:compare-glow 2.5s ease-in-out infinite;}
@keyframes compare-glow{
  0%,100%{box-shadow:0 4px 16px rgba(183,110,121,.3),0 0 40px rgba(183,110,121,.12);}
  50%{box-shadow:0 8px 32px rgba(183,110,121,.45),0 0 60px rgba(183,110,121,.22),0 0 80px rgba(201,138,147,.12);}
}
.compare .cta-note{color:var(--muted);}

/* --------------------------------------------------------------------------
   Results
   -------------------------------------------------------------------------- */
.results{
  position:relative;
  background:linear-gradient(180deg,#241815,#1D1815 80px,#1A1714 150px,#1A1714 280px);
}
.results .container{position:relative;z-index:2;padding-top:5rem;padding-bottom:4rem;}

.case-card{
  max-width:56rem;margin:3rem auto 0;border-radius:1.5rem;overflow:hidden;
  background:var(--surface);border:1px solid var(--border);
  box-shadow:0 30px 60px rgba(0,0,0,.35),0 15px 30px rgba(0,0,0,.2);
}
.case-media{
  position:relative;aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(140deg,#B76E79,#5C2D33);cursor:pointer;
}
.case-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.case-media .case-play,.case-media .case-badge,.case-media .case-hint{position:relative;z-index:2;}
.case-media .case-badge{position:absolute;}
.case-media .case-hint{position:absolute;}
.case-play{
  width:72px;height:72px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:rgba(247,227,224,.92);box-shadow:0 8px 24px rgba(0,0,0,.35);
}
.case-play svg{width:2rem;height:2rem;color:#5C2D33;margin-left:.25rem;}
.case-badge{
  position:absolute;top:1rem;left:1rem;padding:.3125rem .625rem;border-radius:100px;
  background:rgba(0,0,0,.45);color:var(--fg);
  font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
}
.case-hint{
  position:absolute;bottom:1rem;left:0;right:0;text-align:center;
  color:rgba(247,227,224,.9);font-size:.8125rem;font-weight:600;
}
.case-foot{padding:1.25rem 1.5rem 1.5rem;}
.case-stats{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;}
.case-from{font-size:1.875rem;font-weight:700;color:var(--zinc-400);text-decoration:line-through;}
.case-arrow{color:var(--primary);display:flex;}
.case-to{
  font-size:1.875rem;font-weight:800;
  background:linear-gradient(to right,#C98A93,#B76E79);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.case-meta{margin-left:auto;font-size:.75rem;font-weight:500;color:var(--zinc-400);}
.case-title{font-size:1.25rem;font-weight:700;color:var(--zinc-900);margin-top:.75rem;}

/* Fanned testimonial deck */
.fan{
  position:relative;height:645px;margin-top:3rem;
  display:flex;align-items:center;justify-content:center;
}
.fan-card{
  position:absolute;width:321px;height:509px;border-radius:24px;overflow:hidden;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;
  background:linear-gradient(160deg,#2E2622,#241D1A);
  border:1px solid var(--border);
  box-shadow:0 20px 45px rgba(0,0,0,.4);
  transition:transform .45s cubic-bezier(.4,0,.2,1),opacity .45s ease,filter .45s ease;
}
.fan-card img,.fan-card video{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  z-index:1;user-select:none;pointer-events:none;background:#e8e0e3;
}
.fan-card.playing .slot-play,.fan-card.playing .fan-caption{opacity:0;transition:opacity .25s ease;}
.fan-card .slot-play{
  position:relative;z-index:3;
  width:64px;height:64px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:rgba(0,0,0,.35);backdrop-filter:blur(2px);color:#fff;
  box-shadow:0 6px 18px rgba(0,0,0,.25);
}
.fan-card .slot-play svg{width:1.75rem;height:1.75rem;margin-left:.125rem;filter:drop-shadow(0 1px 3px rgba(0,0,0,.4));}
.fan-caption{
  position:absolute;left:0;right:0;bottom:0;z-index:2;
  padding:2.5rem 1rem 1rem;text-align:center;
  background:linear-gradient(180deg,transparent,rgba(0,0,0,.65));
}
.fan-caption .quote{font-size:.875rem;font-weight:500;line-height:1.5;color:rgba(255,255,255,.9);}
.fan-caption .who{font-size:.875rem;font-weight:500;color:#fff;margin-top:.5rem;}
.fan-caption .who span{margin-left:.5rem;opacity:.7;}
.fan-card.p0 .fan-caption .quote{font-size:.9375rem;}
.fan-card.p0{width:363px;height:645px;transform:none;z-index:5;opacity:1;}
.fan-card.p1{transform:translateX(366px) rotate(6deg);z-index:4;opacity:.75;filter:grayscale(.4);}
.fan-card.p2{transform:translateX(711px) rotate(11deg) scale(.92);z-index:3;opacity:.45;filter:grayscale(.7);}
.fan-card.pm1{transform:translateX(-366px) rotate(-6deg);z-index:4;opacity:.75;filter:grayscale(.4);}
.fan-card.pm2{transform:translateX(-711px) rotate(-11deg) scale(.92);z-index:3;opacity:.45;filter:grayscale(.7);}
@media (max-width:1100px){
  .fan-card.p2,.fan-card.pm2{opacity:0;}
  .fan-card.p1{transform:translateX(300px) rotate(6deg) scale(.9);}
  .fan-card.pm1{transform:translateX(-300px) rotate(-6deg) scale(.9);}
}
@media (max-width:760px){
  .fan{height:470px;}
  .fan-card{width:240px;height:380px;}
  .fan-card.p0{width:265px;height:470px;}
  .fan-card.p1,.fan-card.pm1{opacity:0;}
}
.fan-nav{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.5rem;}
.fan-btn{
  width:2.875rem;height:2.875rem;border-radius:50%;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  background:var(--surface);border:1px solid rgba(201,138,147,.25);
  color:var(--primary);backdrop-filter:blur(4px);transition:all .2s ease;
}
.fan-btn:hover{background:var(--surface-2);border-color:rgba(201,138,147,.45);}
.fan-btn svg{width:1.25rem;height:1.25rem;}
.fan-count{
  min-width:220px;text-align:center;font-size:1rem;font-weight:500;
  color:var(--muted);
}
.results-link{
  display:inline-flex;align-items:center;gap:.375rem;margin-top:1.5rem;
  font-size:.875rem;color:var(--muted-2);
}
.results-link span{text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(247,227,224,.25);}
.results-link:hover span{text-decoration-color:var(--primary);}

/* --------------------------------------------------------------------------
   Pricing
   -------------------------------------------------------------------------- */
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;align-items:start;}
@media (max-width:900px){ .pricing-grid{grid-template-columns:1fr;} }
.price-card{
  position:relative;padding:1.75rem;border-radius:1rem;background:var(--surface);
  border:1px solid var(--border);
  box-shadow:0 10px 30px rgba(0,0,0,.25);
  transition:box-shadow .3s ease;
}
.price-card:hover{box-shadow:0 25px 50px -12px rgba(0,0,0,.4);}
.price-card.featured{
  border-color:rgba(201,138,147,.5);
  box-shadow:0 20px 45px -12px rgba(183,110,121,.3);
}
.price-card.featured:hover{box-shadow:0 25px 50px -12px rgba(183,110,121,.4),0 0 0 2px rgba(201,138,147,.5);}
.badge-popular{
  position:absolute;top:-.75rem;right:1.5rem;z-index:10;
  padding:.375rem 1rem;border-radius:100px;color:var(--on-primary);
  font-size:.75rem;font-weight:600;
  background:linear-gradient(90deg,#C98A93,#B76E79);
}
.price-card h3{font-family:var(--font-bodoni);font-weight:400;font-size:1.25rem;color:var(--fg);}
.price-split{
  font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;
  color:var(--zinc-400);display:flex;align-items:center;gap:.5rem;margin:1.25rem 0 .5rem;
}
.price-split::after{content:"";flex:1;height:1px;background:var(--border);}
.price-list{list-style:none;display:flex;flex-direction:column;gap:.5rem;}
.price-list li{display:flex;gap:.5rem;font-size:.875rem;color:var(--zinc-600);line-height:1.45;}
.price-list li svg{width:1rem;height:1rem;color:var(--pink-500);flex-shrink:0;margin-top:.125rem;}
.price-list.you li::before{content:"•";color:var(--zinc-400);}

.cta-panel{
  margin-top:3rem;padding:2.5rem 2rem;border-radius:1.5rem;text-align:center;color:var(--fg);
  background:linear-gradient(135deg,rgba(58,30,32,.99),rgba(44,20,24,.97) 50%,rgba(36,16,15,.96));
  box-shadow:0 30px 60px rgba(0,0,0,.4),0 15px 30px rgba(0,0,0,.2);
}
.cta-panel .top{font-size:1rem;color:rgba(217,168,164,.7);margin-bottom:.5rem;}
.cta-panel .mid{font-size:1rem;font-weight:500;color:var(--fg);margin-bottom:1.5rem;}
.cta-panel .foot{margin-top:1rem;font-size:.875rem;color:rgba(217,168,164,.7);}

/* --------------------------------------------------------------------------
   FAQ
   -------------------------------------------------------------------------- */
.faq-head{text-align:left;margin-bottom:2rem;}
.faq-head .lead{margin-left:0;text-align:left;}
.faq-list{display:flex;flex-direction:column;}
.faq-item{border-bottom:1px solid var(--border);}
.faq-item summary{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:1.25rem .5rem;cursor:pointer;list-style:none;
  font-size:1rem;font-weight:500;color:var(--fg);
}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary svg{
  width:1.25rem;height:1.25rem;flex-shrink:0;color:var(--pink-500);
  transition:transform .3s ease;
}
.faq-item[open] summary svg{transform:rotate(180deg);}
.faq-body{padding:0 .5rem 1.5rem;}
.faq-body .means{font-size:.75rem;font-weight:500;color:var(--primary);margin-bottom:.25rem;}
.faq-body .answer-lead{font-size:.875rem;font-weight:500;color:var(--fg);margin-bottom:.5rem;}
.faq-body p:last-child{font-size:.875rem;line-height:1.6;color:var(--muted-2);opacity:.9;}

/* --------------------------------------------------------------------------
   Fit
   -------------------------------------------------------------------------- */
.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;max-width:56rem;margin:0 auto;}
@media (max-width:760px){ .fit-grid{grid-template-columns:1fr;} }
.fit-card{padding:1.5rem;border-radius:1rem;border:1px solid var(--border);}
.fit-card.yes{background:linear-gradient(135deg,rgba(58,42,44,.9),rgba(46,38,36,.7));border-color:rgba(201,138,147,.25);}
.fit-card.no{background:rgba(0,0,0,.15);}
.fit-head{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;}
.fit-head h3{font-size:.875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);}
.fit-card.no .fit-head h3{color:var(--muted);}
.fit-card ul{list-style:none;display:flex;flex-direction:column;gap:.625rem;}
.fit-card li{display:flex;align-items:flex-start;gap:.625rem;font-size:.875rem;line-height:1.6;}
.fit-card.yes li{color:var(--fg);}
.fit-card.no li{color:var(--muted);}
.fit-card li svg{flex-shrink:0;margin-top:.3125rem;}

/* --------------------------------------------------------------------------
   Calculator
   -------------------------------------------------------------------------- */
.calc{
  max-width:1088px;margin:0 auto;border-radius:1rem;overflow:hidden;
  background:linear-gradient(135deg,rgba(46,40,35,.98),rgba(36,31,27,.96));
  border:1px solid var(--border);
  box-shadow:0 8px 32px rgba(0,0,0,.3),0 2px 8px rgba(0,0,0,.15);
}
.calc-body{padding:1.25rem 1.5rem 1rem;}
@media (min-width:640px){ .calc-body{padding:1.5rem 2rem 1.25rem;} }
.calc-body > .intro{font-size:1rem;color:var(--muted-2);margin-top:.25rem;}
.calc-body > .note{font-size:.75rem;color:var(--muted);margin-top:.25rem;}
.calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1rem;}
@media (max-width:860px){ .calc-grid{grid-template-columns:1fr;} }
.calc-controls h3{font-size:1rem;font-weight:500;margin-bottom:.625rem;color:var(--fg);}
.calc-controls h3:not(:first-child){margin-top:1.25rem;}
.seg{
  display:inline-flex;gap:3px;padding:4px;border-radius:9999px;background:var(--bg);
  box-shadow:inset 0 0 0 1px var(--border),0 1px 2px rgba(0,0,0,.15);
}
.seg-btn{
  padding:.375rem 1rem;border-radius:9999px;font-size:.875rem;cursor:pointer;
  background:transparent;color:var(--fg);border:none;
  transition:background .2s ease,color .2s ease;
}
.seg-btn.active{background:var(--primary);color:var(--on-primary);}
.calc-socials{display:none;align-items:center;margin-top:.75rem;}
.calc-socials.active{display:flex;}
.calc-socials span{
  width:48px;height:48px;border-radius:50%;overflow:hidden;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;background:var(--surface-2);
  box-shadow:0 0 0 2px var(--bg),0 2px 6px rgba(0,0,0,.3);
}
.calc-socials span + span{margin-left:-5px;}
.calc-socials img{width:100%;height:100%;object-fit:cover;}
.calc-socials .badge-18{
  display:flex;align-items:center;justify-content:center;
  font-size:.6875rem;font-weight:800;color:var(--fg);background:var(--surface-2);
}
.calc-out{display:block;font-size:1rem;font-weight:600;margin-bottom:.5rem;color:var(--fg);}
.range-input{
  -webkit-appearance:none;appearance:none;width:100%;height:20px;
  background:transparent;cursor:pointer;
}
.range-input:focus{outline:none;}
.range-input::-webkit-slider-runnable-track{
  height:8px;border-radius:9999px;
  background:linear-gradient(90deg,var(--primary),var(--accent));
  background-repeat:no-repeat;background-size:var(--fill,0) 100%;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.2);
}
.range-input::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;width:20px;height:20px;margin-top:-6px;
  border-radius:9999px;background:var(--surface);border:1px solid var(--primary);
  box-shadow:0 2px 6px rgba(0,0,0,.3),0 0 0 6px rgba(201,138,147,.15);
}
.range-input::-moz-range-track{
  height:8px;border-radius:9999px;background:rgba(0,0,0,.25);
}
.range-input::-moz-range-progress{height:8px;border-radius:9999px;background:var(--primary);}
.range-input::-moz-range-thumb{
  width:20px;height:20px;border-radius:9999px;background:var(--surface);border:1px solid var(--primary);
  box-shadow:0 2px 6px rgba(0,0,0,.3),0 0 0 6px rgba(201,138,147,.15);
}
.range-ends{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-top:.375rem;}
.calc-result{
  border-radius:1rem;border:1px solid var(--border);
  background:linear-gradient(135deg,rgba(36,31,27,.9),rgba(30,26,23,.75));
  display:flex;align-items:center;justify-content:center;padding:2rem;height:444px;
}
.calc-result-inner{text-align:center;width:100%;}
.calc-blur{font-size:.875rem;color:var(--muted-2);filter:blur(16px);margin-bottom:1rem;}
.calc-ghost{
  font-size:4.5rem;font-weight:600;color:var(--primary);filter:blur(14px);margin-bottom:1.5rem;
}
.calc-res-label{font-size:.875rem;color:var(--muted-2);}
.calc-res-num{
  font-size:3.25rem;font-weight:600;color:var(--primary);line-height:1.1;
  margin:.5rem 0 1rem;font-variant-numeric:tabular-nums;letter-spacing:-.02em;
}
@media (min-width:768px){ .calc-res-num{font-size:4.5rem;} }
.calc-res-sub{font-size:.8125rem;line-height:1.6;color:var(--muted);margin-bottom:1.25rem;}
.calc-disclaimer{
  text-align:center;font-size:.75rem;color:var(--muted);margin-top:1.5rem;
}

/* --------------------------------------------------------------------------
   Final close + application form
   -------------------------------------------------------------------------- */
.final-close{
  position:relative;margin-top:3rem;padding:5rem 0 6rem;
  background:linear-gradient(180deg,#3A1E20,#2C1418 40%,#24100F 70%,#2C1418);
  border-radius:50%/48px;
}
.final-close .container{position:relative;z-index:2;}
.final-close .lead{color:rgba(247,227,224,.75);max-width:36rem;margin:1rem auto 0;}
.apply-card{
  max-width:40rem;margin:2.5rem auto 0;padding:1.5rem;border-radius:1rem;
  background:linear-gradient(145deg,rgba(46,40,35,.92) 0%,rgba(36,31,27,.85) 100%);
  backdrop-filter:blur(8px);
  border:1px solid var(--border);
  box-shadow:0 30px 60px rgba(0,0,0,.4);
}
@media (min-width:640px){ .apply-card{padding:2rem;} }
.field{margin-bottom:1.25rem;}
.field > label,.field > .label{
  display:block;font-size:.875rem;font-weight:500;color:var(--muted-2);margin-bottom:.375rem;
}
.field input,.field select{
  width:100%;border-radius:.75rem;border:1px solid var(--border);background:var(--bg);
  padding:.75rem 1rem;font-size:.875rem;color:var(--fg);font-family:inherit;
}
.field input::placeholder{color:var(--muted);}
.field input:focus,.field select:focus{
  outline:none;border-color:rgba(201,138,147,.5);
  box-shadow:0 0 0 2px rgba(201,138,147,.3);
}
.pill-group{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;}
@media (max-width:560px){ .pill-group{grid-template-columns:1fr;} }
.pill{
  border-radius:.75rem;border:1px solid var(--border);background:var(--bg);
  padding:.625rem .75rem;font-size:.875rem;font-weight:500;color:var(--muted-2);
  cursor:pointer;transition:all .15s ease;
}
.pill:hover{border-color:var(--primary);}
.pill.selected{
  background:var(--primary);border-color:var(--primary);color:var(--on-primary);
  box-shadow:0 4px 12px rgba(183,110,121,.35);
}
.phone-row{display:flex;gap:.5rem;}
.phone-row select{width:auto;flex-shrink:0;}
.apply-foot{margin-top:.75rem;text-align:center;font-size:.75rem;color:var(--muted);}
.apply-success{text-align:center;padding:1.5rem 0;}
.success-icon{
  width:3.5rem;height:3.5rem;border-radius:50%;margin:0 auto 1rem;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(180deg,#C98A93,#B76E79);color:var(--on-primary);font-size:1.5rem;font-weight:800;
}
.apply-success h3{font-size:1.5rem;font-weight:700;margin-bottom:.5rem;color:var(--fg);}
.apply-success p{font-size:.9375rem;color:var(--muted-2);line-height:1.6;}

/* --------------------------------------------------------------------------
   Playbooks
   -------------------------------------------------------------------------- */
.pb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;}
@media (max-width:900px){ .pb-grid{grid-template-columns:1fr;} }
.pb-card{
  display:flex;flex-direction:column;border-radius:1rem;overflow:hidden;background:var(--surface);
  border:1px solid var(--border);box-shadow:0 8px 24px rgba(0,0,0,.25);
  transition:transform .3s ease,box-shadow .3s ease;
}
.pb-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px -10px rgba(183,110,121,.3);}
.pb-art{
  height:202px;position:relative;overflow:hidden;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;
}
.pb-art img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .5s ease;
}
.pb-card:hover .pb-art img{transform:scale(1.05);}
.pb-art-1{background:radial-gradient(circle at 50% 40%,rgba(168,85,247,.18),transparent 62%),#241F1B;}
.pb-art-2{background:radial-gradient(circle at 50% 40%,rgba(201,138,147,.22),transparent 62%),#241F1B;}
.pb-art-3{background:radial-gradient(circle at 50% 40%,rgba(56,189,248,.16),transparent 62%),#241F1B;}
.pb-glyph{
  width:66px;height:66px;border-radius:1rem;font-size:2rem;
  display:flex;align-items:center;justify-content:center;
  background:rgba(46,40,35,.75);box-shadow:0 8px 20px rgba(0,0,0,.25);
}
.pb-cap{font-size:.8125rem;color:var(--muted);font-style:italic;}
.pb-body{padding:1.25rem;display:flex;flex-direction:column;flex:1;}
.pb-tag{
  font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;
  color:var(--pink-500);margin-bottom:.5rem;
}
.pb-body h3{font-size:1.125rem;font-weight:700;color:var(--zinc-900);margin-bottom:.5rem;line-height:1.35;}
.pb-body > p{font-size:.875rem;line-height:1.6;color:var(--zinc-600);flex:1;}
.pb-link{
  display:flex;align-items:center;gap:.375rem;margin-top:1rem;padding-top:.75rem;
  border-top:1px solid var(--border);color:var(--pink-500);font-size:.875rem;font-weight:600;
}
.pb-link svg{width:1rem;height:1rem;transition:transform .2s ease;}
.pb-card:hover .pb-link svg{transform:translateX(2px);}

/* --------------------------------------------------------------------------
   Footer
   -------------------------------------------------------------------------- */
.site-footer{margin-top:3rem;border-top:1px solid var(--border);padding:3rem 0 2rem;}
.footer-top{text-align:center;margin-bottom:2.5rem;}
.footer-logo{font-family:var(--font-bodoni);font-size:1.75rem;font-weight:400;letter-spacing:.15em;margin-bottom:.5rem;color:var(--primary);}
.footer-top p{font-size:.875rem;line-height:1.6;color:var(--muted);max-width:28rem;margin:0 auto;}
.footer-cols{
  display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;
  max-width:48rem;margin:0 auto 2rem;text-align:left;
}
@media (max-width:640px){ .footer-cols{grid-template-columns:1fr 1fr;} }
.footer-col h3{
  font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;
  color:var(--muted);margin-bottom:.75rem;
}
.footer-col a,.footer-col button{
  display:block;font-size:14px;color:var(--muted-2);margin-bottom:.5rem;
  background:none;border:none;padding:0;cursor:pointer;text-align:left;font-family:inherit;
  transition:transform .15s ease,color .15s ease;
}
.footer-col a:hover,.footer-col button:hover{color:var(--fg);transform:translateX(2px);}
.footer-col a.accent{
  font-weight:700;
  background:linear-gradient(to right,#C98A93,#B76E79);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.footer-bottom{display:flex;flex-direction:column;align-items:center;gap:1rem;}
.back-top{
  width:2.25rem;height:2.25rem;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  border:1px solid var(--border);color:var(--muted);
}
.back-top:hover{border-color:var(--primary);color:var(--primary);}
.footer-socials{display:flex;gap:1rem;color:var(--muted);}
.footer-socials svg{width:1rem;height:1rem;}
.footer-socials a:hover{color:var(--primary);}
.footer-note{
  font-size:11px;color:var(--deep);opacity:.85;text-align:center;
  max-width:40rem;margin:0 auto;line-height:1.5;font-style:italic;
}
.footer-copy{font-size:11px;color:rgba(110,113,128,.5);}
.footer-disclaimer{
  font-size:10.5px;color:rgba(110,113,128,.45);text-align:center;
  max-width:44rem;margin:0 auto;line-height:1.55;
}

/* --------------------------------------------------------------------------
   Reveal on scroll — only armed once JS is running, so the page is never
   left invisible if the observer does not fire.
   -------------------------------------------------------------------------- */
.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease;}
.js .reveal.in{opacity:1;transform:none;}

@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;}
  .js .reveal{opacity:1;transform:none;}
}

/* --------------------------------------------------------------------------
   Waiting-list modal
   -------------------------------------------------------------------------- */
.modal-overlay{
  position:fixed;inset:0;z-index:200;display:none;
  align-items:flex-start;justify-content:center;padding:2.5rem 1rem;overflow-y:auto;
  background:rgba(10,8,7,.65);backdrop-filter:blur(5px);
}
.modal-overlay.open{display:flex;}
.modal-card{
  position:relative;width:100%;max-width:30rem;padding:2.25rem 2rem;
  background:var(--surface);border:1px solid var(--border);border-radius:1.25rem;text-align:center;
  box-shadow:0 30px 80px rgba(0,0,0,.5);
}
.modal-close{
  position:absolute;top:1rem;right:1rem;width:2rem;height:2rem;border-radius:50%;
  border:1px solid rgba(247,227,224,.15);background:transparent;color:rgba(247,227,224,.6);
  cursor:pointer;font-size:.875rem;
}
.modal-close:hover{color:var(--fg);border-color:var(--primary);}
.modal-card h2{font-size:1.75rem;font-weight:700;letter-spacing:-.02em;margin-bottom:.5rem;color:var(--fg);}
.modal-sub{font-size:.875rem;line-height:1.6;color:rgba(247,227,224,.65);max-width:22rem;margin:0 auto 1.5rem;}
.modal-card .field{text-align:left;}

/* ==========================================================================
   Results page (mirrors b9-agency.com/results)
   ========================================================================== */
.page-hero{
  position:relative;min-height:90vh;display:flex;align-items:center;
  padding:8rem 0 4rem;overflow:hidden;
  background:
    radial-gradient(60% 45% at 20% 25%,rgba(183,110,121,.25),transparent 70%),
    radial-gradient(50% 40% at 85% 40%,rgba(201,138,147,.2),transparent 72%),
    linear-gradient(180deg,#1F1815,#1A1714 70%);
}
@media (min-width:1024px){ .page-hero{min-height:100vh;} }
.page-hero .container{position:relative;z-index:2;}
.results-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:3rem;align-items:center;}
@media (max-width:980px){ .results-hero-grid{grid-template-columns:1fr;} }

.badge-pill{
  display:inline-flex;align-items:center;gap:.5rem;padding:.4rem 1rem;border-radius:100px;
  color:#fff;font-size:.875rem;font-weight:600;margin-bottom:1.5rem;
  background:linear-gradient(135deg,rgba(183,110,121,.9),rgba(201,138,147,.92) 40%,rgba(217,168,164,.88));
  box-shadow:0 4px 16px rgba(201,138,147,.3);
}
.results-display{font-family:var(--font-bodoni);font-weight:800;line-height:1.05;letter-spacing:-.01em;}
.results-display .big{display:block;font-size:3rem;}
.results-display .small{display:block;font-size:2rem;font-weight:700;margin-top:.5rem;padding-bottom:.25rem;}
@media (min-width:640px){ .results-display .big{font-size:3.75rem;} .results-display .small{font-size:2.5rem;} }
@media (min-width:1280px){ .results-display .big{font-size:5.5rem;} .results-display .small{font-size:3.25rem;} }
.hero-rule{width:56px;height:3px;border-radius:3px;background:linear-gradient(90deg,#C98A93,#B76E79);margin:1.5rem 0;}
.results-lead{font-size:1.125rem;line-height:1.7;color:rgba(247,227,224,.75);max-width:36rem;}
.results-lead .hl{color:var(--primary);font-weight:600;}

.stat-row{display:flex;gap:.75rem;flex-wrap:wrap;margin:2rem 0;}
.stat-card{
  flex:1 1 0;min-width:7rem;
  padding:.875rem 1rem;border-radius:1rem;background:rgba(46,40,35,.9);
  border:1px solid rgba(201,138,147,.18);
  box-shadow:0 8px 24px rgba(201,138,147,.1);text-align:center;
}
.stat-card .num{display:block;font-size:1.875rem;font-weight:700;color:var(--magenta);line-height:1.2;}
.stat-card .lbl{font-size:.875rem;font-weight:500;color:rgba(247,227,224,.6);}

.proof-card{
  padding:1.5rem;border-radius:1.5rem;
  background:linear-gradient(135deg,rgba(46,40,35,.97),rgba(36,31,27,.95));
  border:1px solid rgba(201,138,147,.2);
  box-shadow:0 30px 60px rgba(0,0,0,.35),0 10px 20px rgba(0,0,0,.2);
}
.proof-head{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;}
.proof-head img{width:50px;height:50px;border-radius:50%;object-fit:cover;border:2px solid rgba(201,138,147,.3);}
.proof-head .who{font-size:.875rem;font-weight:700;}
.proof-badge{
  display:inline-block;margin-top:.25rem;padding:.25rem .625rem;border-radius:100px;
  font-size:.7rem;font-weight:600;color:var(--magenta);
  background:linear-gradient(135deg,rgba(201,138,147,.15),rgba(217,168,164,.1));
}
.proof-quote{
  font-family:var(--font-bodoni);font-style:italic;font-size:1.5rem;line-height:1.5;
  color:rgba(247,227,224,.9);margin:1rem 0 1.25rem;
}
.proof-stats{display:flex;align-items:center;gap:.75rem;padding-top:1rem;border-top:1px solid rgba(247,227,224,.08);}
.proof-before{font-size:1.1rem;font-weight:700;color:var(--muted);}
.proof-after{
  font-size:1.35rem;font-weight:800;
  background:linear-gradient(135deg,#C98A93,#B76E79);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.proof-verified{margin-left:auto;font-size:.75rem;font-weight:500;color:rgba(247,227,224,.4);}

.creator-nav{margin-top:1.5rem;}
.creator-nav .lbl{
  font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(247,227,224,.4);margin-bottom:.75rem;
}
.creator-nav ul{list-style:none;display:flex;flex-direction:column;gap:.25rem;}
.creator-nav li{
  display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;border-radius:.75rem;
}
.creator-nav li.active{background:rgba(58,42,44,.55);box-shadow:inset 0 0 0 1px rgba(201,138,147,.2);}
.creator-nav img{width:36px;height:36px;border-radius:50%;object-fit:cover;}
.creator-nav .nm{font-size:.75rem;font-weight:600;}
.creator-nav .mt{display:block;font-size:.625rem;color:rgba(247,227,224,.5);}

.screens-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;}
@media (max-width:900px){ .screens-grid{grid-template-columns:1fr 1fr;} }
@media (max-width:600px){ .screens-grid{grid-template-columns:1fr;} }
.screen-card{
  height:440px;display:flex;flex-direction:column;padding:.75rem 0;
  border-radius:1rem;overflow:hidden;position:relative;
  background:linear-gradient(135deg,rgba(46,40,35,.9),rgba(36,31,27,.85));
  border:1px solid rgba(201,138,147,.15);
  box-shadow:0 15px 35px rgba(0,0,0,.3),0 5px 15px rgba(0,0,0,.15);
  transition:box-shadow .3s ease,transform .3s ease;
}
.screen-card:hover{transform:translateY(-3px);box-shadow:0 25px 50px rgba(201,138,147,.2);}
.screen-shot{position:relative;height:320px;margin:0 .75rem;border-radius:.75rem;overflow:hidden;background:#211C18;}
.screen-shot img{width:100%;height:100%;object-fit:cover;object-position:top;}
.verified-badge{
  position:relative;margin:0 .75rem .5rem;align-self:flex-start;z-index:2;
  display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:100px;
  background:rgba(46,40,35,.85);color:var(--magenta);
  font-size:.625rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
  box-shadow:0 2px 8px rgba(0,0,0,.1);
}
.blur-badge{
  position:absolute;right:.75rem;bottom:.75rem;z-index:2;
  font-size:9px;font-weight:500;color:rgba(255,255,255,.85);
  background:rgba(0,0,0,.35);padding:.125rem .375rem;border-radius:.25rem;
}
.screen-foot{padding:.875rem 1rem 1rem;}
.screen-foot .out{
  font-size:.875rem;font-weight:700;
  background:linear-gradient(90deg,#C98A93,#B76E79);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.screen-foot .sub{font-size:.75rem;color:var(--zinc-600);}
.screen-foot .who{font-size:10px;color:var(--zinc-400);margin-top:.125rem;}

.deep{
  padding:2rem;border-radius:1.5rem;margin-top:2.5rem;
  background:linear-gradient(135deg,rgba(46,40,35,.97),rgba(36,31,27,.95));
  border:1px solid rgba(201,138,147,.15);
  box-shadow:0 20px 45px rgba(0,0,0,.3);
}
.deep-head{display:flex;align-items:flex-start;gap:1rem;}
.deep-head img{width:56px;height:56px;border-radius:.75rem;object-fit:cover;flex-shrink:0;}
.deep-head h3{font-size:1.5rem;font-weight:700;color:var(--zinc-900);}
.deep-head h3 .gain{
  background:linear-gradient(90deg,#C98A93,#B76E79);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.deep-head p{font-size:.9375rem;color:var(--zinc-600);margin-top:.25rem;max-width:38rem;}
.deep-metrics{
  display:flex;gap:2rem;flex-wrap:wrap;margin:1.25rem 0 .75rem;padding:1rem 1.25rem;
  border-radius:1rem;background:linear-gradient(135deg,rgba(58,42,44,.55),rgba(46,38,36,.7));
}
.deep-metrics .m .v{
  font-size:1.5rem;font-weight:700;
  background:linear-gradient(90deg,#C98A93,#B76E79);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.deep-metrics .m .k{font-size:.8125rem;color:var(--zinc-500,#B8ADA6);margin-left:.375rem;}
.deep-note{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--zinc-500,#B8ADA6);}
.deep-block{margin-top:2rem;}
.deep-block h4{
  font-size:1.125rem;font-weight:600;color:var(--zinc-900);
  display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;
}
.deep-block h4 .hd-icons{display:inline-flex;align-items:center;gap:.375rem;}
.deep-block h4 .hd-icons img{width:16px;height:16px;border-radius:50%;object-fit:cover;}
.deep-block > p{font-size:.875rem;color:var(--zinc-600);margin-top:.25rem;}
.deep-shots{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem;}
@media (max-width:860px){ .deep-shots{grid-template-columns:1fr;} }
.deep-shot{
  border-radius:1rem;overflow:hidden;background:var(--surface);
  border:1px solid rgba(201,138,147,.15);box-shadow:0 10px 24px rgba(0,0,0,.06);
}
.deep-shot .cap{
  display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;
  font-size:.8125rem;font-weight:600;color:var(--zinc-900);
  border-bottom:1px solid rgba(247,227,224,.06);
}
.deep-shot .cap .cap-badge{
  width:18px;height:18px;border-radius:50%;object-fit:cover;flex-shrink:0;
  box-shadow:0 0 0 1px rgba(247,227,224,.08);
}
.deep-shot img{width:100%;height:527px;object-fit:cover;object-position:top;}
.deep-single img{height:600px;}
.deep-pair img{height:598px;}
.deep-pair-tall img{height:814px;}
.deep-shot ul{list-style:none;padding:.875rem;display:flex;flex-direction:column;gap:.375rem;}
.deep-shot li{display:flex;gap:.5rem;font-size:.8125rem;color:var(--zinc-600);}
.deep-shot li::before{content:"•";color:var(--primary);}
.deep-shot .foot{padding:0 .875rem .875rem;font-size:.75rem;font-style:italic;color:var(--zinc-500,#B8ADA6);}
.deep-single{max-width:28rem;margin:1rem auto 0;}
.deep-why{
  margin-top:1.5rem;padding:1.25rem;border-radius:1rem;
  background:rgba(46,38,36,.8);border:1px solid rgba(201,138,147,.15);
}
.deep-why h4{margin-bottom:.625rem;}
.deep-why ul{list-style:none;display:flex;flex-direction:column;gap:.375rem;}
.deep-why li{display:flex;gap:.5rem;font-size:.875rem;color:var(--zinc-600);}
.deep-why li::before{content:"›";color:var(--primary);}
.lever-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem;}
@media (max-width:860px){ .lever-grid{grid-template-columns:1fr;} }
.lever{
  padding:1rem;border-radius:1rem;background:var(--surface);
  border:1px solid rgba(201,138,147,.18);box-shadow:0 8px 20px rgba(201,138,147,.08);
}
.lever-head{display:flex;align-items:center;gap:.625rem;margin-bottom:.75rem;}
.lever-head .ic{
  width:2rem;height:2rem;border-radius:.625rem;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;background:var(--accent-soft);
}
.lever-head .t{font-size:.875rem;font-weight:600;color:var(--zinc-900);}
.lever-head .d{display:block;font-size:.6875rem;color:var(--zinc-400);}
.lever ul{list-style:none;display:flex;flex-direction:column;gap:.25rem;}
.lever li{display:flex;gap:.5rem;font-size:.8125rem;color:var(--zinc-600);}
.lever li::before{content:"•";color:var(--primary);}
.deep-story{
  margin-top:1.5rem;padding:1.25rem;border-radius:1rem;
  background:var(--surface);border:1px solid rgba(247,227,224,.08);
}
.deep-story h4{margin-bottom:.625rem;}
.deep-story p{font-size:.875rem;line-height:1.7;color:var(--zinc-600);margin-bottom:.75rem;}

/* ==========================================================================
   Resources page (mirrors b9-agency.com/resources)
   ========================================================================== */
.res-hero{padding:9rem 0 3rem;text-align:center;background:linear-gradient(180deg,#1F1815,#1A1714 60%);}
.res-hero .hero-rule{margin:0 auto 1.25rem;}
.res-hero h1{font-size:2.25rem;font-weight:700;letter-spacing:-.025em;}
@media (min-width:640px){ .res-hero h1{font-size:3rem;} }
.res-hero p{font-size:1rem;color:rgba(247,227,224,.6);max-width:34rem;margin:1rem auto 0;line-height:1.6;}

.res-card.res-featured{
  display:grid;grid-template-columns:1fr 1fr;gap:0;overflow:hidden;border-radius:1.25rem;
  background:var(--surface);border:1px solid rgba(247,227,224,.08);
  box-shadow:0 20px 45px rgba(201,138,147,.15);
}
@media (max-width:860px){ .res-card.res-featured{grid-template-columns:1fr;} }
.res-featured img{width:100%;height:100%;min-height:220px;max-height:22rem;object-fit:cover;}
.res-featured .body{padding:2rem;display:flex;flex-direction:column;justify-content:center;}
.res-tags{display:flex;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap;}
.res-tag{
  padding:.25rem .625rem;border-radius:100px;background:var(--accent-soft);
  color:var(--pink-500);font-size:.625rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
}
.res-tag.soon{background:rgba(247,227,224,.06);color:rgba(247,227,224,.4);}
.res-featured h2{font-size:1.5rem;font-weight:700;color:var(--zinc-900);margin-bottom:.625rem;}
.res-featured p{font-size:.875rem;line-height:1.65;color:var(--zinc-600);}
.res-meta{font-size:.6875rem;color:var(--zinc-400);margin-top:1rem;}
.res-link{
  display:inline-flex;align-items:center;gap:.375rem;margin-top:.75rem;
  color:var(--pink-500);font-size:.875rem;font-weight:600;
}
.res-link svg{width:1rem;height:1rem;transition:transform .2s ease;}
.res-card:hover .res-link svg{transform:translateX(2px);}

.res-divider{
  display:flex;align-items:center;gap:1rem;margin:3rem 0 1.5rem;
  font-size:.6875rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(247,227,224,.3);
}
.res-divider::before,.res-divider::after{content:"";flex:1;height:1px;background:rgba(247,227,224,.1);}

.res-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;}
@media (max-width:860px){ .res-grid{grid-template-columns:1fr;} }
.res-card{
  display:flex;flex-direction:column;border-radius:1.25rem;overflow:hidden;background:var(--surface);
  border:1px solid rgba(247,227,224,.08);box-shadow:0 10px 30px rgba(0,0,0,.05);
  transition:transform .3s ease,box-shadow .3s ease;
}
.res-card:hover{transform:translateY(-4px);box-shadow:0 25px 50px rgba(201,138,147,.18);}
.res-cover{position:relative;aspect-ratio:1062/592;overflow:hidden;background:#211C18;}
.res-cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.res-card:hover .res-cover img{transform:scale(1.04);}
.res-card.locked .res-cover img{filter:grayscale(.75) brightness(.95);}
.res-lock{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
}
.res-lock span{
  width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:rgba(46,40,35,.75);color:rgba(247,227,224,.55);box-shadow:0 6px 18px rgba(0,0,0,.12);
}
.res-body{padding:1.25rem;display:flex;flex-direction:column;flex:1;}
.res-body h3{font-size:1.0625rem;font-weight:700;color:var(--zinc-900);margin:.25rem 0 .5rem;}
.res-body > p{font-size:.8125rem;line-height:1.6;color:var(--zinc-600);flex:1;}
.res-foot{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  margin-top:1rem;padding-top:.75rem;border-top:1px solid rgba(247,227,224,.08);
}
.res-soon{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--zinc-400);}

/* ==========================================================================
   Blog index (mirrors b9-agency.com/blog)
   ========================================================================== */
.blog-search{position:relative;max-width:28rem;margin:2rem auto 1.5rem;}
.blog-search input{
  width:100%;height:2.75rem;border-radius:.75rem;padding:0 1rem 0 2.5rem;
  border:1px solid rgba(247,227,224,.1);background:var(--surface);font-family:inherit;font-size:.875rem;
  box-shadow:0 4px 14px rgba(0,0,0,.04);
}
.blog-search input:focus{outline:none;border-color:rgba(201,138,147,.5);box-shadow:0 0 0 3px rgba(201,138,147,.15);}
.blog-search svg{
  position:absolute;left:.875rem;top:50%;transform:translateY(-50%);
  width:1rem;height:1rem;color:rgba(247,227,224,.3);
}
.blog-cats{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:1rem;}
.blog-cat-btn{
  padding:.4rem 1rem;border-radius:100px;cursor:pointer;font-size:.8125rem;font-weight:500;
  background:var(--accent-soft);color:rgba(247,227,224,.7);border:1px solid rgba(201,138,147,.15);
  transition:all .2s ease;
}
.blog-cat-btn:hover{border-color:rgba(201,138,147,.4);}
.blog-cat-btn.active{
  background:linear-gradient(135deg,#C98A93,#B76E79);color:#fff;border-color:transparent;
  box-shadow:0 4px 14px rgba(201,138,147,.35);
}
.blog-featured-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem;}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;}
@media (max-width:1000px){ .blog-grid{grid-template-columns:1fr 1fr;} }
@media (max-width:700px){ .blog-grid,.blog-featured-grid{grid-template-columns:1fr;} }
.blog-card{
  display:flex;flex-direction:column;border-radius:1.25rem;overflow:hidden;background:var(--surface);
  border:1px solid rgba(247,227,224,.08);box-shadow:0 10px 30px rgba(0,0,0,.05);
  transition:transform .3s ease,box-shadow .3s ease;
}
.blog-card:hover{transform:translateY(-4px);box-shadow:0 22px 45px rgba(201,138,147,.18);}
.blog-card.hidden{display:none;}
.blog-cover{display:block;aspect-ratio:600/334;overflow:hidden;background:#211C18;}
.blog-cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.blog-card:hover .blog-cover img{transform:scale(1.04);}
.blog-body{padding:1.25rem;display:flex;flex-direction:column;flex:1;}
.blog-cat{
  align-self:flex-start;padding:.25rem .625rem;border-radius:100px;margin-bottom:.625rem;
  background:var(--accent-soft);color:var(--pink-500);
  font-size:.625rem;font-weight:700;letter-spacing:.04em;
}
.blog-body h3{font-size:1rem;font-weight:700;color:var(--zinc-900);line-height:1.35;margin-bottom:.5rem;}
.blog-card.featured .blog-body h3{font-size:1.375rem;}
.blog-body p{font-size:.8125rem;line-height:1.6;color:var(--zinc-600);flex:1;}
.blog-foot{margin-top:1rem;padding-top:.75rem;border-top:1px solid rgba(247,227,224,.08);}
.blog-link{
  display:inline-flex;align-items:center;gap:.375rem;
  color:var(--pink-500);font-size:.8125rem;font-weight:600;
}
.blog-link svg{width:.875rem;height:.875rem;transition:transform .2s ease;}
.blog-card:hover .blog-link svg{transform:translateX(2px);}
.blog-empty{text-align:center;color:var(--zinc-500,#B8ADA6);font-size:.9375rem;padding:3rem 0;}

/* ==========================================================================
   Apply page (mirrors b9-agency.com/apply)
   ========================================================================== */
.apply-hero{padding:9rem 0 2rem;text-align:center;background:linear-gradient(180deg,#1F1815,#1A1714 65%);}
.apply-hero .hero-rule{margin:0 auto 1.5rem;}
.apply-hero h1{
  font-family:var(--font-bodoni);font-weight:800;letter-spacing:-.01em;line-height:1.1;
  font-size:2.5rem;
}
@media (min-width:768px){ .apply-hero h1{font-size:3.75rem;} }
.apply-hero > .container > p{font-size:1.125rem;color:var(--zinc-600);margin-top:1rem;}

.apply-form-card{
  max-width:34rem;margin:2rem auto 0;padding:1.75rem;border-radius:1.25rem;background:var(--surface);
  border:1px solid rgba(247,227,224,.08);box-shadow:0 25px 50px rgba(201,138,147,.15);
}
.apply-privacy{
  max-width:34rem;margin:1.25rem auto 0;text-align:center;
  font-size:.75rem;line-height:1.6;color:var(--zinc-400);
}
.apply-privacy a{color:var(--primary);}

/* Results hero: the proof card cycles through creators, driven by the list below. */
.proof-stack{position:relative;}
.proof-stack .proof-card{display:none;}
.proof-stack .proof-card.active{display:block;animation:proof-in .45s ease both;}
@keyframes proof-in{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}
.creator-nav li{cursor:pointer;transition:background .2s ease,box-shadow .2s ease;}
.creator-nav li:hover{background:rgba(58,42,44,.4);}

/* Deep dives: the single and before/after screenshots carry a floating badge
   over the image (the 3-column social shots keep a header bar instead). */
.deep-single,.deep-pair{position:relative;}
.deep-single .cap,.deep-pair .cap{
  position:absolute;top:.75rem;left:.75rem;z-index:2;display:flex;align-items:center;gap:.375rem;
  padding:.375rem .75rem;border-radius:100px;border:none;
  background:rgba(20,16,15,.72);color:#fff;font-size:.75rem;font-weight:600;
  backdrop-filter:blur(4px);
}
.deep-single .cap::before,.deep-pair .cap::before{
  content:"";width:8px;height:8px;border-radius:50%;background:#4ade80;flex-shrink:0;
}
.deep-single .foot,.deep-pair .foot{padding-top:.5rem;}

/* Calculator: keep the same vertical rhythm between control groups as the reference. */
#priceBlock{margin-top:1.25rem;}
.calc-controls .seg + .calc-out{margin-top:1rem;}

/* ==========================================================================
   Design tokens declared by the reference site (--b9-*, spacing, radii,
   shadows, transitions). Kept under their original names so the logic of the
   original design survives; the older aliases above still resolve to them.
   ========================================================================== */
:root{
  --b9-bg:#1A1714;
  --b9-fg:#F7E3E0;
  --b9-muted:#B8ADA6;
  --b9-border:#2E2823;
  --b9-primary:#C98A93;
  --b9-on-primary:#2C1418;
  --b9-accent:#B76E79;
  --b9-accent-soft:#3A2A2C;
  --color-success:#28c840;
  --color-warning:#ffbd2e;
  --color-error:#ff5f57;
  --color-info:#38bdf8;

  --space-xs:.25rem; --space-sm:.5rem; --space-md:1rem; --space-lg:1.5rem;
  --space-xl:2rem; --space-2xl:3rem; --space-3xl:4rem; --space-4xl:6rem;
  --section-padding-sm:4rem; --section-padding-md:6rem; --section-padding-lg:8rem;

  --text-xs:.75rem; --text-sm:.875rem; --text-base:1rem; --text-lg:1.125rem;
  --text-xl:1.25rem; --text-2xl:1.5rem; --text-3xl:1.875rem; --text-4xl:2.25rem;
  --text-5xl:3rem; --text-6xl:3.75rem;

  --leading-tight:1.25; --leading-snug:1.375; --leading-normal:1.5;
  --leading-relaxed:1.625; --leading-loose:2;

  --font-regular:400; --font-medium:500; --font-semibold:600;
  --font-bold:700; --font-extrabold:800;

  --radius-xs:.25rem; --radius-sm:.5rem; --radius-md:.75rem; --radius-lg:1rem;
  --radius-xl:1.25rem; --radius-2xl:1.5rem; --radius-full:9999px; --radius:1rem;

  --shadow-xs:0 1px 2px rgba(0,0,0,.05);
  --shadow-sm:0 1px 3px rgba(0,0,0,.1),0 1px 2px rgba(0,0,0,.06);
  --shadow-md:0 4px 6px rgba(0,0,0,.07),0 2px 4px rgba(0,0,0,.06);
  --shadow-lg:0 10px 15px rgba(0,0,0,.1),0 4px 6px rgba(0,0,0,.05);
  --shadow-xl:0 20px 25px rgba(0,0,0,.1),0 10px 10px rgba(0,0,0,.04);
  --shadow-2xl:0 25px 50px rgba(0,0,0,.15);
  --shadow-pink:0 10px 30px rgba(201,138,147,.2);
  --shadow-pink-lg:0 20px 40px rgba(201,138,147,.25);

  --transition-fast:150ms cubic-bezier(.4,0,.2,1);
  --transition-base:200ms cubic-bezier(.4,0,.2,1);
  --transition-slow:300ms cubic-bezier(.4,0,.2,1);
  --transition-smooth:400ms cubic-bezier(.4,0,.2,1);

  --z-dropdown:1000; --z-sticky:1020; --z-fixed:1030;
  --z-modal-backdrop:1040; --z-modal:1050; --z-popover:1060; --z-tooltip:1070;
}

/* Interactive states, taken from pages/*/code/etats-css.css (no screenshot
   can show these — the capture is the only source). */
:focus-visible{outline:2px solid var(--b9-primary);outline-offset:2px;}
:disabled{cursor:default;}
.btn-glass:hover{opacity:.95;filter:brightness(1.08);}
.btn-outline:hover{box-shadow:0 10px 28px rgba(201,138,147,.25);}
.nav-links a:hover{opacity:1;}
.res-card:hover,.pb-card:hover,.blog-card:hover{box-shadow:0 30px 60px rgba(201,138,147,.3),0 15px 30px rgba(0,0,0,.1);}
.footer-col a:hover,.footer-col button:hover{color:var(--b9-fg);}
.underline-hover{position:relative;}
.underline-hover::after{
  content:"";position:absolute;left:0;bottom:-2px;height:1px;width:0;
  background:currentColor;transition:width var(--transition-slow);
}
.underline-hover:hover::after{width:100%;}

/* ==========================================================================
   Standalone pages: growth audit, DMCA, referral, jobs, legal, calculator
   ========================================================================== */
.lp-hero{padding:9rem 0 3rem;text-align:center;background:linear-gradient(180deg,#1F1815,#1A1714 70%);}
.lp-badge{
  display:inline-block;margin-bottom:1.25rem;font-size:var(--text-sm);
  font-weight:var(--font-semibold);color:var(--deep);
}
.lp-hero h1{
  font-family:var(--font-bodoni);font-weight:var(--font-extrabold);
  font-size:2.75rem;line-height:1.05;letter-spacing:-.01em;
}
.lp-hero h1 span{display:block;}
@media (min-width:768px){ .lp-hero h1{font-size:4rem;} }
@media (min-width:1280px){ .lp-hero h1{font-size:4.5rem;} }
.lp-hero > .container > p{
  font-size:var(--text-xl);line-height:var(--leading-relaxed);
  color:var(--zinc-600);max-width:40rem;margin:1.25rem auto 0;
}
.lp-hero .btn{margin-top:1.75rem;}

.lp-band{
  padding:3.5rem 0;color:#fff;text-align:center;
  background:linear-gradient(180deg,#3A1E20,#2C1418 40%,#24100F 70%,#2C1418);
  border-radius:50%/36px;
}
.lp-band h2{font-size:var(--text-3xl);font-weight:var(--font-bold);}
.lp-band > .container > p{
  font-size:var(--text-lg);color:rgba(255,255,255,.8);
  max-width:42rem;margin:.75rem auto 0;line-height:var(--leading-relaxed);
}
.lp-steps{
  display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;
  max-width:64rem;margin:2.5rem auto 0;text-align:left;
}
@media (max-width:900px){ .lp-steps{grid-template-columns:1fr 1fr;} }
@media (max-width:560px){ .lp-steps{grid-template-columns:1fr;} }
.lp-step{
  padding:1.25rem;border-radius:var(--radius-lg);background:var(--surface);
  border:1px solid rgba(247,227,224,.08);box-shadow:var(--shadow-sm);color:var(--b9-fg);
}
.lp-step .ic{font-size:1.875rem;line-height:1;display:block;margin-bottom:.625rem;}
.lp-step h3{font-size:var(--text-base);font-weight:var(--font-bold);margin-bottom:.375rem;}
.lp-step p{font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--zinc-600);}

.lp-form-card{
  max-width:34rem;margin:2rem auto 0;padding:1.75rem;border-radius:var(--radius-xl);
  background:linear-gradient(135deg,rgba(58,30,32,.99),rgba(44,20,24,.97) 50%,rgba(36,16,15,.96));
  color:#fff;box-shadow:var(--shadow-2xl);
}
.lp-form-card .field > label,.lp-form-card .field > .label{color:rgba(255,255,255,.85);font-size:var(--text-xs);}
.lp-form-card .apply-foot{color:rgba(255,255,255,.55);}
.lp-form-card .hint{font-size:var(--text-xs);color:rgba(255,255,255,.5);margin-top:.25rem;}
.lp-check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;}
@media (max-width:560px){ .lp-check-grid{grid-template-columns:1fr 1fr;} }
.lp-check{
  display:flex;align-items:center;gap:.5rem;padding:.5rem .625rem;
  border-radius:var(--radius-md);background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.15);font-size:var(--text-xs);cursor:pointer;
}
.lp-check input{width:auto;margin:0;}

.lp-simple{max-width:40rem;margin:0 auto;}
.lp-simple h1{font-size:var(--text-4xl);font-weight:var(--font-bold);color:var(--zinc-900);}
.lp-simple > p{font-size:var(--text-base);color:var(--zinc-600);margin-top:.5rem;}
.lp-card{
  margin-top:1.5rem;padding:1.75rem;border-radius:var(--radius-xl);background:var(--surface);
  border:1px solid rgba(247,227,224,.08);box-shadow:var(--shadow-lg);
}
.lp-meta{display:flex;gap:1.25rem;justify-content:center;flex-wrap:wrap;margin-top:1rem;
  font-size:var(--text-xs);color:var(--zinc-500,#B8ADA6);}

/* Legal / prose pages */
.prose-page{padding:8rem 0 4rem;}
.prose{max-width:48rem;margin:0 auto;}
.prose h1{font-size:var(--text-5xl);font-weight:var(--font-extrabold);letter-spacing:-.02em;}
.prose > p.updated{color:var(--zinc-500,#B8ADA6);font-size:var(--text-sm);margin-top:.75rem;}
.prose h2{font-size:var(--text-2xl);font-weight:var(--font-bold);margin:2.5rem 0 .75rem;}
.prose h3{font-size:var(--text-lg);font-weight:var(--font-semibold);margin:1.75rem 0 .5rem;}
.prose p{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--zinc-600);margin-bottom:.875rem;}
.prose ul{margin:0 0 1rem 1.25rem;}
.prose li{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--zinc-600);margin-bottom:.375rem;}
.prose strong{color:var(--b9-fg);}
.prose a{color:var(--pink-500);text-decoration:underline;text-underline-offset:2px;}
.prose .note{
  padding:1rem 1.25rem;border-radius:var(--radius-md);background:var(--b9-accent-soft);
  border:1px solid rgba(201,138,147,.2);font-size:var(--text-sm);color:var(--zinc-600);
}

/* ==========================================================================
   Playbook / long-form course pages
   ========================================================================== */
.pb-hero{padding:8.5rem 0 3rem;text-align:center;background:linear-gradient(180deg,#1F1815,#1A1714 70%);}
.pb-hero .eyebrow-hand{
  font-size:var(--text-lg);color:var(--zinc-500,#B8ADA6);font-style:italic;margin-bottom:.75rem;
}
.pb-hero h1{
  font-family:var(--font-bodoni);font-size:2.25rem;font-weight:var(--font-bold);line-height:1.15;
}
@media (min-width:768px){ .pb-hero h1{font-size:3rem;} }
.pb-hero h1 .metallic{display:block;}
.pb-hero > .container > p{
  font-size:var(--text-base);line-height:var(--leading-relaxed);
  color:var(--zinc-600);max-width:42rem;margin:1rem auto 0;
}
.pb-facts{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap;margin-top:1.25rem;
  font-size:var(--text-sm);color:var(--zinc-500,#B8ADA6);}
.pb-facts span{display:inline-flex;align-items:center;gap:.375rem;}

.pb-body{max-width:46rem;margin:0 auto;}
.pb-chapter{
  margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(201,138,147,.2);
}
.pb-chapter > .num{
  display:inline-block;padding:.25rem .625rem;border-radius:var(--radius-full);
  background:var(--b9-accent-soft);color:var(--deep);
  font-size:var(--text-xs);font-weight:var(--font-bold);margin-bottom:.75rem;
}
.pb-chapter h2{
  font-family:var(--font-bodoni);font-size:1.875rem;font-weight:var(--font-bold);
  line-height:1.2;margin-bottom:.5rem;
}
.pb-chapter h3{font-size:var(--text-xl);font-weight:var(--font-semibold);margin:1.75rem 0 .5rem;}
.pb-body p{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--zinc-600);margin-bottom:1rem;}
.pb-body ul{margin:0 0 1rem 1.25rem;}
.pb-body li{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--zinc-600);margin-bottom:.375rem;}
.pb-stat{
  margin:1.25rem 0;padding:1rem 1.25rem;border-radius:var(--radius-lg);
  background:var(--b9-accent-soft);border:1px solid rgba(201,138,147,.18);
}
.pb-stat .v{
  display:block;font-size:var(--text-2xl);font-weight:var(--font-bold);
  background:linear-gradient(90deg,#C98A93,#B76E79);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.pb-stat p{margin:.25rem 0 0;font-size:var(--text-sm);color:var(--zinc-600);}
.pb-table-wrap{overflow-x:auto;margin:1.25rem 0;}
.pb-body table{width:100%;border-collapse:collapse;font-size:var(--text-sm);min-width:34rem;}
.pb-body th{
  text-align:left;padding:.625rem .75rem;font-weight:var(--font-bold);
  background:var(--b9-accent-soft);color:var(--b9-fg);border-bottom:1px solid rgba(201,138,147,.25);
}
.pb-body td{padding:.625rem .75rem;color:var(--zinc-600);border-bottom:1px solid rgba(247,227,224,.08);}
.pb-toc{
  margin-top:2rem;padding:1.25rem 1.5rem;border-radius:var(--radius-lg);
  background:var(--surface);border:1px solid rgba(247,227,224,.08);box-shadow:var(--shadow-sm);text-align:left;
}
.pb-toc h2{font-size:var(--text-sm);font-weight:var(--font-bold);letter-spacing:.1em;
  text-transform:uppercase;color:var(--zinc-500,#B8ADA6);margin-bottom:.75rem;}
.pb-toc ol{margin-left:1.25rem;}
.pb-toc li{font-size:var(--text-sm);color:var(--zinc-600);margin-bottom:.375rem;}
.pb-toc a:hover{color:var(--pink-500);}

/* Blog article pages */
.article-hero{padding:8rem 0 1.5rem;}
.article-hero .container{max-width:46rem;}
.article-back{
  display:inline-flex;align-items:center;gap:.375rem;font-size:var(--text-sm);
  color:var(--pink-500);font-weight:var(--font-semibold);margin-bottom:1.25rem;
}
.article-hero .blog-cat{margin-bottom:.75rem;}
.article-hero h1{
  font-size:2rem;font-weight:var(--font-extrabold);line-height:1.15;letter-spacing:-.02em;
}
@media (min-width:768px){ .article-hero h1{font-size:2.75rem;} }
.article-hero .standfirst{
  font-size:var(--text-lg);line-height:var(--leading-relaxed);
  color:var(--zinc-600);margin-top:1rem;
}
.article-cover{
  max-width:46rem;margin:1.5rem auto 0;border-radius:var(--radius-xl);overflow:hidden;
  box-shadow:var(--shadow-lg);
}
.article-cover img{width:100%;height:auto;display:block;}
.article-body{max-width:46rem;margin:0 auto;}
.article-body h2{font-size:var(--text-2xl);font-weight:var(--font-bold);margin:2.25rem 0 .75rem;}
.article-body h3{font-size:var(--text-lg);font-weight:var(--font-semibold);margin:1.5rem 0 .5rem;}
.article-body p{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--zinc-600);margin-bottom:1rem;}
.article-body ul{margin:0 0 1rem 1.25rem;}
.article-body li{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--zinc-600);margin-bottom:.375rem;}
.article-body table{width:100%;border-collapse:collapse;font-size:var(--text-sm);min-width:32rem;}
.article-body th{text-align:left;padding:.625rem .75rem;background:var(--b9-accent-soft);
  font-weight:var(--font-bold);border-bottom:1px solid rgba(201,138,147,.25);}
.article-body td{padding:.625rem .75rem;color:var(--zinc-600);border-bottom:1px solid rgba(247,227,224,.08);}

/* ==========================================================================
   Responsive, aligned on the reference breakpoints (640 / 768 / 1024 / 1280)
   instead of the values previously guessed.
   ========================================================================== */
@media (max-width:1023px){
  /* the nav collapses to a burger here, as on the original */
  .nav-links{display:none;}
  .nav-cta{display:none;}
  .nav-toggle{display:inline-flex;}
  .nav-locale{display:inline-flex;}       /* stays visible on mobile (page-mobile.png) */
  .nav-bar{justify-content:space-between;gap:.5rem;}
}
@media (max-width:639px){
  /* hero CTAs: full width, stacked — cf. page-mobile.png */
  .hero-ctas{flex-direction:column;align-items:stretch;gap:.75rem;}
  .hero-ctas .btn{width:100%;}
  .lp-hero .btn,.pb-hero .btn{width:100%;}
  .container{padding-left:1rem;padding-right:1rem;}
}

/* Resources hero: 60px/700 title and 20px lead, as measured on the reference. */
.res-hero h1{font-size:2.25rem;}
@media (min-width:640px){ .res-hero h1{font-size:3rem;} }
@media (min-width:1024px){ .res-hero h1{font-size:3.75rem;} }
.res-hero p{font-size:var(--text-xl);color:var(--zinc-600);}

/* ==========================================================================
   Referral page — its own hero language (badge pill, WhatsApp CTA, radial
   background blobs), reusing .process-* for the connected 4-step row.
   ========================================================================== */
.ref-hero{
  position:relative;padding:9rem 0 4rem;text-align:center;overflow:hidden;
  background:
    radial-gradient(38% 46% at 8% 8%,rgba(201,138,147,.16),transparent 70%),
    radial-gradient(38% 46% at 92% 8%,rgba(201,138,147,.16),transparent 70%),
    radial-gradient(30% 30% at 50% 55%,rgba(217,168,164,.18),transparent 75%),
    #1A1714;
}
.ref-hero .container{position:relative;z-index:1;max-width:64rem;}
.ref-badge{
  display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;
  border-radius:9999px;background:var(--b9-accent-soft);
  font-size:.875rem;font-weight:600;color:var(--deep);margin-bottom:1.5rem;
}
.ref-badge .dot{
  width:8px;height:8px;border-radius:50%;background:#25d366;flex-shrink:0;
  box-shadow:0 0 0 0 rgba(37,211,102,.6);animation:ref-pulse 1.8s ease-out infinite;
}
@keyframes ref-pulse{
  0%{box-shadow:0 0 0 0 rgba(37,211,102,.55);}
  70%{box-shadow:0 0 0 8px rgba(37,211,102,0);}
  100%{box-shadow:0 0 0 0 rgba(37,211,102,0);}
}
.ref-hero h1{
  font-family:var(--font-bodoni);font-weight:800;line-height:1.05;letter-spacing:-.01em;
  font-size:2.5rem;
}
@media (min-width:640px){ .ref-hero h1{font-size:3.75rem;} }
@media (min-width:1024px){ .ref-hero h1{font-size:4.5rem;} }
.ref-hero h1 span{display:block;}
.ref-hero .hero-rule{margin:1.25rem auto;}
.ref-hero > .container > p{
  font-size:1.25rem;color:var(--zinc-600);max-width:42rem;margin:0 auto;line-height:1.6;
}
.ref-cta-row{
  display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;margin-top:2rem;
}
.btn-whatsapp{
  display:inline-flex;align-items:center;gap:.625rem;padding:1rem 2rem;border-radius:9999px;
  background:linear-gradient(135deg,#25d366,#128c4a);color:#fff;font-weight:600;font-size:1.125rem;
  box-shadow:0 10px 28px rgba(37,211,102,.35);border:none;cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease;
}
.btn-whatsapp:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(37,211,102,.45);}
.btn-whatsapp svg{width:1.25rem;height:1.25rem;}
.btn-pill-white{
  display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;border-radius:9999px;
  background:var(--surface);color:var(--zinc-600);font-weight:500;font-size:1rem;
  border:1px solid rgba(247,227,224,.1);box-shadow:0 2px 10px rgba(0,0,0,.05);
  cursor:pointer;text-decoration:none;
}
.btn-pill-white:hover{box-shadow:0 6px 18px rgba(0,0,0,.08);}
.btn-pill-white svg{width:1rem;height:1rem;}

/* 2x2 offer-card grids used by the audit/DMCA "what you'll get" bands. */
.offer-grid-2{
  display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;
  max-width:52rem;margin:0 auto;
}
@media (max-width:640px){ .offer-grid-2{grid-template-columns:1fr;} }
.offer-grid-2 .offer-card{border-radius:1.25rem;}
.offer-grid-2 .offer-card h3{font-size:1rem;font-weight:700;color:var(--b9-fg);margin-bottom:.5rem;}
.offer-grid-2 .offer-card p{font-size:.875rem;line-height:1.6;color:var(--zinc-600);}
