:root{
  --plum:#6B2A5E;--plum-700:#55204B;--plum-100:#EFE3EC;--plum-50:#F8F0F5;
  --aubergine:#2A1630;--cream:#FBF8F4;--white:#fff;--text:#2A1630;--muted:#5A4757;--border:#E6D6E2;
  --pandan:#8CC63F;--gold:#F2B33D;--on-dark:#fff;--on-dark-muted:#E9DCE6;
  --r:16px;--r-lg:24px;--pill:999px;--sh:0 10px 30px -12px rgba(42,22,48,.25);
  --fs-body:1.125rem;  
  --fs-lead:1.25rem;   
  --fs-h1:2rem;        
  --fs-h2:1.75rem;
  --fs-h3:1.375rem;
  --gap:20px;--pad:20px;--section:56px;
}
@media (min-width:768px){:root{--fs-h1:2.75rem;--fs-h2:2.125rem;--gap:24px;--pad:32px;--section:72px}}
@media (min-width:1200px){:root{--fs-h1:3.5rem;--fs-h2:2.5rem;--fs-lead:1.375rem;--section:96px}}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:120px}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans",Arial,sans-serif;font-size:var(--fs-body);line-height:1.6;color:var(--text);background:var(--cream);overflow-wrap:anywhere}
img{max-width:100%;height:auto;display:block}
h1,h2,h3{line-height:1.2;margin:0 0 .5em;color:var(--plum)}
h1{font-size:var(--fs-h1)} h2{font-size:var(--fs-h2)} h3{font-size:var(--fs-h3)}
p{margin:0 0 1em}
a{color:var(--plum);text-underline-offset:3px}
:focus-visible{outline:3px solid var(--plum);outline-offset:3px;border-radius:6px}
.on-dark :focus-visible{outline-color:var(--pandan)}
.wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--pad)}
.section{padding:var(--section) 0}
.section--white{background:var(--white)}
.section-head{max-width:760px;margin:0 0 32px}
.lead{font-size:var(--fs-lead);color:var(--muted)}
.skip-link{position:absolute;left:-999px;top:8px;background:var(--plum);color:#fff;padding:12px 16px;border-radius:8px;z-index:99}
.skip-link:focus{left:8px}
.ribbon{background:var(--plum-100);color:var(--aubergine);font-size:1rem;text-align:center;padding:8px var(--pad)}
.ribbon b{background:var(--pandan);color:var(--aubergine);padding:2px 10px;border-radius:var(--pill);margin-right:6px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:60px;padding:14px 28px;border-radius:var(--pill);font-size:1.125rem;font-weight:700;text-decoration:none;border:2px solid transparent;cursor:pointer;width:100%;text-align:center}
.btn--primary{background:var(--plum);color:#fff}
.btn--primary:hover{background:var(--plum-700);color:#fff}
.btn--outline{background:var(--white);color:var(--plum);border-color:var(--plum)}
.btn--light{background:#fff;color:var(--plum)}
.btn-row{display:flex;flex-direction:column;gap:12px;margin:24px 0}
@media (min-width:768px){.btn{width:auto}.btn-row{flex-direction:row;flex-wrap:wrap}}

.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid var(--border)}
.header-row{display:flex;align-items:center;gap:12px;min-height:72px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--aubergine);font-weight:800;font-size:1.5rem;margin-right:auto}
.brand img{width:48px;height:48px;border-radius:12px}
.brand .pal{color:var(--plum)}
.lang-toggle{display:inline-flex;padding:4px;border-radius:var(--pill);background:var(--plum-100)}
.lang-toggle button{min-width:56px;min-height:48px;border:0;border-radius:var(--pill);background:transparent;color:var(--plum);font:inherit;font-weight:700;font-size:1rem;cursor:pointer}
.lang-toggle button[aria-pressed="true"]{background:var(--plum);color:#fff}
.menu-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:48px;min-height:48px;padding:0 12px;border:2px solid var(--border);border-radius:12px;background:#fff;color:var(--plum);font:inherit;font-weight:700;font-size:1rem;cursor:pointer}
.menu-btn svg{width:24px;height:24px}
.header-cta{display:none}
.nav{display:none;flex-direction:column;gap:4px;padding:8px 0 16px}
.nav.open{display:flex}
.nav a{display:flex;align-items:center;min-height:56px;padding:0 16px;border-radius:12px;text-decoration:none;font-weight:600;color:var(--aubergine)}
.nav a:hover{background:var(--plum-50)}
.nav .btn{margin-top:8px;color:#fff}
@media (min-width:1200px){
  .header-row{min-height:84px}
  .menu-btn{display:none}
  .nav,.nav.open{display:flex;flex-direction:row;padding:0;gap:2px;margin-left:auto;margin-right:16px}
  .brand{margin-right:0}
  .nav a{min-height:48px;padding:0 14px}
  .nav .btn{display:none}
  .header-cta{display:inline-flex;width:auto;min-height:52px;padding:10px 22px}
}
@media (max-width:1199px){.header-row{flex-wrap:wrap}.nav{flex-basis:100%;order:9}}

@media (max-width:479px){.header-row{gap:8px}.site-header .wrap{padding:0 12px}.brand{font-size:1.125rem;gap:6px}.brand img{width:40px;height:40px;border-radius:10px}.lang-toggle{padding:3px}.lang-toggle button{min-width:48px}.menu-btn{padding:0 8px;gap:4px}}

.hero{background:var(--aubergine);color:var(--on-dark);padding:48px 0 56px}
.hero h1{color:#fff}
.hero h1 .hl{color:var(--pandan)} 
.hero .lead{color:var(--on-dark-muted)}
.hero-grid{display:grid;gap:40px;align-items:center}
.pill{display:inline-block;background:var(--pandan);color:var(--aubergine);font-weight:700;font-size:1rem;padding:6px 14px;border-radius:var(--pill);margin-bottom:16px}
.checks{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.checks li{display:flex;gap:12px;align-items:flex-start}
.tick{flex:none;width:28px;height:28px;border-radius:50%;background:var(--pandan);color:var(--aubergine);display:inline-flex;align-items:center;justify-content:center;margin-top:2px}
.tick svg{width:18px;height:18px}
.phones{display:flex;justify-content:center;gap:16px}
.phones figure{margin:0;filter:drop-shadow(0 20px 30px rgba(0,0,0,.45))}
.phones img{width:100%}
.phones figure:not(.framed) img{border-radius:30px 30px 0 0}
.phones .framed{background:#120a15;border-radius:28px;padding:8px}
.phones .framed img{border-radius:20px}
.phones .p-main{width:min(72vw,280px)}
.phones .p-side{display:none;width:200px;align-self:flex-end}
@media (min-width:768px){.phones .p-side{display:block}}
@media (min-width:1200px){.hero{padding:80px 0 96px}.hero-grid{grid-template-columns:1fr 1fr;gap:56px}.phones .p-main{width:270px}.phones .p-side{width:190px}}

.grid{display:grid;gap:var(--gap)}
@media (min-width:768px){.grid-2{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1200px){.grid-4{grid-template-columns:repeat(4,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}}
@media (min-width:768px) and (max-width:1199px){.grid-4{grid-template-columns:repeat(2,1fr)}}

.card{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);padding:28px;box-shadow:var(--sh)}
.card h3{margin-top:12px}
.card p{color:var(--muted);margin:0}
.icon-box{width:64px;height:64px;border-radius:18px;background:var(--plum-100);color:var(--plum);display:flex;align-items:center;justify-content:center}
.icon-box svg{width:34px;height:34px}

.why{background:var(--plum-50)}
.usp-list{list-style:none;padding:0;margin:0;display:grid;gap:16px}
@media (min-width:768px){.usp-list{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1200px){.usp-list{grid-template-columns:repeat(5,1fr)}}
.usp{background:#fff;border-radius:var(--r);padding:22px;border-left:6px solid var(--plum)}
.usp strong{display:block;font-size:1.2rem;color:var(--aubergine);margin-bottom:6px}
.usp span{color:var(--muted)}
.note{font-size:1rem;color:var(--muted);margin-top:16px}

.steps{counter-reset:s;list-style:none;padding:0;margin:0;display:grid;gap:var(--gap)}
@media (min-width:768px){.steps{grid-template-columns:repeat(3,1fr)}}
.steps li{counter-increment:s;background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:28px}
.steps li::before{content:counter(s);display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:var(--plum);color:#fff;font-weight:800;font-size:1.5rem;margin-bottom:12px}

.elder{display:grid;gap:24px;align-items:center}
@media (min-width:1200px){.elder{grid-template-columns:1.1fr 1fr}}
.big-sample{background:#fff;border:2px solid var(--border);border-radius:var(--r-lg);padding:28px;font-size:1.5rem;font-weight:700;color:var(--aubergine)}
.big-sample .btn{margin-top:16px;min-height:72px;font-size:1.375rem}

.packages{display:flex;flex-direction:column;gap:var(--gap)}
.pkg{position:relative;background:#fff;border:2px solid var(--border);border-radius:var(--r-lg);padding:32px 28px;display:flex;flex-direction:column}
.pkg--gold{border-color:var(--plum);order:-1;box-shadow:var(--sh)}
.badge{position:absolute;top:-16px;left:28px;background:var(--gold);color:var(--aubergine);font-weight:800;font-size:1rem;padding:6px 14px;border-radius:var(--pill)}
.pkg h3{display:flex;align-items:center;gap:10px;margin:0 0 4px}
.pkg h3 img{width:36px;height:36px}
.price{font-size:2.25rem;font-weight:800;color:var(--aubergine);margin:12px 0 4px}
.price small{font-size:1.125rem;font-weight:600;color:var(--muted)}
.pkg ul{list-style:none;padding:0;margin:16px 0 24px;display:grid;gap:10px;flex:1}
.pkg li{display:flex;gap:10px}
@media (min-width:768px) and (max-width:1023px){.packages{max-width:620px;margin:0 auto}}
@media (min-width:1024px){.packages{flex-direction:row;align-items:stretch}.pkg{flex:1}.pkg--gold{order:0}}
@media (min-width:1200px){.pkg--gold{transform:translateY(-12px)}}
.pkg-foot{font-size:1rem;color:var(--muted);margin-top:20px}

.contact{display:grid;gap:32px}
@media (min-width:1200px){.contact{grid-template-columns:1fr 1.2fr;gap:56px}}
.form{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:28px;display:grid;gap:18px}
@media (min-width:768px){.form .two{display:grid;grid-template-columns:1fr 1fr;gap:18px}}
.field{display:grid;gap:6px}
.field label{font-weight:700}
.field input,.field select,.field textarea{font:inherit;font-size:1.125rem;min-height:56px;padding:12px 16px;border:2px solid var(--border);border-radius:12px;background:#fff;color:var(--text);width:100%}
.field textarea{min-height:120px}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--plum);outline:3px solid var(--plum-100)}
.hint{font-size:1rem;color:var(--muted)}
#form-status{display:none;background:var(--plum-100);color:var(--aubergine);border-radius:12px;padding:16px;font-weight:600}
#form-status.show{display:block}
.contact-points{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:14px}
.contact-points li{display:flex;gap:12px;align-items:flex-start}

.site-footer{background:var(--aubergine);color:var(--on-dark-muted);padding:48px 0 32px}
.site-footer a{color:#fff}
.foot-grid{display:grid;gap:24px}
@media (min-width:768px){.foot-grid{grid-template-columns:2fr 1fr 1fr}}
.site-footer .brand{color:#fff}
.site-footer .brand .pal{color:var(--pandan)}
.foot-links{list-style:none;padding:0;margin:0;display:grid;gap:4px}
.foot-links a{display:inline-flex;min-height:48px;align-items:center}
.copy{border-top:1px solid rgba(255,255,255,.15);margin-top:32px;padding-top:20px;font-size:1rem}

@media (max-width:379px){.menu-btn{padding:0;width:48px}.menu-btn span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}
.field input,.field select{min-height:60px}
.brand{min-height:44px}
.hint,.pkg-foot,.note,.copy,.ribbon{font-size:1.125rem}
.price small{white-space:nowrap}
.pkg .btn{padding:14px 16px}
.foot-links .soon{display:flex;min-height:48px;align-items:center}
@media (max-width:359px){.site-header .brand>span:not(.logo-wrap){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}
.pkg .btn{width:100%}
.price{white-space:nowrap}
.pkg ul{align-content:start}

.lang-switch{display:inline-flex;align-items:center;min-height:60px;text-decoration:none;border-radius:var(--pill);-webkit-tap-highlight-color:transparent}
.ls-track{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;width:128px;height:60px;padding:4px;box-sizing:border-box;border:2px solid var(--plum);border-radius:var(--pill);background:var(--plum-100)}
.ls-knob{position:absolute;top:4px;left:4px;width:calc(50% - 6px);height:calc(100% - 8px);border-radius:var(--pill);background:var(--plum);box-shadow:0 2px 6px rgba(42,22,48,.3);transition:transform .28s cubic-bezier(.3,.7,.2,1)}
.lang-switch[aria-checked="true"] .ls-knob{transform:translateX(calc(100% + 4px))}
.ls-opt{position:relative;z-index:1;text-align:center;font-weight:800;font-size:1.25rem;line-height:1;color:var(--plum);transition:color .28s}
.lang-switch[aria-checked="false"] .ls-en,.lang-switch[aria-checked="true"] .ls-bm{color:#fff}
@media (hover:hover){.lang-switch:hover .ls-track{border-color:var(--aubergine)}}
.lang-switch:focus-visible{outline:3px solid var(--plum);outline-offset:3px}
@media (max-width:379px){.ls-track{width:116px}}
@media (prefers-reduced-motion:reduce){.ls-knob,.ls-opt{transition:none}}
.header-row>*{flex:none}
.brand,.nav a,.lang-switch,.header-cta{white-space:nowrap;overflow-wrap:normal}
@media (min-width:1200px){.lang-switch{order:5}.header-cta{order:6}.nav,.nav.open{margin-left:auto;margin-right:8px}}
.pill,.badge,.menu-btn,.lang-toggle button{font-size:1.125rem}

@media (max-width:599px){.menu-btn{padding:0;width:48px}.menu-btn span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}
