/* latin-ext */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/figtree-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/figtree-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/figtree-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/figtree-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/figtree-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/figtree-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/figtree-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/figtree-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/fraunces-italic-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/fraunces-italic-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/assets/fonts/urbanist-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/assets/fonts/urbanist-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/urbanist-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/urbanist-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/urbanist-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/urbanist-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/urbanist-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/urbanist-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* ============ Lusty Legends: soft modern luxury ============
   Luminous light pink and white with warm cream, a modern sans, big rounded photos,
   gold kept to small details. Pink fills carry the brand; ink carries the text. */
:root{
  --pink-50:#FFF4F8;--pink-100:#FFE6EF;--pink-200:#FFD2E2;--pink-300:#FFB3CC;--pink-400:#FF8FB6;--pink-600:#C93D73;
  --cream:#FFF9F3;--white:#FFFFFF;
  --gold:#C7A15A;--gold-soft:#EBD9B4;--gold-ink:#8A6A2C;
  --ink:#24161C;--ink-2:#5C4651;--ink-3:#836B76;
  --line:rgba(36,22,28,0.08);
  --display:'Urbanist',system-ui,sans-serif;--sans:'Figtree',system-ui,sans-serif;
  --r-lg:32px;--r-md:22px;--r-sm:14px;
  --shadow:0 24px 60px -28px rgba(201,61,115,0.28);
  --ease:cubic-bezier(0.16,1,0.3,1);
  --pad-x:clamp(1.25rem,5vw,4rem);--sec-y:clamp(4.5rem,9vw,7.5rem);
  --head-h:84px;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--head-h) + 12px);-webkit-text-size-adjust:100%;text-size-adjust:100%;}
body{font-family:var(--sans);font-size:1rem;line-height:1.65;color:var(--ink-2);background:var(--white);overflow-x:hidden;}
img{display:block;max-width:100%;}
a{color:inherit;}
h1,h2,h3{font-family:var(--display);font-weight:600;color:var(--ink);text-wrap:balance;letter-spacing:-0.025em;}
::selection{background:var(--pink-200);color:var(--ink);}
:focus-visible{outline:2px solid var(--pink-600);outline-offset:3px;border-radius:8px;}
a,button,input,label{-webkit-tap-highlight-color:transparent;}
button{touch-action:manipulation;font:inherit;}
.ico{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;}
.inner{max-width:1200px;margin:0 auto;}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.55rem;min-height:54px;padding:0.9rem 1.75rem;border-radius:999px;font-family:var(--sans);font-size:0.98rem;font-weight:600;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:background 0.25s,color 0.25s,border-color 0.25s,transform 0.2s var(--ease),box-shadow 0.25s;}
.btn-action{background:var(--ink);color:var(--white);}
.btn-action:hover{background:#3A2530;transform:translateY(-1px);box-shadow:0 12px 26px -12px rgba(36,22,28,0.5);}
.btn-line{background:var(--white);color:var(--ink);border-color:rgba(36,22,28,0.14);}
.btn-line:hover{border-color:var(--ink);}
.btn-block{display:flex;width:100%;}
.btn:active{transform:scale(0.97);transition-duration:0.08s;}

/* ---------- Header ---------- */
.site-head{position:fixed;inset:0 0 auto;z-index:400;height:var(--head-h);display:flex;align-items:center;gap:2rem;padding:0 var(--pad-x);background:rgba(255,255,255,0.86);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:box-shadow 0.3s;}
.site-head.scrolled{box-shadow:0 1px 0 var(--line);}
/* Gold sparkle: the brand's one ornament, used as punctuation across the page. */
.spk{display:inline-block;width:var(--s,14px);height:var(--s,14px);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23C7A15A' d='M12 0c.7 6.4 2.6 8.7 9 9.6v.8c-6.4.9-8.3 3.2-9 9.6h-.1c-.7-6.4-2.6-8.7-9-9.6v-.8c6.4-.9 8.3-3.2 9-9.6z'/%3E%3C/svg%3E") center/contain no-repeat;pointer-events:none;}
@keyframes twinkle{0%,100%{opacity:1;transform:scale(1) rotate(0deg)}50%{opacity:0.35;transform:scale(0.6) rotate(45deg)}}

/* Logo: light spaced capitals over a sparkle flanked by fine gold rules. */
.logo{position:relative;display:inline-flex;flex-direction:column;align-items:center;gap:0.35rem;color:var(--ink);text-decoration:none;white-space:nowrap;}
.logo-word{font-family:var(--display);font-weight:300;font-size:1.45rem;letter-spacing:0.42em;text-transform:uppercase;line-height:1;margin-right:-0.42em;}
.logo-orn{display:flex;align-items:center;gap:0.55rem;width:100%;}
.logo-orn::before,.logo-orn::after{content:'';flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--gold));}
.logo-orn::after{background:linear-gradient(90deg,var(--gold),transparent);}
.spk-logo{--s:12px;transition:transform 0.7s var(--ease);}
.logo:hover .spk-logo{transform:rotate(90deg) scale(1.2);}
.logo-light{color:var(--white);}
.nav-links{display:flex;gap:2rem;margin-left:auto;}
.nav-links a{font-size:0.95rem;font-weight:500;color:var(--ink-2);text-decoration:none;padding:0.4rem 0;transition:color 0.2s;}
.nav-links a:hover{color:var(--pink-600);}
.lang-bar{display:flex;gap:0.2rem;padding:0.25rem;border-radius:999px;background:var(--pink-50);}
.lang-btn{background:none;border:none;cursor:pointer;font-size:0.78rem;font-weight:600;color:var(--ink-3);padding:0.4rem 0.6rem;border-radius:999px;transition:background 0.2s,color 0.2s;}
.lang-btn:hover{color:var(--ink);}
.lang-btn.active{background:var(--white);color:var(--ink);box-shadow:0 2px 8px -2px rgba(201,61,115,0.25);}
.head-cta{min-height:40px;padding:0.45rem 1.05rem;font-size:0.84rem;white-space:nowrap;}
.head-cta .lbl-short{display:none;}
.nav-hamburger{display:none;}
.mobile-menu{display:none;}
/* Language picker: tablet and phone only; the menu opens as a staircase, one language after another. */
.lang-pick{display:none;position:relative;}
.lang-toggle{display:flex;align-items:center;gap:0.35rem;min-height:40px;padding:0.4rem 0.75rem 0.4rem 0.6rem;border:none;border-radius:999px;background:var(--pink-50);color:var(--ink);font-size:0.8rem;font-weight:600;cursor:pointer;transition:background 0.2s;}
.lang-toggle .ico{width:17px;height:17px;color:var(--pink-600);transition:transform 0.5s var(--ease);}
.lang-toggle[aria-expanded="true"]{background:var(--pink-100);}
.lang-toggle[aria-expanded="true"] .ico{transform:rotate(-30deg);}
.lang-menu{position:absolute;top:calc(100% + 0.55rem);right:0;list-style:none;display:grid;gap:0.4rem;pointer-events:none;z-index:420;}
.lang-menu li{opacity:0;transform:translate(calc(var(--i) * -10px),-8px) scale(0.92);transform-origin:top right;transition:opacity 0.22s var(--ease),transform 0.35s var(--ease);transition-delay:calc((3 - var(--i)) * 30ms);}
.lang-pick.open .lang-menu{pointer-events:auto;}
.lang-pick.open .lang-menu li{opacity:1;transform:translateX(calc(var(--i) * -10px));transition-delay:calc(var(--i) * 70ms);}
.lang-menu button{display:flex;align-items:center;gap:0.6rem;min-height:44px;min-width:9.5rem;padding:0.5rem 1rem 0.5rem 0.55rem;border:none;border-radius:999px;background:var(--white);color:var(--ink-2);font-size:0.92rem;font-weight:500;cursor:pointer;box-shadow:0 12px 28px -14px rgba(201,61,115,0.55);white-space:nowrap;}
.lang-menu b{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--pink-50);font-size:0.74rem;color:var(--pink-600);}
.lang-menu button.active{color:var(--ink);font-weight:600;}
.lang-menu button.active b{background:var(--ink);color:var(--white);}

