/* Bridal Luxe theme layer: loaded LAST on every page. Ivory paper, dusty rose, champagne gold, warm charcoal.
   Re-maps the old night/crimson tokens so former dark sections become light editorial ones. */
:root{
  --bg:#FBF8F4;--soft:#F4EDE4;--cream:#F4EDE4;--bg2:#FFFFFF;
  --ink:#2E2A28;--mute:#6E6662;--line:#E8DFD6;
  --brand:#9A5A62;--brand-d:#7E4750;--rose:#9A5A62;--rose-l:#C98A8F;--blush:#F3E4E2;
  --gold:#B89968;--gold-d:#7E6338;
  --night:#F4EDE4;--night2:#FFFFFF;--nl:#E8DFD6;--nmute:#6E6662;
  /* 404 page tokens */
  --paper:#FBF8F4;--paper-2:#F4EDE4;--rule:#E3D8CC;--red:#9A5A62;
  --sans:"Anuphan",system-ui,-apple-system,"Segoe UI",sans-serif;--serif:"Noto Serif Thai","Anuphan",Georgia,serif
}
html{background:var(--bg)}
body{background:var(--bg);color:var(--ink)}
::selection{background:#F0D9DA;color:var(--ink)}
:where(a,button,input,select,summary):focus-visible{outline:2px solid var(--brand)!important;outline-offset:3px}
h1,h2,h3,.serif{font-family:var(--serif);font-weight:600;letter-spacing:-.005em;color:inherit}
h1 em,h2 em,.dark h2 em,.big h2 em{font-style:normal;color:var(--brand)}
.eyebrow,.big .eyebrow,.mission span,.k{color:var(--gold-d)!important;letter-spacing:.14em;font-weight:600}
.eyebrow:before,.k:before{content:"";display:inline-block;width:22px;height:1px;background:var(--gold);vertical-align:middle;margin-right:10px}

/* header */
header.top{background:rgba(251,248,244,.9)!important;border-bottom:1px solid var(--line)}
header.top .nav-cta,.nav-cta{background:var(--ink)!important;color:#FBF8F4!important;border-radius:999px!important}
header.top .nav-cta:hover{background:var(--brand)!important}
.nav-link{color:var(--mute)!important}.nav-link:hover{color:var(--ink)!important}
.mark i,.mark .dot{background:var(--gold)!important;box-shadow:none!important}

/* buttons: soft pill, no heavy shadows */
.btn{border-radius:999px;background:var(--brand);color:#fff;box-shadow:0 10px 24px -16px rgba(126,71,80,.55)}
.btn:hover{background:var(--brand-d)}
.btn.ghost{background:transparent!important;color:var(--ink)!important;box-shadow:inset 0 0 0 1px var(--gold)!important}
.btn.ghost:hover{background:rgba(184,153,104,.08)!important;box-shadow:inset 0 0 0 1px var(--gold-d)!important}
.btn.ink{background:var(--ink)}
.btn.line,.btn-line{background:#05843c}

/* hero: light editorial */
.hero{background:linear-gradient(180deg,#FBF8F4 0%,#F6EEE7 100%)!important;color:var(--ink)!important;border-bottom:1px solid var(--line)}
.hero:before{background:radial-gradient(42% 50% at 78% 30%,rgba(201,138,143,.18),transparent 70%),radial-gradient(34% 40% at 10% 90%,rgba(184,153,104,.14),transparent 70%)!important;animation:none!important}
.hero:after{content:"";position:absolute;left:50%;top:0;width:1px;height:56px;background:linear-gradient(var(--gold),transparent);opacity:.6;pointer-events:none}
.h1-kw{color:var(--gold-d)!important;letter-spacing:.06em}
.lead,.hero .lead{color:var(--mute)!important}
.lead b,.trust b,.big li b,.prod li b,.days p b{color:var(--ink)!important}
.trust{color:var(--mute)!important}
.trust li:before,.prod li:before{border-color:var(--gold)!important}

/* device frames: light */
.dev,.mini,.try .dv,.dv .fr,.frame{background:#FFFFFF!important;box-shadow:0 0 0 1px var(--line),0 30px 60px -34px rgba(46,42,40,.35)!important}
.dev .scr,.try .scr{background:#F4EDE4!important}
.tag,.dv .tag{color:var(--ink)!important;background:rgba(255,255,255,.85)!important;border:1px solid var(--line)!important}
.wire path{stroke:rgba(184,153,104,.7)!important}
.wire circle{fill:var(--gold)!important;filter:none!important}
.bo-k .hot{border-color:#E9CFD1;background:#FBF1F1}
.bo-l .new{border-color:#E9CFD1;box-shadow:0 6px 16px -12px rgba(154,90,98,.5)}
.pill{background:var(--blush);color:var(--brand)}

/* former dark sections */
.dark{background:var(--cream)!important;color:var(--ink)!important}
.dark .sub,.dark .p{color:var(--mute)!important}.dark .k{color:var(--gold-d)!important}
.pane{background:#FFFFFF!important;border-color:var(--line)!important}
.pane.good{background:linear-gradient(160deg,#FFFFFF,#FBF4F1)!important;border-color:#E9CFD1!important}
.pane>p{color:var(--mute)!important}
.bub{background:#F4EDE4!important;color:var(--ink)!important}
.bub.me{background:#F3E4E2!important}
.bub small{color:var(--mute)!important}
.bub.miss{outline:1px dashed var(--rose-l)!important}
.flow li{background:#FFFFFF!important;border-color:var(--line)!important}
.flow i,.try ol li:before{background:var(--blush)!important}
.flow i svg{stroke:var(--brand)!important}
.flow span{color:var(--mute)!important}
.flow li.done{border-color:#BFE0CB!important;background:#F2FAF5!important}.flow li.done i svg{stroke:#137a3d!important}
.try ol{color:var(--ink)!important}
.try ol li:before{color:var(--brand)!important}
.try .note{color:var(--mute)!important}.try .note a,.cta a:not(.btn){color:var(--brand)!important}
.big,.prod{background:linear-gradient(160deg,#FFFFFF,#F7EFE9)!important;color:var(--ink)!important;border:1px solid var(--line)!important;box-shadow:0 30px 60px -44px rgba(46,42,40,.4)!important}
.big .sub{color:var(--mute)!important}
.big ul{color:var(--mute)!important}
.big li{background:rgba(255,255,255,.7)!important;border-color:var(--line)!important}
.big li svg{stroke:var(--gold-d)!important}
.prod .pill{background:#E9F5EE;color:#137a3d}.prod .pill:before{background:#2E9B5B}
.cta{background:linear-gradient(160deg,#F4EDE4,#F7EEEC)!important;color:var(--ink)!important;border:1px solid var(--line)}
.cta p{color:var(--mute)!important}
.cgrid a{background:#FFFFFF}
.cgrid a.ft{background:var(--ink)!important;color:#FBF8F4!important;border-color:var(--ink)!important}
.cgrid a.ft span{color:#E3D8CC!important}
.cgrid em{color:var(--brand)!important;border-color:#E9CFD1!important}
.cgrid a:hover,.gcards a:hover,.glist a.card:hover{border-color:var(--gold)!important}
.mission div{background:#FFFFFF!important}
.ways a{background:#FFFFFF!important;border-color:var(--line)!important}
.ways a:hover{border-color:var(--gold)!important}
.ways a.tel i{background:var(--brand)!important}
.ways span{color:var(--mute)!important}
form{box-shadow:0 30px 60px -40px rgba(46,42,40,.35)!important;border:1px solid var(--line)}
.unread{background:var(--brand)}
.plus{background:var(--gold)!important;color:#fff}
.steps li>i svg,.half .who,.more-link{stroke:var(--brand);color:var(--brand)}
.half li:before,.check li:before{border-color:var(--gold)!important}
.founder img{box-shadow:0 0 0 1px var(--gold),0 0 0 7px var(--bg),0 20px 40px -24px rgba(46,42,40,.4)!important}
footer a:hover{color:var(--ink)!important}
.days div{border-color:var(--rule)!important}.days em{color:var(--gold-d)!important}.days p{color:var(--mute)!important}
section{border-color:var(--line)}

/* motion: gentle fade/rise only */
.js .rv{filter:none!important;transform:translateY(14px);transition:opacity 1.1s cubic-bezier(.22,.61,.36,1),transform 1.1s cubic-bezier(.22,.61,.36,1)!important;transition-delay:var(--d,0s)!important}
.js .rv.in{transform:none}
.bo-l .new{animation-duration:7s}
@media (prefers-reduced-motion:reduce){.js .rv{opacity:1!important;transform:none!important}.bo-l .new,.wire circle,.dev{animation:none!important}}

/* live sample-shop embed: real phone width scaled to fit (see demo-frame.js) */
#demoScr{aspect-ratio:390/844!important;height:auto!important}
#demoScr .demo-if{position:absolute!important;left:0!important;top:0!important;right:auto!important;bottom:auto!important;width:390px!important;height:844px!important;transform-origin:0 0;border:0}
#demoScr picture{position:absolute;inset:0;z-index:2;transition:opacity .6s ease}
#demoScr picture img{width:100%;height:100%;object-fit:cover;object-position:top}
#demoScr.ready picture{opacity:0;pointer-events:none}
#demoScr .btn{z-index:3}
.try .dv{width:340px!important}