/* ---------- Hero ---------- */
.hero{position:relative;padding:calc(var(--head-h) + clamp(2rem,5vw,4rem)) var(--pad-x) clamp(3rem,6vw,5rem);background:linear-gradient(180deg,var(--pink-100) 0%,var(--pink-50) 55%,var(--white) 100%);overflow:hidden;}
.hero-in{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:center;}
.hero-h1{font-size:clamp(2.7rem,5.2vw,4.9rem);line-height:1.02;letter-spacing:-0.035em;margin-bottom:1.4rem;}
.hero-sub{font-size:1.15rem;line-height:1.65;color:var(--ink-2);max-width:32rem;margin-bottom:2.1rem;}
.hero-btns{display:flex;flex-wrap:wrap;gap:0.6rem;margin-bottom:1.8rem;}
.hero-btns .btn{min-height:48px;padding:0.75rem 1.45rem;font-size:0.94rem;}
.hero-trust{list-style:none;display:flex;flex-wrap:wrap;gap:0.5rem;}
.hero-trust li{display:flex;align-items:center;gap:0.45rem;font-size:0.9rem;font-weight:500;color:var(--ink-2);background:rgba(255,255,255,0.75);padding:0.45rem 0.85rem 0.45rem 0.6rem;border-radius:999px;}
.hero-trust .ico{color:var(--gold);width:16px;height:16px;}
.hero-visual{position:relative;height:clamp(460px,46vw,620px);}
.ph{position:absolute;margin:0;overflow:hidden;background:var(--pink-200);box-shadow:var(--shadow);}
.ph img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;transition:transform 1.2s var(--ease);}
.ph:hover img{transform:scale(1.04);}
/* Arch: elliptical top, softly rounded base (percent radii so the shape holds at every size). */
.ph-main{left:16%;top:0;width:58%;height:100%;border-radius:50% 50% 10% 10% / 30% 30% 6% 6%;}
.ph-a{left:0;top:8%;width:30%;aspect-ratio:3/4;border-radius:var(--r-md);border:6px solid var(--white);}
.ph-b{right:0;bottom:6%;width:34%;aspect-ratio:3/4;border-radius:var(--r-md);border:6px solid var(--white);}
.hero-stats{max-width:1200px;margin:clamp(2.5rem,5vw,4rem) auto 0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));background:var(--white);border-radius:var(--r-lg);box-shadow:0 20px 50px -30px rgba(201,61,115,0.35);padding:0.6rem;}
.hero-stats>div{display:flex;flex-direction:column;gap:0.25rem;padding:1.1rem 1.2rem;border-radius:var(--r-md);}
.hero-stats>div+div{box-shadow:-1px 0 0 var(--line);}
.hero-stats dd{font-family:var(--display);font-size:clamp(1.6rem,2.5vw,2.25rem);font-weight:700;color:var(--ink);letter-spacing:-0.03em;line-height:1;}
.hero-stats>div:first-child dd{color:var(--pink-600);}
.hero-stats dt{font-size:0.8rem;color:var(--ink-3);line-height:1.35;}

/* ---------- Sparkle placements ---------- */
.hero-visual .spk{position:absolute;z-index:2;animation:twinkle 3.6s ease-in-out infinite;}
.spk-h1{--s:26px;top:-2%;right:20%;}
.spk-h2{--s:14px;top:6%;right:12%;animation-delay:-1.2s !important;}
.spk-h3{--s:18px;top:52%;left:4%;animation-delay:-2.1s !important;}
.spk-h4{--s:12px;bottom:2%;left:26%;animation-delay:-0.6s !important;}
.spk-h5{--s:22px;bottom:30%;right:-2%;animation-delay:-2.8s !important;}
.sec-h2::after,.deal-h::after{content:'';display:inline-block;width:0.42em;height:0.42em;margin-left:0.22em;margin-right:-0.64em;vertical-align:0.62em;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23C7A15A' d='M12 0c.7 6.4 2.6 8.7 9 9.6v.8c-6.4.9-8.3 3.2-9 9.6h-.1c-.7-6.4-2.6-8.7-9-9.6v-.8c6.4-.9 8.3-3.2 9-9.6z'/%3E%3C/svg%3E") center/contain no-repeat;}
.plan.featured{overflow:hidden;}
.plan .spk-pl1,.plan .spk-pl2{position:absolute;animation:twinkle 4s ease-in-out infinite;}
.spk-pl1{--s:20px;right:2.2rem;bottom:2.4rem;opacity:0.9;}
.spk-pl2{--s:12px;right:4.4rem;bottom:4.6rem;animation-delay:-1.8s !important;}
.plan-badge{display:inline-flex;align-items:center;gap:0.35rem;}
.spk-inline{--s:11px;}
.slabs>div{position:relative;}
.slabs .spk{position:absolute;animation:twinkle 3.4s ease-in-out infinite;}
.spk-rs1{--s:22px;top:1.4rem;right:1.6rem;}
.spk-rs2{--s:12px;top:3.6rem;right:3.6rem;animation-delay:-1.1s !important;}
.spk-rs3{--s:14px;bottom:1.6rem;right:2.4rem;animation-delay:-2.3s !important;}
.apply-form{position:relative;}
.apply-form .spk{position:absolute;animation:twinkle 4s ease-in-out infinite;}
.spk-ap1{--s:24px;top:-12px;right:2.2rem;}
.spk-ap2{--s:14px;top:1.4rem;right:0.9rem;animation-delay:-1.6s !important;}
.face-plate{position:relative;}
.spk-fp1{--s:18px;position:absolute;top:-4px;right:-6px;animation:twinkle 3.6s ease-in-out infinite;}

.sec,.hero,.site-foot{position:relative;}
.spk-rand{position:absolute;z-index:0;animation:twinkle var(--t,3.8s) ease-in-out infinite;animation-delay:var(--dl,0s);}
.sec>.inner,.site-foot>*{position:relative;z-index:1;}

/* ---------- Sections ---------- */
.sec{padding:var(--sec-y) var(--pad-x);}
.sec-cream{background:var(--white);}
/* Night finale: the last section is a plum night sky; the footer continues the same ink below it. */
.sec-night{--nf:190px;position:relative;overflow:hidden;color:rgba(255,255,255,0.78);
  background:
    radial-gradient(1.5px 1.5px at 8% 30%,rgba(235,217,180,0.9),transparent),
    radial-gradient(1px 1px at 22% 66%,rgba(255,255,255,0.7),transparent),
    radial-gradient(1.5px 1.5px at 46% 26%,rgba(255,255,255,0.6),transparent),
    radial-gradient(1px 1px at 58% 88%,rgba(235,217,180,0.8),transparent),
    radial-gradient(1px 1px at 92% 72%,rgba(255,255,255,0.6),transparent),
    radial-gradient(1.5px 1.5px at 36% 46%,rgba(235,217,180,0.6),transparent),
    radial-gradient(55% 40% at 16% 32%,rgba(255,110,165,0.38),transparent 70%),
    radial-gradient(45% 40% at 86% 40%,rgba(255,143,182,0.3),transparent 70%),
    radial-gradient(70% 35% at 50% 70%,rgba(201,61,115,0.25),transparent 70%),
    linear-gradient(180deg,var(--white) 0,var(--pink-100) calc(var(--nf) * 0.3),#F3C1D4 calc(var(--nf) * 0.6),#E39AB8 var(--nf),#C8628D calc(var(--nf) + 200px),#B4527E 62%,#94406A 82%,#6E2A4C 100%);}
.night-sky{top:calc(var(--nf) * 0.6) !important;}
.night-sky{position:absolute;top:clamp(1rem,3vw,2.2rem);right:clamp(1rem,5vw,5rem);width:clamp(220px,32vw,440px);height:auto;overflow:visible;pointer-events:none;opacity:0.95;}
.night-sky line{stroke:var(--gold);stroke-width:1;stroke-dasharray:0.5 5;stroke-linecap:round;opacity:0.55;}
.night-sky .st{fill:var(--gold);filter:drop-shadow(0 0 6px rgba(255,236,200,0.9)) drop-shadow(0 1px 2px rgba(138,106,44,0.4));transform-box:fill-box;transform-origin:center;animation:glint 4.2s ease-in-out infinite;}
.night-sky .st:nth-of-type(2n){animation-delay:-1.6s;}
.night-sky .st:nth-of-type(3n){animation-delay:-2.9s;}
.sec-night{padding-top:calc(var(--nf) * 0.6 + clamp(120px,12.5vw,160px));}
.sec-night .inner{position:relative;z-index:1;}
.sec-night .sec-h2{color:var(--white);}
.sec-night .sec-p{color:rgba(255,255,255,0.88);}
.sec-night .apply-trust li{background:rgba(255,255,255,0.14);border:1px solid rgba(255,255,255,0.14);color:var(--white);}
.sec-night .apply-trust .ico{color:var(--gold-soft);}
.sec-night .apply-form{box-shadow:0 40px 90px -40px rgba(0,0,0,0.7),0 0 0 1px rgba(235,217,180,0.25);}
/* Tinted sections fade from and back to white, so no band starts with a hard edge. */
.sec-blush{background:linear-gradient(180deg,var(--white) 0,var(--pink-50) var(--fade,160px),var(--pink-50) calc(100% - var(--fade,160px)),var(--white) 100%);}
.sec-plum{background:linear-gradient(180deg,var(--white) 0,var(--cream) var(--fade,160px),var(--cream) calc(100% - var(--fade,160px)),var(--white) 100%);}
.sec-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,0.9fr);gap:1rem 4rem;align-items:end;margin-bottom:clamp(2.5rem,5vw,3.75rem);}
.sec-h2{font-size:clamp(2.1rem,3.8vw,3.4rem);line-height:1.05;letter-spacing:-0.03em;}
.sec-p{font-size:1.08rem;line-height:1.7;color:var(--ink-2);max-width:34rem;}
.fine{font-size:0.88rem;color:var(--ink-3);line-height:1.6;max-width:46rem;margin-top:1.4rem;}
.tag{justify-self:start;font-size:0.76rem;font-weight:600;padding:0.35rem 0.75rem;border-radius:999px;white-space:nowrap;}
.tag-both{background:var(--pink-100);color:var(--pink-600);}
.tag-full{background:var(--ink);color:var(--white);}

/* Services: soft cards */
.svc-list{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem;}
.svc{display:flex;flex-direction:column;gap:0.7rem;background:var(--pink-50);border-radius:var(--r-lg);padding:1.9rem 1.8rem 1.8rem;transition:transform 0.4s var(--ease),background 0.3s;}
.svc:hover{transform:translateY(-4px);background:var(--pink-100);}
.svc .tag{order:-1;margin-bottom:0.4rem;align-self:flex-start;}
.svc-t{font-size:1.4rem;line-height:1.2;}
.svc-d{font-size:0.97rem;line-height:1.65;}

/* Plans */
.plans-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;align-items:stretch;}
.plan{position:relative;display:flex;flex-direction:column;background:var(--white);border-radius:var(--r-lg);padding:clamp(1.8rem,3.5vw,2.8rem);box-shadow:0 18px 48px -32px rgba(36,22,28,0.3);}
.plan-name{font-size:clamp(1.8rem,2.8vw,2.3rem);line-height:1.05;margin-bottom:0.7rem;}
.plan-desc{font-size:1rem;line-height:1.65;margin-bottom:1.6rem;max-width:30rem;}
.plan-list{list-style:none;margin-bottom:1.6rem;display:grid;gap:0.25rem;}
.plan-list li{display:flex;gap:0.7rem;align-items:flex-start;padding:0.45rem 0;font-size:0.98rem;}
.plan-list .ico{color:var(--pink-600);margin-top:0.15rem;background:var(--pink-100);border-radius:50%;padding:3px;width:22px;height:22px;stroke-width:2.4;}
.plan-list strong{font-weight:600;color:var(--ink);}
.plan-for{margin-top:auto;margin-bottom:1.4rem;font-size:0.93rem;line-height:1.6;background:var(--pink-50);border-radius:var(--r-sm);padding:1rem 1.1rem;}
.plan-for strong{color:var(--ink);font-weight:600;}
.plan.featured{background:linear-gradient(160deg,var(--pink-200) 0%,var(--pink-100) 45%,var(--white) 100%);box-shadow:0 30px 60px -30px rgba(201,61,115,0.45);}
.plan.featured .plan-for{background:rgba(255,255,255,0.7);}
.plan.featured .plan-list .ico{background:var(--white);}
.plan-badge{position:absolute;top:clamp(1.8rem,3.5vw,2.8rem);right:clamp(1.8rem,3.5vw,2.8rem);font-size:0.78rem;font-weight:600;color:var(--gold-ink);background:var(--white);border:1px solid var(--gold-soft);padding:0.35rem 0.8rem;border-radius:999px;}

/* The deal: one centred statement */
.deal{text-align:center;}
.deal-in{max-width:880px;}
.deal-h{font-family:var(--display);font-size:clamp(2.8rem,6vw,5.4rem);font-weight:600;line-height:1;letter-spacing:-0.04em;color:var(--ink);margin-bottom:1.4rem;}
.deal-p{font-size:1.2rem;line-height:1.7;max-width:36rem;margin:0 auto;}

/* Faceless */
.faceless-grid{display:grid;grid-template-columns:minmax(0,0.85fr) minmax(0,1.15fr);gap:clamp(2.5rem,6vw,6rem);align-items:center;}
/* Faceless: a campaign-style portrait. Arch photo, an offset gold arch behind it, glass pills floating on its edges. */
.face-stage{position:relative;max-width:440px;margin:0 auto;padding:1.5rem 2.5rem 0 1.5rem;}
.face-halo{position:absolute;left:8%;right:4%;top:6%;bottom:22%;border-radius:50%;background:radial-gradient(closest-side,rgba(255,179,204,0.55),rgba(255,179,204,0));filter:blur(10px);z-index:0;}
.face-arch-line{position:absolute;left:calc(1.5rem + 22px);right:calc(2.5rem - 22px);top:0;aspect-ratio:4/5;border:1px solid var(--gold);border-radius:50% 50% 24px 24px / 34% 34% 24px 24px;z-index:0;opacity:0.8;}
.face-photo{position:relative;z-index:1;margin:0;aspect-ratio:4/5;}
.face-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 22%;display:block;border-radius:50% 50% 24px 24px / 34% 34% 24px 24px;background:var(--pink-100);box-shadow:0 30px 60px -30px rgba(201,61,115,0.6);}
.face-photo::after{content:'';position:absolute;inset:0;border-radius:50% 50% 24px 24px / 34% 34% 24px 24px;background:linear-gradient(180deg,rgba(255,230,239,0) 60%,rgba(255,214,228,0.5) 100%);pointer-events:none;}
.glass{background:rgba(255,255,255,0.7);-webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4);border:1px solid rgba(255,255,255,0.85);box-shadow:0 14px 34px -16px rgba(201,61,115,0.55);}
.face-chip{position:absolute;left:50%;top:33%;transform:translateX(-50%);z-index:2;display:inline-flex;align-items:center;gap:0.45rem;padding:0.5rem 0.95rem 0.5rem 0.7rem;border-radius:999px;background:rgba(255,255,255,0.68);-webkit-backdrop-filter:blur(12px) saturate(1.3);backdrop-filter:blur(12px) saturate(1.3);border:1px solid rgba(255,255,255,0.85);box-shadow:0 10px 26px -12px rgba(201,61,115,0.6);font-size:0.8rem;font-weight:600;color:var(--ink);white-space:nowrap;}
.face-chip .ico{width:16px;height:16px;color:var(--pink-600);}
.face-pills{position:absolute;inset:0;z-index:3;pointer-events:none;}
.pill{position:absolute;display:flex;align-items:center;gap:0.65rem;padding:0.55rem 1rem 0.55rem 0.55rem;border-radius:999px;background:rgba(255,255,255,0.78);-webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4);border:1px solid rgba(255,255,255,0.9);box-shadow:0 16px 36px -18px rgba(201,61,115,0.6);pointer-events:auto;white-space:nowrap;animation:floaty 6s ease-in-out infinite;}
.pill-ico{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(145deg,var(--pink-200),var(--pink-100));color:var(--pink-600);flex-shrink:0;}
.pill-ico .ico{width:17px;height:17px;}
.pill dt{font-size:0.7rem;color:var(--ink-3);line-height:1.2;}
.pill dd{font-size:0.88rem;font-weight:600;color:var(--ink);line-height:1.25;}
.pill-1{top:16%;right:-0.5rem;}
.pill-2{top:58%;left:-0.25rem;animation-delay:-2s;}
.pill-3{top:76%;right:0;animation-delay:-4s;}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.face-title{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:0.6rem;margin:1.6rem 0 0;font-family:var(--display);font-size:1.55rem;font-weight:600;letter-spacing:-0.02em;color:var(--ink);text-align:center;}
.face-title .spk{--s:14px;}
.face-stage>.spk{position:absolute;z-index:2;animation:twinkle 3.8s ease-in-out infinite;}
.spk-fc1{--s:22px;top:1%;right:1rem;}
.spk-fc2{--s:12px;top:9%;right:-0.4rem;animation-delay:-1.4s !important;}
.spk-fc3{--s:15px;top:34%;left:0.2rem;animation-delay:-2.6s !important;}
.faceless-grid .sec-h2{margin-bottom:1.2rem;}
#compare .sec-head{grid-template-columns:minmax(0,1fr);}
.vs{font-family:var(--display);font-weight:300;color:var(--gold-ink);letter-spacing:0;padding:0 0.05em;}
@media (min-width:901px){.vs-h{white-space:nowrap;}}
.dash-list{list-style:none;margin-top:2rem;display:grid;gap:0.9rem;}
.dash-list li{position:relative;padding-left:2.1rem;font-size:1rem;line-height:1.6;}
.dash-list li::before{content:'';position:absolute;left:0;top:0.25rem;width:20px;height:20px;border-radius:50%;background:var(--pink-200) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C93D73' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12.5 4 4L18 8'/%3E%3C/svg%3E") center/12px no-repeat;}

/* Privacy */
.split-layout,.faq-grid{display:grid;grid-template-columns:minmax(0,0.8fr) minmax(0,1.2fr);gap:clamp(2.5rem,6vw,6rem);align-items:start;}
.sec-head.stick{display:block;position:sticky;top:calc(var(--head-h) + 2rem);margin:0;}
.sec-head.stick .sec-p,.sec-head.stick .text-link{margin-top:1.2rem;}
.terms{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.terms li{display:flex;gap:0.9rem;background:var(--pink-50);border-radius:var(--r-md);padding:1.4rem 1.3rem;}
.terms li>.ico{color:var(--pink-600);background:var(--white);border-radius:50%;padding:5px;width:30px;height:30px;stroke-width:2.2;}
.terms h3{font-size:1.08rem;margin-bottom:0.35rem;letter-spacing:-0.01em;}
.terms p{font-size:0.95rem;line-height:1.6;}
.terms li.terms-honest{background:var(--cream);box-shadow:inset 0 0 0 1px var(--gold-soft);}

/* AI (warm cream band) */
.ai-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2.5rem,6vw,6rem);align-items:center;}
.ai-grid .sec-h2{margin-bottom:1.2rem;}
.ai-feats{margin-top:2rem;display:grid;grid-template-columns:1fr 1fr;gap:1.4rem 2rem;}
.ai-feats dt{font-weight:600;color:var(--ink);margin-bottom:0.25rem;}
.ai-feats dd{font-size:0.94rem;line-height:1.6;}
.console{background:var(--white);border-radius:var(--r-lg);padding:1.6rem;box-shadow:var(--shadow);}
.console-label{display:inline-block;font-size:0.78rem;font-weight:600;color:var(--gold-ink);background:var(--cream);border:1px solid var(--gold-soft);padding:0.3rem 0.75rem;border-radius:999px;margin-bottom:1rem;}
.console ul{list-style:none;display:grid;gap:0.6rem;}
.console li{padding:0.9rem 1.1rem;border-radius:var(--r-sm);background:var(--pink-50);font-size:0.92rem;font-variant-numeric:tabular-nums;}
.console strong{display:block;font-weight:600;color:var(--ink);margin-bottom:0.1rem;}

/* Who we are */
.wwa-grid{display:grid;grid-template-columns:minmax(0,0.8fr) minmax(0,1.2fr);gap:clamp(2.5rem,6vw,6rem);align-items:center;}
.wwa-figs{display:grid;gap:1rem;}
.fig{background:var(--white);border-radius:var(--r-lg);padding:1.4rem 1.8rem;display:flex;align-items:center;gap:1.3rem;box-shadow:0 18px 44px -32px rgba(201,61,115,0.4);}
.fig-n{font-family:var(--display);font-size:clamp(1.9rem,2.6vw,2.2rem);min-width:3.8rem;font-weight:700;line-height:0.9;color:var(--pink-600);letter-spacing:-0.05em;}
.fig-l{font-size:0.98rem;line-height:1.5;color:var(--ink-2);}
.globe{display:flex;align-items:center;}
.globe svg{width:clamp(2.6rem,3.6vw,3.1rem);height:auto;overflow:visible;}
.globe-lines{fill:none;stroke:var(--pink-600);stroke-width:1.2;stroke-linecap:round;}
.globe-lines circle{fill:var(--pink-100);stroke-width:1.6;}
.pin{fill:var(--gold);stroke:#fff;stroke-width:1.6;filter:drop-shadow(0 1px 3px rgba(138,106,44,0.5));}
.pin-ring{fill:rgba(199,161,90,0.25);stroke:var(--gold);stroke-width:1;transform-box:fill-box;transform-origin:center;animation:pinpulse 2.4s ease-out infinite;}
@keyframes pinpulse{0%{transform:scale(1);opacity:0.9}100%{transform:scale(3.2);opacity:0}}
.fig-place{display:flex;align-items:center;gap:0.6rem;padding:0.9rem 1.2rem;font-size:0.92rem;font-weight:500;color:var(--ink-2);background:var(--white);border-radius:999px;justify-self:start;}
.fig-place::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--gold);}
.wwa-text .sec-h2{margin-bottom:1.4rem;}
.wwa-text p{font-size:1.05rem;line-height:1.75;margin-bottom:1rem;max-width:38rem;}
.wwa-close{font-family:var(--display);font-size:1.6rem !important;font-weight:600;line-height:1.25 !important;color:var(--ink);margin-top:1.6rem;letter-spacing:-0.02em;}

/* Why: ruled list on white */
.why-list{display:grid;gap:0;}
.why{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.3fr);gap:0.5rem 3rem;padding:1.8rem 0;border-bottom:1px solid var(--line);}
.why:first-child{border-top:1px solid var(--line);}
.why h3{font-size:1.45rem;line-height:1.2;}
.why p{font-size:1rem;line-height:1.7;max-width:38rem;}

/* Stages + fit */
.stages{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem;align-items:start;}
.stage-1{margin-top:4rem;}
.stage-2{margin-top:2rem;}
.stages li{background:var(--white);border-radius:var(--r-lg);padding:1.8rem;}
.stages li{position:relative;transition:transform 0.5s var(--ease),box-shadow 0.5s var(--ease);}
.stage-sky-box{position:relative;display:flex;align-items:center;justify-content:center;height:150px;margin:-1.8rem -1.8rem 0.6rem;padding-bottom:22px;border-radius:var(--r-lg) var(--r-lg) 0 0;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,#000 55%,transparent);mask-image:linear-gradient(180deg,#000 55%,transparent);
  background:
    radial-gradient(1.5px 1.5px at 14% 26%,rgba(199,161,90,0.7),transparent),
    radial-gradient(1px 1px at 82% 22%,rgba(199,161,90,0.6),transparent),
    radial-gradient(1.5px 1.5px at 90% 74%,rgba(201,61,115,0.35),transparent),
    radial-gradient(1px 1px at 30% 80%,rgba(201,61,115,0.35),transparent),
    radial-gradient(1px 1px at 62% 86%,rgba(199,161,90,0.6),transparent),
    radial-gradient(1px 1px at 8% 64%,rgba(199,161,90,0.5),transparent),
    radial-gradient(120% 90% at 50% 0%,var(--pink-50) 0,var(--pink-100) 100%);}
.stage-2 .stage-sky-box{background-color:var(--pink-100);}
.stage-3{box-shadow:inset 0 0 0 1px rgba(199,161,90,0.35);}
/* A gold thread runs from each card's last star to the next card, so the three read as one constellation. */
.stages li:not(:last-child)::after{content:'';position:absolute;z-index:2;top:60px;right:calc(-1.1rem - 1px);width:calc(1.1rem + 2px);border-top:2px dotted var(--gold);}
.stage-3 .stage-sky-box::after{content:'';position:absolute;inset:0;background:radial-gradient(60% 80% at 50% 45%,rgba(255,232,190,0.55),transparent 70%);pointer-events:none;}
.stage-sky{position:relative;z-index:1;display:block;width:210px;height:88px;overflow:visible;}
.stage-sky line{stroke-linecap:round;stroke-width:1.4;stroke-dasharray:0.5 4.5;}
.stage-sky line.on{stroke:var(--gold);}
.stage-sky line.off{stroke:var(--pink-300);opacity:0.7;}
.stage-sky .dim{fill:#fff;stroke:var(--pink-300);stroke-width:1;}
.stage-sky .st{fill:var(--gold);filter:drop-shadow(0 0 5px rgba(255,214,150,0.95)) drop-shadow(0 2px 3px rgba(138,106,44,0.35));transform-box:fill-box;transform-origin:center;animation:glint 3.8s ease-in-out infinite;}
.stage-sky .st:nth-of-type(2){animation-delay:-1.3s;}
.stage-sky .st:nth-of-type(3){animation-delay:-2.5s;}
/* On reveal the stars pop in one after another, then the links appear. */
.js .stages:not(.in) .st{opacity:0;transform:scale(0.2) rotate(-60deg);}
.js .stages:not(.in) line{opacity:0;}
.stages.in .st{animation:pop 0.7s var(--ease) both,glint 3.8s ease-in-out 1.6s infinite;}
.stages.in .st:nth-of-type(2){animation-delay:0.25s,2.9s;}
.stages.in .st:nth-of-type(3){animation-delay:0.5s,4.1s;}
.stages.in line{animation:fadein 0.8s ease 0.6s both;}
@keyframes pop{from{opacity:0;transform:scale(0.2) rotate(-60deg)}to{opacity:1;transform:none}}
@keyframes fadein{from{opacity:0}}
@keyframes glint{0%,100%{opacity:1}50%{opacity:0.55}}
.stages h3,.stages p{position:relative;}
@media (hover:hover){.stages li:hover{transform:translateY(-4px);box-shadow:0 24px 48px -30px rgba(201,61,115,0.55);}}
.stages h3{font-size:1.35rem;line-height:1.2;margin-bottom:0.55rem;}
.stages p{font-size:0.97rem;line-height:1.65;}
.fit-h{font-size:clamp(1.7rem,2.8vw,2.3rem);margin:clamp(3.5rem,7vw,5rem) 0 1.5rem;}
.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;}
.fit-asym{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:1.2rem;align-items:start;}
.fit-col{border-radius:var(--r-lg);padding:clamp(1.6rem,3vw,2.2rem);}
.fit-yes{background:var(--white);}
.fit-no{background:transparent;box-shadow:inset 0 0 0 1px rgba(36,22,28,0.1);}
.fit-col-title{font-family:var(--display);font-size:1.35rem;font-weight:600;color:var(--ink);margin-bottom:0.9rem;}
.fit-col ul{list-style:none;display:grid;gap:0.2rem;}
.fit-col li{display:flex;gap:0.7rem;align-items:flex-start;padding:0.45rem 0;font-size:0.98rem;}
.fit-yes .ico{color:var(--pink-600);background:var(--pink-100);border-radius:50%;padding:3px;width:22px;height:22px;stroke-width:2.4;margin-top:0.1rem;}
.fit-no .ico{color:var(--ink-3);margin-top:0.2rem;}

/* Timeline */
.timeline{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.1rem;}
.timeline li{position:relative;background:var(--pink-50);border-radius:var(--r-lg);padding:1.8rem 1.6rem;}
.tl-num{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:var(--white);font-family:var(--display);font-size:1.05rem;font-weight:700;color:var(--pink-600);margin-bottom:1.3rem;box-shadow:0 8px 18px -10px rgba(201,61,115,0.5);}
.timeline h3{font-size:1.2rem;margin-bottom:0.45rem;letter-spacing:-0.01em;}
.timeline p{font-size:0.95rem;line-height:1.6;}
.tl-tag{display:inline-block;margin-top:1rem;font-size:0.78rem;font-weight:600;background:var(--white);color:var(--gold-ink);border:1px solid var(--gold-soft);padding:0.35rem 0.75rem;border-radius:999px;}

/* Calculator */
.calc{display:grid;grid-template-columns:1fr 1fr;background:var(--white);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow);}
.calc-in,.calc-out{padding:clamp(1.6rem,3.5vw,3rem);}
.calc-out{background:linear-gradient(160deg,var(--pink-100),var(--pink-50));display:flex;flex-direction:column;}
.calc-title{font-family:var(--display);font-size:1.3rem;font-weight:600;color:var(--ink);margin-bottom:1.6rem;letter-spacing:-0.02em;}
.slider-group{margin-bottom:1.8rem;}
.slider-group label{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;font-size:0.98rem;font-weight:600;color:var(--ink);}
.val{font-family:var(--display);font-size:1.15rem;font-weight:700;color:var(--ink);background:var(--pink-50);padding:0.15rem 0.7rem;border-radius:999px;font-variant-numeric:tabular-nums;}
.slider-group p{font-size:0.86rem;color:var(--ink-3);margin:0.15rem 0 0.9rem;}
input[type=range]{width:100%;-webkit-appearance:none;appearance:none;height:6px;border-radius:999px;background:var(--pink-100);outline:none;cursor:pointer;accent-color:var(--pink-600);}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:var(--white);border:6px solid var(--pink-400);box-shadow:0 4px 10px rgba(201,61,115,0.35);cursor:pointer;}
input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--white);border:6px solid var(--pink-400);cursor:pointer;}
input[type=range]:focus-visible{outline:2px solid var(--pink-600);outline-offset:8px;}
.result-label{font-size:0.95rem;color:var(--ink-2);}
.result-val{font-family:var(--display);font-size:clamp(1.9rem,2.8vw,2.4rem);font-weight:700;line-height:1;color:var(--ink);margin:0.4rem 0 1.2rem;letter-spacing:-0.04em;font-variant-numeric:tabular-nums;}
.result-rows{display:grid;gap:0.45rem;margin-bottom:1rem;}
.result-rows>div{display:flex;justify-content:space-between;gap:1rem;padding:0.7rem 1rem;border-radius:var(--r-sm);background:rgba(255,255,255,0.7);font-size:0.95rem;}
.result-rows dd{font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;}
.projection{font-size:0.93rem;line-height:1.6;margin-bottom:1.6rem;}
.projection strong{color:var(--ink);}
.calc-out .btn{margin-top:auto;}

/* Results */
.slabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem;}
.slabs>div{display:flex;flex-direction:column;background:var(--white);border-radius:var(--r-lg);padding:2.2rem 2rem;box-shadow:0 18px 44px -32px rgba(201,61,115,0.4);}
.slabs dd{font-family:var(--display);font-size:clamp(2rem,3vw,2.5rem);font-weight:700;line-height:0.95;letter-spacing:-0.05em;color:var(--pink-600);}
.slabs>div:nth-child(2){background:linear-gradient(160deg,var(--pink-300),var(--pink-200));}
.slabs>div:nth-child(2) dd{color:var(--ink);}
.slabs dt{order:2;margin-top:0.9rem;font-size:0.95rem;font-weight:500;color:var(--ink-2);}

/* Table */
.table-wrap{background:var(--white);border-radius:var(--r-lg);overflow:hidden;box-shadow:0 18px 44px -32px rgba(36,22,28,0.3);}
table{width:100%;border-collapse:collapse;}
thead th{padding:1.2rem 1.5rem;text-align:left;font-size:0.82rem;font-weight:600;color:var(--ink-3);}
thead th:nth-child(2){color:var(--pink-600);background:var(--pink-50);}
tbody th{text-align:left;font-weight:600;color:var(--ink);}
tbody th,tbody td{padding:1rem 1.5rem;font-size:0.97rem;border-top:1px solid var(--line);}
tbody td:nth-child(2){background:var(--pink-50);text-align:center;}
tbody td{color:var(--ink-3);}
.ico.yes{color:var(--pink-600);width:22px;height:22px;stroke-width:2.4;}
.ico.no{color:#B9A9B0;}

/* FAQ */
.text-link{display:inline-flex;align-items:center;gap:0.55rem;font-weight:600;color:var(--ink);text-decoration:none;background:var(--white);padding:0.75rem 1.2rem;border-radius:999px;min-height:46px;box-shadow:0 10px 24px -16px rgba(201,61,115,0.45);}
.tg-mini{fill:#2AABEE;stroke:none;width:20px;height:20px;}
.faq-list{display:grid;gap:0.7rem;}
.faq-item{background:var(--white);border-radius:var(--r-md);padding:0 1.5rem;transition:box-shadow 0.3s;}
.faq-item:has(.open){box-shadow:0 18px 40px -28px rgba(201,61,115,0.45);}
.faq-btn{width:100%;min-height:44px;background:none;border:none;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.25rem 0;cursor:pointer;color:var(--ink);font-size:1.05rem;font-weight:600;text-align:left;}
.faq-icon{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--pink-50);display:flex;align-items:center;justify-content:center;font-size:1.15rem;color:var(--pink-600);transition:transform 0.35s var(--ease),background 0.25s,color 0.25s;}
.faq-btn.open .faq-icon{transform:rotate(45deg);background:var(--pink-600);color:var(--white);}
.faq-body{overflow:hidden;max-height:0;transition:max-height 0.4s var(--ease);}
.faq-body p{padding:0 2.5rem 1.4rem 0;font-size:0.99rem;line-height:1.72;}

/* Apply */
.apply-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2.5rem,6vw,6rem);align-items:start;}
.apply-copy .sec-h2{margin-bottom:1.2rem;}
.cta-h{position:relative;font-size:clamp(2.6rem,5vw,4.4rem);line-height:1.02;margin-bottom:1.8rem !important;}
.glow{color:transparent;background:linear-gradient(105deg,#fff 0,#fff 38%,#FFE7C2 47%,#fff 52%,#FFD9E8 58%,#fff 66%,#fff 100%);background-size:260% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 0 6px rgba(255,255,255,0.65)) drop-shadow(0 0 18px rgba(255,170,205,0.95)) drop-shadow(0 0 42px rgba(255,105,170,0.6));animation:shimmer 5.5s ease-in-out infinite;}
@keyframes shimmer{0%,35%{background-position:100% 0}75%,100%{background-position:0 0}}
.cta-h .spk{position:absolute;animation:twinkle 3.2s ease-in-out infinite;filter:drop-shadow(0 0 6px rgba(255,236,200,0.95));}
.spk-t1{--s:22px;top:-0.45em;left:-0.3em;}
.spk-t2{--s:16px;top:0.15em;right:12%;animation-delay:-1.1s !important;}
.spk-t3{--s:18px;bottom:-0.25em;left:42%;animation-delay:-2.2s !important;}
.apply-trust{list-style:none;display:flex;flex-wrap:wrap;gap:0.5rem;margin:1.8rem 0 2.2rem;}
.apply-trust li{display:flex;gap:0.45rem;align-items:center;font-size:0.92rem;font-weight:500;color:var(--ink);background:var(--white);padding:0.5rem 0.95rem 0.5rem 0.7rem;border-radius:999px;}
.apply-trust .ico{color:var(--gold);}
.mini-wrap{max-width:430px;perspective:1100px;}
.mini-card{position:relative;overflow:hidden;aspect-ratio:1.586;display:flex;flex-direction:column;justify-content:space-between;padding:1.35rem 1.5rem 1.25rem;border-radius:22px;color:#fff;transform:rotateY(-7deg) rotateX(4deg);transform-style:preserve-3d;transition:transform 0.8s var(--ease);
  background:
    radial-gradient(90% 70% at 0% 0%,rgba(255,255,255,0.45),transparent 45%),
    radial-gradient(80% 70% at 100% 100%,rgba(110,42,76,0.55),transparent 60%),
    linear-gradient(135deg,#F9D3E1 0%,#EE9DBD 32%,#D9709C 58%,#B04878 82%,#8C2F5D 100%);
  box-shadow:0 1px 0 rgba(255,255,255,0.6) inset,0 0 0 1px rgba(235,217,180,0.55) inset,0 34px 60px -26px rgba(40,10,25,0.75),0 12px 24px -14px rgba(40,10,25,0.5);}
@media (hover:hover){.mini-card:hover{transform:rotateY(0) rotateX(0);}}
.mc-shine{position:absolute;inset:-40%;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,0.45) 48%,rgba(255,236,200,0.35) 52%,transparent 60%);transform:translateX(-60%);animation:holo 6s ease-in-out infinite;pointer-events:none;mix-blend-mode:soft-light;}
@keyframes holo{0%,40%{transform:translateX(-60%)}80%,100%{transform:translateX(60%)}}
.mc-top,.mc-mid,.mc-holder,.mc-socials{position:relative;z-index:1;}
.mc-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;}
.mc-top .mini-mark{font-family:var(--display);font-weight:500;font-size:0.8rem;letter-spacing:0.34em;text-transform:uppercase;font-weight:600;background:linear-gradient(100deg,#7A4A1E,#A87A35 40%,#6B3F18 60%,#9C6E2C);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 1px 0 rgba(255,255,255,0.55));}
.mc-label{font-size:0.68rem;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,0.85);padding:0.28rem 0.6rem;border:1px solid rgba(255,255,255,0.45);border-radius:999px;}
.mc-mid{display:flex;align-items:center;justify-content:space-between;}
.mc-chipset{display:flex;align-items:center;gap:0.5rem;}
.mc-nfc{display:none;width:22px;height:22px;fill:none;stroke:rgba(255,255,255,0.8);stroke-width:1.8;stroke-linecap:round;}
.mc-num{display:none;font-family:var(--display);font-weight:500;letter-spacing:0.18em;color:rgba(255,255,255,0.92);text-shadow:0 1px 0 rgba(90,30,55,0.35);}
.mc-chip{position:relative;width:44px;height:33px;border-radius:7px;background:linear-gradient(135deg,#F6E3B6,#D2AC62 45%,#F3DDA6 70%,#B98F45);box-shadow:inset 0 0 0 1px rgba(120,85,30,0.35);overflow:hidden;}
.mc-chip i{position:absolute;left:0;right:0;height:1px;background:rgba(120,85,30,0.45);}
.mc-chip i:nth-child(1){top:33%;}.mc-chip i:nth-child(2){top:66%;}
.mc-chip i:nth-child(3){top:0;bottom:0;left:50%;right:auto;width:1px;height:auto;}
.mc-stars{width:76px;height:auto;fill:#FFF1D6;filter:drop-shadow(0 0 4px rgba(255,236,200,0.9));overflow:visible;}
.mc-holder{display:flex;align-items:center;gap:0.85rem;}
.mini-photo{flex-shrink:0;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:1.25rem;font-weight:600;color:#fff;background:rgba(255,255,255,0.18);box-shadow:inset 0 0 0 1.5px #EBD9B4;transition:background 0.4s;}
.mini-card.filled .mini-photo{background:linear-gradient(145deg,#F3DDA6,#C7A15A);color:#5A2440;}
.mc-holder>div{min-width:0;display:flex;flex-direction:column;gap:0.1rem;}
.mc-k,.mc-socials dt{font-size:0.62rem;font-weight:600;letter-spacing:0.16em;text-transform:uppercase;color:rgba(255,255,255,0.72);}
.mc-name{font-family:var(--display);font-size:1.3rem;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 0 rgba(255,255,255,0.35),0 -1px 0 rgba(90,30,55,0.35);}
.mc-name:empty::before{content:'••••• •••••';letter-spacing:0.12em;opacity:0.7;}
.mc-socials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0.6rem;}
.mc-socials>div{min-width:0;}
.mc-socials dd{font-size:0.82rem;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.mc-socials dd:empty::before{content:'—';opacity:0.6;font-weight:400;}
.mini-note{font-size:0.82rem;color:rgba(255,255,255,0.75);margin-top:1rem;padding-left:0.2rem;}
.apply-form{background:var(--white);border-radius:var(--r-lg);padding:clamp(1.6rem,3.5vw,2.6rem);box-shadow:0 30px 70px -36px rgba(201,61,115,0.45);}
.cta-form{display:flex;flex-direction:column;gap:1rem;}
.fld{display:flex;flex-direction:column;gap:0.4rem;min-width:0;}
.fld-l{font-size:0.88rem;font-weight:600;color:var(--ink);}
.fld-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:end;}
.cta-input{width:100%;min-height:52px;background:var(--pink-50);border:1.5px solid transparent;border-radius:var(--r-sm);padding:0.8rem 1rem;font-family:var(--sans);font-size:1rem;color:var(--ink);outline:none;transition:border-color 0.2s,background 0.2s,box-shadow 0.2s;}
.cta-input:focus{border-color:var(--pink-400);background:var(--white);box-shadow:0 0 0 4px rgba(255,143,182,0.2);}
.cta-form .btn{margin-top:0.4rem;}
.cta-or{display:flex;align-items:center;gap:1rem;margin:1.2rem 0;}
.cta-or::before,.cta-or::after{content:'';flex:1;height:1px;background:var(--line);}
.cta-or span{font-size:0.82rem;color:var(--ink-3);}
.cta-tg-btn .tg-mini{width:22px;height:22px;}

/* Footer */
/* The apply block melts into the dark footer instead of stopping at a line. */
.site-foot{background:linear-gradient(180deg,#6E2A4C 0,#4A1D35 140px,#33141F 280px,var(--ink) 420px);color:rgba(255,255,255,0.72);padding:clamp(3.5rem,7vw,5rem) var(--pad-x) 2.5rem;}
.foot-top{max-width:1200px;margin:0 auto 3rem;display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:3rem;}
.foot-brand p{font-size:0.95rem;line-height:1.7;max-width:22rem;margin-top:0.9rem;}
.foot-col h2{font-family:var(--sans);font-size:0.85rem;font-weight:600;letter-spacing:0;color:var(--white);margin-bottom:1rem;}
.foot-col ul{list-style:none;}
.foot-col li{margin-bottom:0.55rem;}
.foot-col a{color:rgba(255,255,255,0.72);text-decoration:none;font-size:0.95rem;}
.foot-col a:hover{color:var(--pink-300);}
.foot-legal{max-width:1200px;margin:2.4rem auto 0;display:flex;flex-wrap:wrap;gap:0.4rem 1.4rem;font-size:0.85rem;}
.foot-legal a,.foot-legal button{color:rgba(255,255,255,0.72);text-decoration:none;background:none;border:0;padding:0;font:inherit;cursor:pointer;}
.foot-legal a:hover,.foot-legal button:hover{color:#fff;}
.foot-legal+.foot-bottom{margin-top:1.2rem;}
.hp-field{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;}
.form-legal{font-size:0.78rem;line-height:1.5;color:var(--ink-3);text-align:center;margin-top:0.2rem;}
.form-legal a{color:var(--pink-600);}
/* Cookie banner */
.cookie-bar{position:fixed;left:50%;bottom:1rem;transform:translateX(-50%);z-index:500;width:min(560px,calc(100% - 1.5rem));display:flex;flex-direction:column;gap:0.9rem;padding:1.1rem 1.2rem;background:var(--white);border-radius:20px;box-shadow:0 24px 60px -20px rgba(60,15,35,0.45),0 0 0 1px rgba(235,217,180,0.6);font-size:0.88rem;line-height:1.55;color:var(--ink-2);}
.cookie-bar[hidden]{display:none;}
.cookie-bar a{color:var(--pink-600);}
.cookie-btns{display:grid;grid-template-columns:1fr 1fr;gap:0.6rem;}
.cookie-btns .btn{min-height:42px;font-size:0.85rem;}
body.has-cookie-bar .tg-bubble{opacity:0;pointer-events:none;}
.foot-bottom{max-width:1200px;margin:0 auto;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,0.12);display:flex;justify-content:space-between;flex-wrap:wrap;gap:0.5rem;font-size:0.85rem;color:rgba(255,255,255,0.55);}

/* Floating Telegram */
.tg-bubble{position:fixed;right:1.5rem;bottom:1.5rem;z-index:300;display:flex;align-items:center;gap:0.55rem;min-height:50px;padding:0.75rem 1.2rem;border-radius:999px;background:var(--white);color:var(--ink);font-size:0.9rem;font-weight:600;text-decoration:none;box-shadow:0 14px 34px -14px rgba(201,61,115,0.55);transition:transform 0.3s var(--ease),opacity 0.25s;}
.tg-bubble:hover{transform:translateY(-2px);}
.tg-bubble.away{opacity:0;transform:translateY(12px);pointer-events:none;}
.tg-ico{width:22px;height:22px;fill:#2AABEE;}

/* ---------- Motion ---------- */
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity 0.9s var(--ease),transform 0.9s var(--ease);transition-delay:var(--d,0ms);}
.js .reveal.in{opacity:1;transform:none;}
@keyframes rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes bloom{from{opacity:0;transform:translateY(24px) scale(0.96)}to{opacity:1;transform:none}}
.hero-copy>*{animation:rise 0.9s var(--ease) backwards;}
.hero-copy>:nth-child(2){animation-delay:90ms}.hero-copy>:nth-child(3){animation-delay:180ms}.hero-copy>:nth-child(4){animation-delay:260ms}
.ph{animation:bloom 1.1s var(--ease) backwards;}
.ph-main{animation-delay:150ms}.ph-a{animation-delay:330ms}.ph-b{animation-delay:450ms}
.hero-stats{animation:rise 0.9s var(--ease) 500ms backwards;}

/* ---------- Tablet ---------- */
@media(max-width:1080px){
  .nav-links{gap:1.3rem;}
  .svc-list{grid-template-columns:1fr 1fr;}
  .timeline{grid-template-columns:1fr 1fr;}
  .hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));}
  .hero-stats>div:nth-child(4){box-shadow:none;}
  .foot-top{grid-template-columns:1fr 1fr;}
}
@media(max-width:900px){
  .nav-links,.lang-bar{display:none;}
  .lang-pick{display:block;margin-left:auto;}
  .lang-pick,.head-cta,.nav-hamburger{flex-shrink:0;}
  .nav-hamburger{display:flex;position:relative;width:44px;height:44px;margin-left:0.25rem;margin-right:-10px;background:none;border:none;cursor:pointer;}
  .nav-hamburger span{position:absolute;left:11px;width:22px;height:2px;border-radius:2px;background:var(--ink);transition:transform 0.25s var(--ease),top 0.25s var(--ease),opacity 0.15s;}
  .nav-hamburger span:nth-child(1){top:15px;}.nav-hamburger span:nth-child(2){top:21px;}.nav-hamburger span:nth-child(3){top:27px;}
  .nav-hamburger.open span:nth-child(1){top:21px;transform:rotate(45deg);}
  .nav-hamburger.open span:nth-child(2){opacity:0;}
  .nav-hamburger.open span:nth-child(3){top:21px;transform:rotate(-45deg);}
  .head-cta{margin-left:0;}
  .mobile-menu{position:fixed;left:0.75rem;right:0.75rem;top:calc(var(--head-h) + 0.25rem);z-index:390;flex-direction:column;background:var(--white);padding:0.5rem 1.1rem 1rem;border-radius:var(--r-lg);box-shadow:0 30px 60px -24px rgba(36,22,28,0.35);max-height:calc(100dvh - var(--head-h) - 1rem);overflow-y:auto;}
  .mobile-menu.open{display:flex;animation:rise 0.28s var(--ease);}
  .mobile-menu>a:not(.btn){font-family:var(--display);font-size:1.12rem;font-weight:600;color:var(--ink);text-decoration:none;padding:0.6rem 0.2rem;border-bottom:1px solid var(--line);letter-spacing:-0.01em;}
  .mobile-menu .mob-cta{min-height:44px;font-size:0.88rem;margin-top:0.9rem;}
  .hero-in,.faceless-grid,.split-layout,.faq-grid,.ai-grid,.wwa-grid,.apply-grid{grid-template-columns:minmax(0,1fr);}
  .sec-head{grid-template-columns:minmax(0,1fr);}
  .sec-head.stick{position:static;}
  .wwa-text{order:-1;}
  .hero-visual{height:clamp(420px,80vw,560px);max-width:560px;width:100%;margin:0 auto;}
}

/* ---------- Phone ---------- */
/* Tablet: two plan columns are too narrow for the badge beside the title. */
@media (min-width:641px) and (max-width:1000px){.plan-badge{position:static;align-self:flex-start;margin-bottom:1rem;order:-1;}}
@media(max-width:640px){
  :root{--head-h:64px;--sec-y:3.4rem;--r-lg:24px;--fade:90px;}
  html{font-size:93.75%;}
  .btn{min-height:46px;}
  .logo-word{font-size:0.92rem;letter-spacing:0.24em;margin-right:-0.24em;}
  .spk-rand{max-width:12px;max-height:12px;}
  .hero-in{position:relative;z-index:1;}
  .logo{gap:0.25rem;}
  .spk-logo{--s:10px;}
  .head-cta{min-height:36px;padding:0.4rem 0.85rem;font-size:0.76rem;}
  .site-head{gap:0.75rem;}

  .hero{padding:calc(var(--head-h) + 1.6rem) 1.25rem 2.5rem;}
  .hero-h1{font-size:clamp(2.1rem,9.4vw,2.6rem);margin-bottom:0.9rem;}
  .hero-sub{font-size:1.04rem;margin-bottom:1.6rem;}
  .hero-btns .btn{min-height:44px;padding:0.65rem 1.15rem;font-size:0.88rem;}
  .hero-trust li{font-size:0.84rem;}
  .hero-visual{height:auto;aspect-ratio:1/1.08;margin-top:0.4rem;}
  .ph-main{left:14%;width:62%;}
  .ph-a{top:6%;width:33%;border-width:4px;}
  .ph-b{bottom:4%;width:36%;border-width:4px;}
  .hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1.8rem;padding:0.4rem;border-radius:22px;}
  .hero-stats>div{padding:0.9rem 0.7rem;}
  .hero-stats>div:nth-child(4){box-shadow:none;}
  .hero-stats>div:nth-child(n+4){border-top:1px solid var(--line);border-radius:0;}
  .hero-stats dd{font-size:1.45rem;}
  .hero-stats dt{font-size:0.74rem;}

  .sec-h2{font-size:clamp(1.45rem,6.1vw,2rem);}
  html[lang="de"] .vs-h{font-size:5.4vw;}
  .sec-p{font-size:1rem;}
  .sec-head{margin-bottom:2rem;}

  .svc-list{grid-template-columns:minmax(0,1fr);gap:0.8rem;}
  .svc{padding:1.5rem 1.35rem;}
  .svc-t{font-size:1.28rem;}

  .plans-grid{grid-template-columns:minmax(0,1fr);gap:1rem;}
  .plan{padding:1.7rem 1.35rem 1.4rem;}
  .plan-badge{position:static;align-self:flex-start;margin-bottom:1rem;order:-1;}

  .deal-h{font-size:clamp(1.7rem,7.5vw,2.3rem);}
  .deal-p{font-size:1.05rem;}

  .face-stage{max-width:340px;padding:1rem 1.4rem 0 0.9rem;}
  .face-arch-line{left:calc(0.9rem + 14px);right:calc(1.4rem - 14px);}
  .face-chip{font-size:0.74rem;padding:0.42rem 0.8rem 0.42rem 0.6rem;}
  .pill{padding:0.42rem 0.8rem 0.42rem 0.42rem;gap:0.5rem;}
  .pill-ico{width:28px;height:28px;}
  .pill-ico .ico{width:14px;height:14px;}
  .pill dt{font-size:0.64rem;}
  .pill dd{font-size:0.8rem;}
  .pill-1{top:12%;right:0;}
  .pill-2{top:57%;left:0;}
  .pill-3{top:74%;right:0.2rem;}
  .face-title{font-size:1.25rem;margin-top:1.2rem;}

  .terms{grid-template-columns:minmax(0,1fr);gap:0.7rem;}
  .terms li{padding:1.2rem 1.1rem;}

  .ai-feats{grid-template-columns:minmax(0,1fr);gap:1.1rem;}
  .console{padding:1.1rem;}
  .fig{padding:1.05rem 1.2rem;gap:0.9rem;border-radius:20px;}
  .fig-n{font-size:1.85rem;min-width:3rem;}
  .fig-l{font-size:0.88rem;line-height:1.45;}
  .fig-place{font-size:0.85rem;padding:0.7rem 1rem;}
  .wwa-close{font-size:1.35rem !important;}

  .why{grid-template-columns:minmax(0,1fr);padding:1.3rem 0;}
  .why h3{font-size:1.28rem;}

  .stages{grid-template-columns:minmax(0,1fr);gap:0.8rem;}
  .stage-1{margin:0 1.6rem 0 0;}
  .stage-2{margin:0 0.8rem;}
  .stage-3{margin-left:1.6rem;}
  .stages li{padding:1.5rem 1.35rem;}
  .stage-sky-box{height:128px;margin:-1.5rem -1.35rem 0.4rem;padding-bottom:18px;}
  .stages li:not(:last-child)::after{top:auto;right:auto;bottom:calc(-0.8rem - 1px);left:50%;width:0;height:calc(0.8rem + 2px);border-top:0;border-left:2px dotted var(--gold);}
  .stage-sky{width:190px;height:80px;}
  .fit-grid,.fit-asym{grid-template-columns:minmax(0,1fr);gap:0.8rem;}
  .fit-col{padding:1.5rem 1.3rem;}

  .timeline{grid-template-columns:minmax(0,1fr);gap:0.8rem;}
  .timeline li{display:grid;grid-template-columns:46px 1fr;column-gap:1rem;padding:1.4rem 1.2rem;}
  .tl-num{grid-row:1/4;margin:0;}
  .timeline li>*:not(.tl-num){grid-column:2;}
  .tl-tag{justify-self:start;}

  .calc{grid-template-columns:minmax(0,1fr);}
  .calc-in,.calc-out{padding:1.5rem 1.25rem;}
  input[type=range]{height:8px;margin:0.5rem 0;}
  input[type=range]::-webkit-slider-thumb{width:30px;height:30px;}
  input[type=range]::-moz-range-thumb{width:18px;height:18px;}

  .slabs{grid-template-columns:minmax(0,1fr);gap:0.8rem;}
  .slabs>div{padding:1.6rem 1.5rem;}
  .slabs dd{font-size:1.85rem;}
  .result-val{font-size:1.85rem;}

  table{min-width:0;table-layout:fixed;}
  thead th{padding:0.9rem 0.6rem;font-size:0.76rem;}
  tbody th,tbody td{padding:0.85rem 0.6rem;font-size:0.88rem;line-height:1.4;}
  thead th:first-child,tbody th{width:44%;}

  .faq-item{padding:0 1.1rem;}
  .faq-btn{font-size:1rem;padding:1.1rem 0;}
  .faq-body p{padding-right:0;font-size:0.97rem;}

  .apply-trust{margin:1.3rem 0 1.4rem;}
  .sec-night{--nf:90px;padding-top:100px;}
  .sec-night .night-sky{top:16px !important;width:165px;}
  .night-sky{width:200px;top:1.2rem;right:1rem;}
  .cta-h{font-size:clamp(2rem,9vw,2.6rem);margin-bottom:1.2rem !important;}
  /* Phone: a real credit-card shape at the top of the form, number row instead of social columns. */
  .apply-form .mini-wrap{width:min(100%,310px);margin:0 auto 1.2rem;perspective:none;}
  .apply-form .mini-card{aspect-ratio:1.586;justify-content:space-between;border-radius:16px;transform:none;padding:0.85rem 1rem 0.8rem;box-shadow:0 0 0 1px rgba(235,217,180,0.55) inset,0 18px 30px -14px rgba(120,40,80,0.55),0 6px 12px -6px rgba(120,40,80,0.35);}
  .apply-form .mc-top .mini-mark{font-size:0.64rem;letter-spacing:0.24em;}
  .apply-form .mc-label{font-size:0.6rem;padding:0.2rem 0.45rem;letter-spacing:0.06em;}
  .apply-form .mc-socials{gap:0.4rem;}
  .apply-form .mc-socials dt{font-size:0.6rem;letter-spacing:0.08em;}
  .apply-form .mc-socials dd{font-size:0.74rem;}
  .apply-form .mc-chip{width:32px;height:24px;border-radius:5px;}
  .apply-form .mc-nfc{width:18px;height:18px;}
  .apply-form .mc-stars{width:50px;}
  .apply-form .mini-photo{width:30px;height:30px;font-size:0.88rem;}
  .apply-form .mc-holder{gap:0.55rem;}
  .apply-form .mc-k{font-size:0.6rem;letter-spacing:0.1em;}
  .apply-form .mc-name{font-size:0.98rem;}
  .apply-form .mini-note{color:var(--ink-3);font-size:0.76rem;text-align:center;margin:0.75rem 0 0;padding:0;}
  .apply-form{padding:1.4rem 1.2rem;}
  .fld-row{grid-template-columns:minmax(0,1fr);}

  .site-foot{padding-bottom:calc(5.5rem + env(safe-area-inset-bottom,0px));}
  .foot-top{grid-template-columns:1fr 1fr;gap:2rem 1.5rem;}
  .foot-brand{grid-column:1/-1;text-align:center;}
  .foot-brand p{margin-left:auto;margin-right:auto;}
  .foot-col:last-child{grid-column:1/-1;}
  .foot-col li{margin-bottom:0;}
  .foot-col a{display:inline-block;padding:0.45rem 0;overflow-wrap:anywhere;}

  .tg-bubble{right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px));width:54px;height:54px;padding:0;justify-content:center;}
  .tg-bubble span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
  .tg-ico{width:26px;height:26px;}
}
/* Narrow phones: the Apply button stays in the header, so the form is one tap away from anywhere on the page. */
@media(max-width:480px){
  .site-head{gap:0.5rem;}
  .head-cta{min-height:36px;padding:0.4rem 0.75rem;font-size:0.72rem;}
  .head-cta .lbl-long{display:none;}
  .head-cta .lbl-short{display:inline;}
}
@media(max-width:360px){
  .site-head{gap:0.4rem;}
  .logo-word{font-size:0.85rem;letter-spacing:0.16em;margin-right:-0.16em;}
  .lang-toggle{padding:0.4rem 0.65rem;}
  .lang-toggle .ico{display:none;}
  .hero-stats dd{font-size:1.25rem;}
}
@media(hover:none){
  .btn-action:hover{background:var(--ink);transform:none;box-shadow:none;}
  .svc:hover{transform:none;background:var(--pink-50);}
  .ph:hover img{transform:none;}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:0.01ms !important;animation-delay:0ms !important;transition-duration:0.01ms !important;transition-delay:0ms !important;}
  .js .reveal{opacity:1;transform:none;}
  .night-sky .st,.glow,.pin-ring,.mc-shine{animation:none !important;}
  .spk,.pill,.stage-sky .st,.stage-sky line{animation:none !important;opacity:1 !important;transform:none !important;}
  .stages li{transition:none;}
}

/* ---------- Simple pages: legal, thanks, 404 ---------- */
body.lp{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--pink-50) 0,var(--white) 320px);}
.lp-head{width:100%;max-width:880px;margin:0 auto;padding:1.4rem var(--pad-x);display:flex;justify-content:space-between;align-items:center;gap:1rem;}
.lp-langs{display:flex;gap:0.2rem;padding:0.25rem;background:var(--white);border-radius:999px;box-shadow:0 6px 18px -10px rgba(201,61,115,0.4);}
.lp-langs a,.lp-langs span{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:34px;padding:0 0.5rem;border-radius:999px;font-size:0.78rem;font-weight:600;text-decoration:none;color:var(--ink-3);}
.lp-langs span{background:var(--pink-100);color:var(--ink);}
.lp-langs a:hover{color:var(--ink);}
.legal{flex:1;width:100%;max-width:760px;margin:0 auto;padding:1.5rem var(--pad-x) 4rem;}
.lp-back{display:inline-block;margin-bottom:1.6rem;font-size:0.88rem;font-weight:600;color:var(--pink-600);text-decoration:none;}
.legal h1{font-size:clamp(2rem,4.5vw,3rem);line-height:1.08;margin-bottom:0.6rem;}
.legal-date{font-size:0.88rem;color:var(--ink-3);margin-bottom:2.2rem;}
.legal h2{font-size:1.25rem;margin:2.2rem 0 0.7rem;}
.legal p,.legal li{font-size:1rem;line-height:1.75;color:var(--ink-2);margin-bottom:0.8rem;}
.legal ul{padding-left:1.2rem;margin-bottom:0.8rem;}
.legal a{color:var(--pink-600);}
.legal code{font-size:0.88em;background:var(--pink-50);padding:0.1em 0.35em;border-radius:5px;}
.todo{background:#FFF1C2;color:#7A5A12;padding:0.05em 0.35em;border-radius:5px;font-weight:600;}
.link-btn{background:none;border:0;padding:0;font:inherit;color:var(--pink-600);text-decoration:underline;cursor:pointer;}
.lp-foot{background:var(--ink);color:rgba(255,255,255,0.6);padding:2rem var(--pad-x) 2.4rem;font-size:0.85rem;}
.lp-foot .foot-legal{margin:0 auto 1rem;max-width:880px;}
.lp-foot p{max-width:880px;margin:0 auto;}
/* Thanks + 404 */
body.lp-status{background:radial-gradient(70% 55% at 50% 20%,var(--pink-100),transparent 70%),var(--pink-50);}
.status{flex:1;width:100%;max-width:560px;margin:0 auto;padding:3rem var(--pad-x) 4.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.status-stars{display:flex;align-items:flex-end;gap:0.35rem;margin-bottom:1.4rem;}
.status-stars .spk{--s:16px;animation:twinkle 3.6s ease-in-out infinite;}
.status-stars .spk:nth-child(2){--s:28px;animation-delay:-1.2s;}
.status-stars .spk:nth-child(3){animation-delay:-2.4s;}
.status h1{font-size:clamp(2.2rem,6vw,3.4rem);line-height:1.05;margin-bottom:0.9rem;}
.status-lead{font-size:1.15rem;font-weight:600;color:var(--ink);margin-bottom:0.6rem;}
.status p{color:var(--ink-2);line-height:1.7;}
.status-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:0.7rem;margin-top:2rem;}
.status-langs{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.7rem;width:100%;margin-top:2rem;}
.status-langs li{display:flex;flex-direction:column;gap:0.2rem;padding:0.9rem 1rem;background:var(--white);border-radius:18px;box-shadow:0 10px 26px -18px rgba(201,61,115,0.5);}
.status-langs a{font-weight:600;color:var(--pink-600);text-decoration:none;}
.status-langs span{font-size:0.82rem;color:var(--ink-3);}
@media (max-width:640px){.lp-head{padding:1rem var(--pad-x);}.status-btns .btn{width:100%;}}
@media (max-width:400px){.lp-head{flex-wrap:wrap;row-gap:0.8rem;}.lp-langs a,.lp-langs span{min-width:34px;padding:0 0.4rem;}}

/* Cookie choice: the banner fades out while gold and pink stars burst from the button */
.cookie-bar{transition:opacity 0.35s ease,transform 0.35s ease;}
.cookie-bar.leaving{opacity:0;transform:translateX(-50%) translateY(14px);pointer-events:none;}
.burst-star{position:fixed;z-index:600;margin:calc(var(--s) / -2) 0 0 calc(var(--s) / -2);pointer-events:none;filter:drop-shadow(0 0 6px rgba(255,214,150,0.95));animation:burst 1s cubic-bezier(0.15,0.7,0.3,1) both;}
.burst-pink{filter:hue-rotate(-60deg) saturate(2.2) brightness(1.15) drop-shadow(0 0 6px rgba(255,143,182,0.9));}
@keyframes burst{0%{transform:translate(0,0) scale(0.2) rotate(0);opacity:1}65%{opacity:1}100%{transform:translate(var(--x),var(--y)) scale(1) rotate(var(--r));opacity:0}}
.status-stars .spk:nth-child(1){--jx:-46px;--jy:-58px;--jr:-160deg;}
.status-stars .spk:nth-child(2){--jx:0px;--jy:-92px;--jr:200deg;}
.status-stars .spk:nth-child(3){--jx:48px;--jy:-62px;--jr:150deg;}
.status-stars.jump .spk{animation:starjump 1.2s cubic-bezier(0.34,1.3,0.5,1) both;}
.status-stars.jump .spk:nth-child(2){animation-delay:60ms;}
.status-stars.jump .spk:nth-child(3){animation-delay:120ms;}
@keyframes starjump{0%{transform:none}38%{transform:translate(var(--jx),var(--jy)) rotate(var(--jr)) scale(1.6)}100%{transform:none}}
