:root{--ink:#0F172A;--muted:#6B7280;--night:#F8F9FB;--navy:#0F172A;--line:rgba(15,23,42,.13);--glass:rgba(255,255,255,.72);--cyan:#8B5CF6;--blue:#6D28D9;--gold:#6D28D9;--mint:#7C3AED;--radius:28px;--shadow:0 30px 80px rgba(15,23,42,.15)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--night);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}em{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:#b8d8ff}.aurora{position:fixed;z-index:-2;border-radius:50%;filter:blur(100px);opacity:.3;pointer-events:none}.aurora-a{width:680px;height:680px;background:#0d5da3;top:-300px;right:-180px}.aurora-b{width:560px;height:560px;background:#3c296e;top:65vh;left:-300px}
.site-header{position:fixed;z-index:50;top:16px;left:50%;transform:translateX(-50%);width:min(1180px,calc(100% - 32px));height:66px;padding:8px 10px 8px 20px;display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:22px;background:rgba(7,16,28,.7);backdrop-filter:blur(24px) saturate(150%);box-shadow:0 12px 40px rgba(0,0,0,.24)}.brand{display:flex;align-items:center;gap:10px;font-weight:750;letter-spacing:-.03em}.brand-mark{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:linear-gradient(145deg,#b7f2ff,#5674ff 55%,#d1a5ff);box-shadow:inset 0 1px rgba(255,255,255,.8),0 0 22px rgba(108,231,255,.24)}.brand-mark span{width:11px;height:14px;border:2px solid #07111f;border-top-width:4px;border-radius:3px}.site-header nav{display:flex;gap:32px;color:#b4c2d2;font-size:14px}.site-header nav a:hover{color:#fff}.nav-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:15px;font-size:14px;font-weight:750;transition:.25s ease}.nav-cta{height:48px;padding:0 18px;background:rgba(255,255,255,.1);border:1px solid var(--line)}.nav-cta:hover,.button-ghost:hover{background:rgba(255,255,255,.16);transform:translateY(-2px)}.menu-button{display:none;border:0;background:none}
.hero{min-height:940px;max-width:1320px;margin:auto;padding:150px 36px 80px;display:grid;grid-template-columns:.82fr 1.18fr;gap:58px;align-items:center}.hero-copy{position:relative;z-index:5}.eyebrow,.section-number{display:flex;align-items:center;gap:9px;color:#a8b9cc;font-weight:700;font-size:12px;letter-spacing:.13em;text-transform:uppercase}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 14px var(--mint)}h1{font-size:clamp(55px,6.2vw,94px);line-height:.93;letter-spacing:-.065em;margin:27px 0}h1 em{display:inline-block}.hero-lede{max-width:590px;font-size:18px;line-height:1.65;color:#a9b9cb}.hero-actions{display:flex;gap:12px;margin-top:36px}.button{min-height:53px;padding:0 22px}.button-primary{color:#04111d;background:linear-gradient(135deg,#e8fbff,#8ddffe 46%,#8aa7ff);box-shadow:0 12px 35px rgba(82,154,255,.26),inset 0 1px #fff}.button-primary:hover{transform:translateY(-2px);box-shadow:0 16px 42px rgba(82,154,255,.38)}.button-ghost{border:1px solid var(--line);background:rgba(255,255,255,.055)}.play{font-size:10px;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.1)}.trust-line{margin-top:42px;display:flex;align-items:center;gap:14px;color:#7f92a8;font-size:12px}.trust-line p{margin:0}.trust-line strong{color:#cbd7e5}.avatars{display:flex}.avatars i{width:32px;height:32px;margin-left:-8px;border:2px solid var(--night);border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:9px;color:#07111f;font-weight:800;background:linear-gradient(135deg,#d7f8ff,#918eff)}.avatars i:first-child{margin-left:0}
.hero-visual{position:relative;height:690px;border:1px solid rgba(255,255,255,.16);border-radius:42px;overflow:hidden;box-shadow:var(--shadow);isolation:isolate}.hero-visual>img{width:100%;height:100%;object-fit:cover}.visual-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,8,15,.04),rgba(3,10,17,.22) 55%,rgba(3,9,17,.88)),linear-gradient(90deg,rgba(2,8,14,.18),transparent)}.glass-card,.glass-panel{border:1px solid rgba(255,255,255,.19);background:linear-gradient(135deg,rgba(255,255,255,.17),rgba(10,27,44,.44));backdrop-filter:blur(22px) saturate(145%);box-shadow:inset 0 1px rgba(255,255,255,.22),0 20px 55px rgba(0,0,0,.25)}.float-card{position:absolute;z-index:3}.revenue-card{top:42px;right:34px;width:218px;padding:18px;border-radius:22px}.card-kicker{display:block;color:#b7c5d5;font-size:11px;letter-spacing:.04em}.revenue-card strong{font-size:27px;display:inline-block;margin:7px 7px 0 0}.up{font-size:11px;color:var(--mint)}.revenue-card svg{width:100%;height:48px;display:block;margin-top:5px;overflow:visible}.revenue-card path{fill:none;stroke:#89efff;stroke-width:2;filter:drop-shadow(0 0 6px #5ee1ff)}.guest-card{left:25px;top:43%;padding:12px 16px 12px 12px;border-radius:18px;display:flex;align-items:center;gap:11px}.guest-card strong{font-size:12px;display:block;margin-top:3px}.guest-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:rgba(100,232,189,.16);color:var(--mint)}
.orb-shell{position:absolute;z-index:5;left:50%;bottom:23px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;touch-action:none}.orb-shell>span{font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:rgba(255,255,255,.72);transition:opacity .3s}.liquid-orb{position:relative;width:132px;height:132px;border:1px solid rgba(255,255,255,.68);border-radius:50%;cursor:grab;background:radial-gradient(circle at 32% 24%,rgba(255,255,255,.8),rgba(117,218,255,.18) 16%,rgba(28,92,143,.12) 48%,rgba(3,13,24,.52) 78%),linear-gradient(150deg,rgba(255,255,255,.2),rgba(91,142,255,.08));backdrop-filter:blur(15px) saturate(170%);box-shadow:inset 10px 12px 24px rgba(255,255,255,.25),inset -16px -14px 28px rgba(5,19,35,.6),0 0 0 6px rgba(255,255,255,.05),0 25px 55px rgba(1,8,15,.5);transition:transform .45s cubic-bezier(.2,.85,.25,1),width .45s,height .45s}.liquid-orb:active{cursor:grabbing}.orb-glare{position:absolute;inset:9px 20px auto 20px;height:25%;border-radius:50%;background:linear-gradient(180deg,rgba(255,255,255,.7),transparent);filter:blur(3px)}.orb-core{position:absolute;inset:0;display:grid;place-items:center;font-size:22px;text-shadow:0 0 14px #fff}.hero-visual.open .liquid-orb{transform:translateY(-235px) scale(.43);box-shadow:inset 5px 6px 14px rgba(255,255,255,.35),0 0 45px rgba(90,205,255,.55)}.hero-visual.open .orb-shell>span{opacity:0}.plume{position:absolute;z-index:4;left:50%;bottom:165px}.plume span{position:absolute;left:0;top:0;padding:9px 12px;border:1px solid rgba(255,255,255,.18);border-radius:13px;background:rgba(12,28,44,.72);backdrop-filter:blur(12px);font-size:10px;font-weight:700;opacity:0;transform:translate(-50%,30px) scale(.5);transition:.55s cubic-bezier(.2,.8,.25,1)}.hero-visual.open .plume span{opacity:1;transform:translate(calc(-50% + var(--x)),var(--y)) rotate(var(--r));transition-delay:calc(var(--y) * -.0005s)}
.logo-strip{max-width:1200px;margin:-18px auto 110px;padding:22px 30px;display:flex;align-items:center;justify-content:space-around;border-block:1px solid var(--line);color:#64768a}.logo-strip span{font-size:11px;text-transform:uppercase;letter-spacing:.13em}.logo-strip b{font-size:17px;color:#9babbc;letter-spacing:-.04em}
section:not(.hero){scroll-margin-top:110px}.cockpit-section,.modules-section,.pricing-section{max-width:1200px;margin:0 auto;padding:100px 30px}.section-heading{display:grid;grid-template-columns:180px 1fr .65fr;gap:40px;align-items:end;margin-bottom:60px}.section-heading h2{font-size:clamp(40px,5vw,66px);line-height:1.02;letter-spacing:-.055em;margin:0}.section-heading p{color:var(--muted);margin:0;font-size:16px;line-height:1.65}.dashboard-frame{min-height:640px;padding:10px;border-radius:34px;display:grid;grid-template-columns:66px 1fr;background:linear-gradient(145deg,rgba(19,42,64,.66),rgba(5,14,25,.8));overflow:hidden}.dash-nav{padding:10px 7px;display:flex;flex-direction:column;align-items:center;gap:13px;border-right:1px solid rgba(255,255,255,.08)}.mini-brand{margin:5px 0 24px}.dash-nav button{width:42px;height:42px;border:0;border-radius:13px;background:transparent;color:#778b9f}.dash-nav button.active{background:rgba(112,211,255,.14);color:#9be9ff}.dash-nav .settings{margin-top:auto}.dash-main{padding:26px}.dash-top{display:flex;justify-content:space-between;align-items:center}.dash-top small{color:#718397;font-size:10px;letter-spacing:.12em}.dash-top h3{font-size:27px;margin:5px 0}.dash-actions{display:flex;align-items:center;gap:12px}.dash-actions button{border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.05);padding:10px;color:#b7c5d3}.avatar{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#85e7ff,#7176e8);color:#07111f;font-weight:800;font-size:12px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:25px 0}.stats-grid article,.calendar-widget,.tasks-widget{border:1px solid rgba(255,255,255,.08);background:rgba(5,15,26,.42);border-radius:18px;padding:18px}.stats-grid small{display:block;color:#8193a7}.stats-grid strong{display:inline-block;font-size:25px;margin:10px 8px 0 0}.stats-grid span{font-size:11px;color:#8293a6}.stats-grid .positive{color:var(--mint)}.stats-grid strong i{color:#f1c865;font-style:normal;font-size:15px}.meter{height:4px;background:#233449;border-radius:5px;margin-top:16px}.meter i{display:block;width:84%;height:100%;border-radius:5px;background:linear-gradient(90deg,#68e5ff,#8b8aff)}.dash-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:14px}.widget-title{display:flex;justify-content:space-between;color:#91a2b5;font-size:12px}.widget-title b{color:#dbe6f1}.week{display:grid;grid-template-columns:repeat(7,1fr);color:#66788a;font-size:9px;margin:22px 0 12px}.week span{text-align:center}.bookings{display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:45px;gap:7px;background:linear-gradient(90deg,transparent 13%,rgba(255,255,255,.035) 13% 14%,transparent 14% 27%,rgba(255,255,255,.035) 27% 28%,transparent 28% 41%,rgba(255,255,255,.035) 41% 42%,transparent 42% 55%,rgba(255,255,255,.035) 55% 56%,transparent 56%)}.bookings i{grid-column:var(--start)/span var(--width);align-self:center;padding:9px 12px;border-radius:9px;background:rgba(80,154,255,.2);border-left:2px solid #70caff;color:#cfe9ff;font-size:9px;font-style:normal}.bookings i:nth-child(2){background:rgba(178,130,255,.19);border-color:#b38eff}.bookings i:nth-child(3){background:rgba(83,218,176,.18);border-color:#63dfbd}.tasks-widget ul{list-style:none;padding:0;margin:12px 0 0}.tasks-widget li{display:flex;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.06)}.tasks-widget li:last-child{border:0}.tasks-widget li div{flex:1}.tasks-widget b,.tasks-widget small{display:block;font-size:10px}.tasks-widget small,.tasks-widget li>span{color:#75879b;margin-top:3px}.status{width:7px;height:7px;border-radius:50%}.amber{background:#ffc269}.mint{background:var(--mint)}.blue{background:#65b8ff}
.section-heading.compact{grid-template-columns:180px 1fr;margin-bottom:60px}.bento-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.bento{min-height:350px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(140deg,rgba(19,35,53,.76),rgba(8,17,28,.7));padding:28px;overflow:hidden;position:relative}.bento-wide{grid-column:span 1}.bento-dark{background:radial-gradient(circle at 100% 100%,rgba(93,95,230,.32),transparent 45%),#07111e}.icon-glass{width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.17);border-radius:15px;background:rgba(255,255,255,.07);box-shadow:inset 0 1px rgba(255,255,255,.2);margin-bottom:42px}.bento>span,.bento>div>span{font-size:10px;color:#788ca0;letter-spacing:.13em}.bento h3{font-size:27px;letter-spacing:-.035em;margin:8px 0}.bento p{color:#8fa1b5;max-width:450px}.mini-calendar{position:absolute;left:28px;right:28px;bottom:25px;display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.mini-calendar i{height:34px;border-radius:8px;background:rgba(255,255,255,.045)}.mini-calendar i.stay{grid-column:3/span 4;background:linear-gradient(90deg,rgba(89,221,255,.24),rgba(136,129,255,.24));border:1px solid rgba(123,211,255,.3)}.automation-flow{display:flex;align-items:center;gap:12px;position:absolute;left:28px;bottom:35px}.automation-flow i{padding:13px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.06);font-size:11px;font-style:normal}.automation-flow b{color:#8bcfff}.message-preview{position:absolute;left:28px;right:28px;bottom:28px;padding:15px;border-radius:17px;background:rgba(255,255,255,.06);display:flex;gap:12px;align-items:center}.message-preview i{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#876fd5;font-style:normal;font-size:10px}.message-preview b,.message-preview small{display:block;font-size:11px}.message-preview small{color:#8ea1b4;margin-top:4px}.task-progress{position:absolute;left:28px;right:28px;bottom:30px;display:flex;gap:12px}.task-progress span{flex:1;padding:15px;background:rgba(255,255,255,.055);border-radius:14px;color:#889bad}.task-progress b{font-size:22px;color:#e9f3ff;margin-right:5px}.finance{grid-column:1/-1;min-height:290px;display:flex;align-items:center;justify-content:space-between;background:radial-gradient(circle at 80% 40%,rgba(64,198,199,.17),transparent 35%),linear-gradient(140deg,rgba(19,35,53,.76),rgba(8,17,28,.7))}.donut{width:165px;height:165px;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle closest-side,#0a1725 75%,transparent 76% 99%),conic-gradient(#65e4c0 72%,rgba(255,255,255,.08) 0)}.donut strong{font-size:28px}.donut span{font-size:10px;color:#8395a8}
.section-heading.centered{display:block;text-align:center;max-width:760px;margin:0 auto 60px}.section-heading.centered .section-number{justify-content:center;margin-bottom:20px}.section-heading.centered p{max-width:560px;margin:20px auto 0}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:center}.price-card{border-radius:28px;padding:30px;min-height:510px;display:flex;flex-direction:column}.price-card>span{font-size:11px;letter-spacing:.15em;color:#8da0b4}.price-card h3{font-size:42px;letter-spacing:-.05em;margin:22px 0 5px}.price-card h3 small{font-size:11px;color:#7d90a5;font-weight:500;letter-spacing:0}.price-card p{min-height:62px;color:#8fa1b5}.price-card ul{list-style:none;padding:18px 0;margin:10px 0 25px;border-top:1px solid var(--line)}.price-card li{padding:9px 0;color:#b8c6d6;font-size:14px}.price-card li:before{content:'✓';color:var(--mint);margin-right:10px}.price-card .button{margin-top:auto}.featured{position:relative;min-height:555px;padding:36px 30px;border:1px solid rgba(131,220,255,.5);border-radius:30px;background:radial-gradient(circle at 50% 0,rgba(70,152,238,.22),transparent 40%),linear-gradient(160deg,#10283c,#081522);box-shadow:0 25px 70px rgba(22,87,148,.25),inset 0 1px rgba(255,255,255,.15)}.popular{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:linear-gradient(90deg,#97efff,#a8b7ff);color:#07111f;padding:6px 12px;border-radius:20px;font-size:9px;font-weight:900;letter-spacing:.1em;white-space:nowrap}
.final-cta{position:relative;max-width:1200px;margin:100px auto;padding:100px 40px;border:1px solid var(--line);border-radius:38px;overflow:hidden;text-align:center;background:linear-gradient(150deg,#0c2034,#080f1b)}.final-cta>div:last-child{position:relative;z-index:2}.final-cta .section-number{justify-content:center}.final-cta h2{font-size:clamp(45px,6vw,76px);line-height:1;letter-spacing:-.055em;margin:25px 0 38px}.cta-orb{position:absolute;width:580px;height:580px;left:50%;top:35%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.3),rgba(70,183,255,.13) 22%,rgba(61,63,151,.06) 50%,transparent 68%);border:1px solid rgba(255,255,255,.1);filter:blur(.2px);box-shadow:inset 25px 20px 70px rgba(255,255,255,.08),0 0 120px rgba(65,141,214,.18)}footer{max-width:1200px;margin:auto;padding:35px 30px 50px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;color:#718398;font-size:12px}footer p{text-align:center}footer>div{display:flex;justify-content:flex-end;gap:20px}
@media(max-width:960px){.site-header nav{display:none}.hero{grid-template-columns:1fr;padding-top:130px}.hero-copy{text-align:center}.eyebrow{justify-content:center}.hero-lede{margin-inline:auto}.hero-actions,.trust-line{justify-content:center}.hero-visual{height:620px}.logo-strip{flex-wrap:wrap;gap:24px}.section-heading,.section-heading.compact{grid-template-columns:1fr;gap:18px}.section-heading p{max-width:650px}.pricing-grid{grid-template-columns:1fr;max-width:620px;margin:auto}.featured{min-height:510px;order:-1}.bento-grid{grid-template-columns:1fr}.finance{grid-column:auto}.dashboard-frame{font-size:90%}.dash-grid{grid-template-columns:1fr}.tasks-widget{display:none}}
@media(max-width:640px){.site-header{top:10px;width:calc(100% - 20px);height:58px}.site-header .nav-cta{display:none}.menu-button{display:flex;flex-direction:column;gap:5px}.menu-button span{width:22px;height:1px;background:#fff}.site-header.menu-open nav{position:absolute;top:67px;left:0;right:0;padding:20px;display:flex;flex-direction:column;gap:18px;border:1px solid var(--line);border-radius:18px;background:rgba(6,15,27,.96)}.hero{min-height:auto;padding:115px 16px 55px;gap:38px}h1{font-size:53px}.hero-lede{font-size:16px}.hero-actions{flex-direction:column}.hero-actions .button{width:100%}.trust-line{align-items:flex-start;text-align:left}.hero-visual{height:530px;border-radius:28px}.revenue-card{right:14px;top:18px;width:185px}.guest-card{left:12px;top:45%}.liquid-orb{width:112px;height:112px}.hero-visual.open .liquid-orb{transform:translateY(-205px) scale(.45)}.plume{bottom:140px}.logo-strip{margin:30px 16px 55px;justify-content:center}.logo-strip span{width:100%;text-align:center}.cockpit-section,.modules-section,.pricing-section{padding:68px 16px}.section-heading{margin-bottom:38px}.section-heading h2{font-size:43px}.dashboard-frame{min-height:525px;grid-template-columns:1fr;padding:8px}.dash-nav{display:none}.dash-main{padding:13px}.dash-top h3{font-size:20px}.dash-actions button{display:none}.stats-grid{grid-template-columns:1fr 1fr}.stats-grid article:nth-child(3){display:none}.stats-grid strong{font-size:20px}.calendar-widget{padding:13px}.bento{min-height:330px;padding:23px}.bento h3{font-size:25px}.finance{display:block;min-height:440px}.donut{margin:22px auto 0}.price-card,.featured{min-height:0}.final-cta{margin:60px 16px;padding:80px 20px;border-radius:28px}.final-cta h2{font-size:46px}footer{margin:0 16px;grid-template-columns:1fr;gap:20px;text-align:center}footer .brand,footer>div{justify-content:center}footer p{margin:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Hero readability and loading stability */
h1,.section-heading h2,.final-cta h2{ text-wrap:balance }
.hero-copy h1{max-width:11ch;margin-inline:auto}
.hero-copy h1 .hero-line:nth-child(3){font-size:.72em;letter-spacing:-.02em;margin-top:.14em}
.hero-visual>img{display:block;aspect-ratio:1586 / 992}
@media(max-width:640px){.hero-copy h1{max-width:12ch}.hero-copy h1 .hero-line:nth-child(3){font-size:.68em}}

/* Final rendering pass */
html{scroll-padding-top:110px}
body{ text-wrap:pretty }
.hero-line{ text-wrap:balance }
.cockpit-section,.modules-section,.pricing-section,.final-cta{content-visibility:auto;contain-intrinsic-size:720px}
@media(max-width:640px){
  .aurora{display:none}
  .glass-card,.glass-panel{backdrop-filter:blur(12px) saturate(125%)}
  .cockpit-section,.modules-section,.pricing-section,.final-cta{contain-intrinsic-size:560px}
}
@media(prefers-reduced-motion:reduce){html{scroll-padding-top:0}.cockpit-section,.modules-section,.pricing-section,.final-cta{content-visibility:visible}}

/* StayVault official identity — navy, champagne and warm ivory */
body{background:linear-gradient(180deg,#F8F4EC 0%,#F3EDE1 54%,#F8F5EF 100%);color:var(--ink)}
em{color:var(--gold)}
.aurora{opacity:.18}
.aurora-a{background:#C6A15B}
.aurora-b{background:#8FA895}
.site-header{background:rgba(250,247,239,.86);box-shadow:0 12px 40px rgba(50,42,28,.12)}
.brand-logo{display:block;width:128px;height:auto}
.mini-logo{display:block;width:38px;height:38px}
.brand-mark{display:none}
.site-header nav{color:#53606B}
.site-header nav a:hover{color:var(--navy)}
.nav-cta{color:#fff;background:var(--navy);border-color:var(--navy);box-shadow:0 10px 26px rgba(18,36,59,.16)}
.nav-cta:hover{background:#1B3554}
.eyebrow,.section-number{color:#7B735F}
.live-dot{background:var(--gold);box-shadow:0 0 14px rgba(198,161,91,.58)}
.hero-lede{color:#5F6A70}
.button-primary{color:#fff;background:linear-gradient(135deg,#12243B,#213D5E);border:1px solid rgba(198,161,91,.65);box-shadow:0 12px 30px rgba(18,36,59,.2),inset 0 1px rgba(255,255,255,.18)}
.button-primary:hover{box-shadow:0 16px 38px rgba(18,36,59,.28)}
.button-ghost{color:var(--navy);border-color:rgba(18,36,59,.18);background:rgba(255,255,255,.5)}
.button-ghost:hover{background:#fff}
.play{background:rgba(198,161,91,.17);color:#9A7638}
.trust-line{color:#7A807C}
.trust-line strong{color:var(--navy)}
.avatars i{color:#fff;background:linear-gradient(135deg,#12243B,#8FA895);border-color:#F6F1E7}
.hero-visual{border-color:rgba(198,161,91,.36);box-shadow:0 35px 90px rgba(65,47,23,.2)}
.hero-visual .glass-card{color:#F9F6EF;border-color:rgba(255,255,255,.22);background:linear-gradient(135deg,rgba(18,36,59,.72),rgba(18,36,59,.38))}
.revenue-card path{stroke:#E5C47D;filter:drop-shadow(0 0 6px rgba(198,161,91,.75))}
.up,.guest-icon{color:#E0C482}
.guest-icon{background:rgba(198,161,91,.16)}
.liquid-orb{background:radial-gradient(circle at 32% 24%,rgba(255,255,255,.86),rgba(230,201,139,.28) 16%,rgba(143,168,149,.17) 45%,rgba(18,36,59,.58) 78%),linear-gradient(150deg,rgba(255,255,255,.24),rgba(198,161,91,.12));box-shadow:inset 10px 12px 24px rgba(255,255,255,.3),inset -16px -14px 28px rgba(18,36,59,.64),0 0 0 6px rgba(198,161,91,.1),0 25px 55px rgba(10,20,31,.45)}
.hero-visual.open .liquid-orb{box-shadow:inset 5px 6px 14px rgba(255,255,255,.36),0 0 45px rgba(198,161,91,.55)}
.plume span{color:#FFF9ED;border-color:rgba(198,161,91,.32);background:rgba(18,36,59,.82)}
.logo-strip{color:#847A66}
.logo-strip b{color:#53635D}
.dashboard-frame{color:#F8F4EC;background:linear-gradient(145deg,#1B3654,#0E1D30);border-color:rgba(198,161,91,.26);box-shadow:0 30px 75px rgba(18,36,59,.2)}
.dash-nav button.active{color:#D9B86E;background:rgba(198,161,91,.14)}
.avatar{color:#12243B;background:linear-gradient(135deg,#E5C780,#A7B9A8)}
.stats-grid .positive{color:#B8D0BD}
.meter i{background:linear-gradient(90deg,#C6A15B,#8FA895)}
.stats-grid strong i{color:#E0BC70}
.bookings i{background:rgba(198,161,91,.2);border-color:#DAB86D;color:#FFF2D3}
.bookings i:nth-child(2){background:rgba(143,168,149,.18);border-color:#9CB5A2}
.bookings i:nth-child(3){background:rgba(213,189,141,.16);border-color:#CDB077}
.mint{background:#8FA895}.blue{background:#C6A15B}
.bento{background:rgba(255,252,245,.72);border-color:rgba(18,36,59,.12);box-shadow:0 18px 50px rgba(79,61,35,.07)}
.bento h3{color:var(--navy)}
.bento p{color:#68736F}
.icon-glass{color:#9B783A;border-color:rgba(198,161,91,.35);background:rgba(198,161,91,.1)}
.mini-calendar i{background:rgba(18,36,59,.06)}
.mini-calendar i.stay{background:linear-gradient(90deg,rgba(198,161,91,.2),rgba(143,168,149,.22));border-color:rgba(198,161,91,.42)}
.message-preview,.task-progress span{background:rgba(18,36,59,.055)}
.message-preview i{color:#fff;background:#8FA895}
.task-progress b{color:var(--navy)}
.bento-dark{color:#F8F4EC;background:radial-gradient(circle at 100% 100%,rgba(198,161,91,.23),transparent 45%),#12243B}
.bento-dark h3{color:#F8F4EC}
.bento-dark p{color:#BFC5C2}
.bento-dark .icon-glass{color:#E2C27F;border-color:rgba(198,161,91,.35);background:rgba(198,161,91,.12)}
.automation-flow i{border-color:rgba(198,161,91,.22)}
.automation-flow b{color:#D9B86E}
.finance{background:radial-gradient(circle at 80% 40%,rgba(143,168,149,.2),transparent 35%),rgba(255,252,245,.78)}
.donut{color:#F8F4EC;background:radial-gradient(circle closest-side,#12243B 75%,transparent 76% 99%),conic-gradient(#C6A15B 52%,#8FA895 52% 72%,rgba(18,36,59,.08) 0)}
.price-card{background:rgba(255,252,245,.78);border-color:rgba(18,36,59,.13)}
.price-card p,.price-card li{color:#68736F}
.price-card>span{color:#95743B}
.featured{color:#F8F4EC;border-color:rgba(198,161,91,.6);background:radial-gradient(circle at 50% 0,rgba(198,161,91,.18),transparent 42%),linear-gradient(160deg,#1B3654,#0E1D30);box-shadow:0 25px 70px rgba(18,36,59,.2),inset 0 1px rgba(255,255,255,.12)}
.featured p,.featured li{color:#CBD0CD}.featured h3 small{color:#ABB4B0}
.featured .button-primary{color:#12243B;background:linear-gradient(135deg,#F5E4BD,#C6A15B);border-color:#E6CA8E}
.popular{color:#12243B;background:linear-gradient(90deg,#ECD59D,#C6A15B)}
.final-cta{color:#F8F4EC;border-color:rgba(198,161,91,.3);background:linear-gradient(150deg,#1A3553,#0E1C2E)}
.final-cta .section-number{color:#D0B676}
.cta-orb{background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.25),rgba(198,161,91,.16) 22%,rgba(143,168,149,.07) 50%,transparent 68%);border-color:rgba(198,161,91,.15);box-shadow:inset 25px 20px 70px rgba(255,255,255,.06),0 0 120px rgba(198,161,91,.16)}
footer{color:#6D756F}
@media(max-width:640px){.menu-button span{background:var(--navy)}.site-header.menu-open nav{background:rgba(250,247,239,.98)}}

/* Reference identity from front-stayvault.vercel.app */
body{background:linear-gradient(180deg,#fff 0%,#F3F4F6 55%,#fff 100%);color:#0F172A}
em{color:#6D28D9}.aurora-a{background:#6D28D9}.aurora-b{background:#8B5CF6}
.site-header{background:rgba(255,255,255,.88);box-shadow:0 12px 40px rgba(15,23,42,.09)}
.nav-cta{background:#6D28D9;border-color:#6D28D9;box-shadow:0 10px 26px rgba(109,40,217,.2)}.nav-cta:hover{background:#5B21B6}
.eyebrow,.section-number{color:#6D28D9}.live-dot{background:#6D28D9;box-shadow:0 0 14px rgba(109,40,217,.5)}
.logo-strip{color:#6B7280}.logo-strip b{color:#0F172A}.trust-line{color:#6B7280}.trust-line strong{color:#0F172A}
.button-primary{background:linear-gradient(135deg,#7C3AED,#5B21B6);border-color:#8B5CF6;box-shadow:0 12px 30px rgba(109,40,217,.23),inset 0 1px rgba(255,255,255,.22)}
.button-primary:hover{box-shadow:0 16px 38px rgba(109,40,217,.32)}.button-ghost{border-color:rgba(15,23,42,.16);background:rgba(255,255,255,.68)}.play{color:#6D28D9;background:rgba(109,40,217,.1)}
.avatars i{background:linear-gradient(135deg,#0F172A,#6D28D9);border-color:#F3F4F6}
.hero-visual{border-color:rgba(109,40,217,.27);box-shadow:0 35px 90px rgba(15,23,42,.18)}
.hero-visual .glass-card{background:linear-gradient(135deg,rgba(15,23,42,.78),rgba(35,26,67,.5))}
.revenue-card path{stroke:#A78BFA;filter:drop-shadow(0 0 6px rgba(139,92,246,.85))}.up,.guest-icon{color:#C4B5FD}.guest-icon{background:rgba(109,40,217,.18)}
.liquid-orb{background:radial-gradient(circle at 32% 24%,rgba(255,255,255,.9),rgba(196,181,253,.34) 16%,rgba(109,40,217,.2) 46%,rgba(15,23,42,.6) 78%),linear-gradient(150deg,rgba(255,255,255,.24),rgba(109,40,217,.14));box-shadow:inset 10px 12px 24px rgba(255,255,255,.32),inset -16px -14px 28px rgba(15,23,42,.65),0 0 0 6px rgba(109,40,217,.1),0 25px 55px rgba(15,23,42,.42)}
.hero-visual.open .liquid-orb{box-shadow:inset 5px 6px 14px rgba(255,255,255,.36),0 0 45px rgba(109,40,217,.58)}.plume span{border-color:rgba(139,92,246,.35);background:rgba(15,23,42,.84)}
.dashboard-frame{background:linear-gradient(145deg,#151F35,#090F1E);border-color:rgba(109,40,217,.35);box-shadow:0 30px 75px rgba(15,23,42,.2)}
.dash-nav button.active{color:#C4B5FD;background:rgba(109,40,217,.18)}.avatar{color:#fff;background:linear-gradient(135deg,#7C3AED,#4F46E5)}
.stats-grid .positive{color:#A78BFA}.meter i{background:linear-gradient(90deg,#6D28D9,#A78BFA)}.stats-grid strong i{color:#A78BFA}
.bookings i{background:rgba(109,40,217,.22);border-color:#8B5CF6;color:#EDE9FE}.bookings i:nth-child(2){background:rgba(79,70,229,.2);border-color:#818CF8}.bookings i:nth-child(3){background:rgba(167,139,250,.18);border-color:#A78BFA}
.mint{background:#7C3AED}.blue{background:#8B5CF6}
.bento{background:rgba(255,255,255,.8);border-color:rgba(15,23,42,.11);box-shadow:0 18px 50px rgba(15,23,42,.06)}.icon-glass{color:#6D28D9;border-color:rgba(109,40,217,.25);background:rgba(109,40,217,.08)}
.mini-calendar i.stay{background:linear-gradient(90deg,rgba(109,40,217,.19),rgba(139,92,246,.2));border-color:rgba(109,40,217,.38)}.message-preview i{background:#6D28D9}
.bento-dark{background:radial-gradient(circle at 100% 100%,rgba(109,40,217,.35),transparent 46%),#0F172A}.bento-dark .icon-glass{color:#C4B5FD;border-color:rgba(167,139,250,.35);background:rgba(109,40,217,.14)}.automation-flow b{color:#A78BFA}
.finance{background:radial-gradient(circle at 80% 40%,rgba(109,40,217,.13),transparent 35%),rgba(255,255,255,.82)}
.donut{background:radial-gradient(circle closest-side,#0F172A 75%,transparent 76% 99%),conic-gradient(#6D28D9 52%,#A78BFA 52% 72%,rgba(15,23,42,.08) 0)}
.price-card{background:rgba(255,255,255,.84);border-color:rgba(15,23,42,.12)}.price-card>span{color:#6D28D9}
.featured{border-color:rgba(139,92,246,.7);background:radial-gradient(circle at 50% 0,rgba(109,40,217,.26),transparent 42%),linear-gradient(160deg,#18233A,#0A1020);box-shadow:0 25px 70px rgba(109,40,217,.16),inset 0 1px rgba(255,255,255,.12)}
.featured .button-primary{color:#fff;background:linear-gradient(135deg,#7C3AED,#5B21B6);border-color:#A78BFA}.popular{color:#fff;background:linear-gradient(90deg,#7C3AED,#5B21B6)}
.final-cta{border-color:rgba(109,40,217,.35);background:linear-gradient(150deg,#17213A,#0A1020)}.final-cta .section-number{color:#A78BFA}
.cta-orb{background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.25),rgba(109,40,217,.2) 22%,rgba(79,70,229,.08) 50%,transparent 68%);border-color:rgba(139,92,246,.2);box-shadow:inset 25px 20px 70px rgba(255,255,255,.06),0 0 120px rgba(109,40,217,.2)}
@media(max-width:640px){.site-header.menu-open nav{background:rgba(255,255,255,.98)}}

/* Light-first StayVault surface */
body{background:
  radial-gradient(circle at 82% 8%,rgba(109,40,217,.09),transparent 28rem),
  radial-gradient(circle at 6% 42%,rgba(139,92,246,.07),transparent 32rem),
  linear-gradient(180deg,#FFFFFF 0%,#F8F7FC 48%,#F3F4F6 72%,#FFFFFF 100%)}
.dashboard-frame{color:#0F172A;background:rgba(255,255,255,.88);border-color:rgba(109,40,217,.2);box-shadow:0 30px 75px rgba(15,23,42,.11)}
.dash-nav{background:#0F172A;border-right-color:rgba(255,255,255,.08);border-radius:24px 0 0 24px}
.dash-main{background:linear-gradient(145deg,#FFFFFF,#F7F5FC);border-radius:0 24px 24px 0}
.dash-top small,.stats-grid small,.stats-grid span,.week,.tasks-widget small,.tasks-widget li>span{color:#6B7280}
.dash-actions button{color:#374151;background:#fff;border-color:rgba(15,23,42,.11)}
.stats-grid article,.calendar-widget,.tasks-widget{background:rgba(255,255,255,.92);border-color:rgba(15,23,42,.09);box-shadow:0 12px 28px rgba(15,23,42,.045)}
.widget-title{color:#6B7280}.widget-title b{color:#0F172A}
.bookings{background:linear-gradient(90deg,transparent 13%,rgba(15,23,42,.04) 13% 14%,transparent 14% 27%,rgba(15,23,42,.04) 27% 28%,transparent 28% 41%,rgba(15,23,42,.04) 41% 42%,transparent 42% 55%,rgba(15,23,42,.04) 55% 56%,transparent 56%)}
.bookings i{color:#5B21B6;background:rgba(109,40,217,.11)}.bookings i:nth-child(2){color:#4338CA;background:rgba(79,70,229,.1)}.bookings i:nth-child(3){color:#6D28D9;background:rgba(167,139,250,.13)}
.tasks-widget li{border-bottom-color:rgba(15,23,42,.07)}
.bento-dark{color:#0F172A;background:radial-gradient(circle at 100% 100%,rgba(109,40,217,.14),transparent 48%),linear-gradient(145deg,#FFFFFF,#F3EEFF);border-color:rgba(109,40,217,.2)}
.bento-dark h3{color:#0F172A}.bento-dark p{color:#6B7280}.bento-dark .icon-glass{color:#6D28D9;border-color:rgba(109,40,217,.25);background:rgba(109,40,217,.08)}
.automation-flow i{color:#374151;background:#fff;border-color:rgba(109,40,217,.16);box-shadow:0 7px 20px rgba(109,40,217,.07)}
.featured{color:#0F172A;border-color:rgba(109,40,217,.42);background:radial-gradient(circle at 50% 0,rgba(109,40,217,.12),transparent 42%),linear-gradient(160deg,#FFFFFF,#F3EEFF);box-shadow:0 25px 65px rgba(109,40,217,.12),inset 0 1px #fff}
.featured p,.featured li{color:#6B7280}.featured h3 small{color:#6B7280}
.final-cta{color:#0F172A;border-color:rgba(109,40,217,.24);background:linear-gradient(145deg,#FFFFFF,#F1ECFF);box-shadow:0 30px 80px rgba(109,40,217,.1)}
.final-cta .section-number{color:#6D28D9}
.cta-orb{background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.9),rgba(167,139,250,.17) 24%,rgba(109,40,217,.06) 52%,transparent 70%);border-color:rgba(109,40,217,.12);box-shadow:inset 25px 20px 70px rgba(255,255,255,.7),0 0 120px rgba(109,40,217,.12)}
footer{color:#6B7280}
@media(max-width:640px){.dash-main{border-radius:22px}.dashboard-frame{background:#fff}}

/* Final palette — warm beige, StayVault navy and champagne gold */
:root{
  --ink:#14243B;
  --muted:#6F6A60;
  --night:#F1E7D7;
  --navy:#14243B;
  --line:rgba(20,36,59,.14);
  --glass:rgba(250,244,233,.78);
  --cyan:#D4AE68;
  --blue:#213A5A;
  --gold:#C9A25D;
  --mint:#B8914D;
  --shadow:0 30px 80px rgba(55,42,23,.14)
}
body{
  color:var(--navy);
  background:
    radial-gradient(circle at 86% 6%,rgba(201,162,93,.16),transparent 28rem),
    radial-gradient(circle at 4% 48%,rgba(20,36,59,.055),transparent 34rem),
    linear-gradient(180deg,#F5EDDF 0%,#EFE3D1 50%,#F7F0E5 100%)
}
em{color:#A67E39}
.aurora{opacity:.15}.aurora-a{background:#C9A25D}.aurora-b{background:#233B59}
.site-header{background:rgba(247,239,225,.9);border-color:rgba(20,36,59,.13);box-shadow:0 12px 38px rgba(55,42,23,.11)}
.site-header nav{color:#60665F}.site-header nav a:hover{color:var(--navy)}
.nav-cta{color:#FFF8EB;background:var(--navy);border-color:#29425F;box-shadow:0 10px 26px rgba(20,36,59,.18)}.nav-cta:hover{background:#213A5A}
.eyebrow,.section-number{color:#977136}.live-dot{background:var(--gold);box-shadow:0 0 14px rgba(201,162,93,.55)}
.hero-lede,.section-heading p{color:#696961}
.button-primary{color:#FFF8EB;background:linear-gradient(135deg,#213A5A,#102039);border-color:rgba(201,162,93,.72);box-shadow:0 12px 30px rgba(20,36,59,.2),inset 0 1px rgba(255,255,255,.16)}
.button-primary:hover{box-shadow:0 16px 38px rgba(20,36,59,.28)}
.button-ghost{color:var(--navy);border-color:rgba(20,36,59,.18);background:rgba(250,244,233,.64)}.button-ghost:hover{background:#FBF6ED}
.play{color:#9D7738;background:rgba(201,162,93,.16)}
.trust-line{color:#77746B}.trust-line strong{color:var(--navy)}
.avatars i{color:#FFF8EB;background:linear-gradient(135deg,#213A5A,#C9A25D);border-color:#F1E7D7}
.hero-visual{border-color:rgba(201,162,93,.42);box-shadow:0 35px 90px rgba(55,42,23,.2)}
.hero-visual .glass-card{color:#FFF8EB;background:linear-gradient(135deg,rgba(20,36,59,.84),rgba(33,58,90,.5));border-color:rgba(224,191,120,.3)}
.revenue-card path{stroke:#E0BF78;filter:drop-shadow(0 0 6px rgba(201,162,93,.8))}.up,.guest-icon{color:#E3C681}.guest-icon{background:rgba(201,162,93,.18)}
.liquid-orb{background:radial-gradient(circle at 32% 24%,rgba(255,255,255,.92),rgba(224,191,120,.35) 16%,rgba(201,162,93,.22) 46%,rgba(20,36,59,.65) 78%),linear-gradient(150deg,rgba(255,255,255,.25),rgba(201,162,93,.16));box-shadow:inset 10px 12px 24px rgba(255,255,255,.32),inset -16px -14px 28px rgba(20,36,59,.68),0 0 0 6px rgba(201,162,93,.12),0 25px 55px rgba(20,36,59,.4)}
.hero-visual.open .liquid-orb{box-shadow:inset 5px 6px 14px rgba(255,255,255,.38),0 0 45px rgba(201,162,93,.6)}
.plume span{color:#FFF8EB;border-color:rgba(224,191,120,.35);background:rgba(20,36,59,.86)}
.logo-strip{color:#857B69}.logo-strip b{color:#34465A}
.logo-strip .integration-logo{display:flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:8px 10px;border-radius:13px;transition:transform .2s ease,background .2s ease}
.logo-strip .integration-logo:hover{transform:translateY(-2px);background:rgba(255,250,241,.7)}
.logo-strip .integration-logo img{display:block;width:25px;height:25px;object-fit:contain}
.logo-strip .integration-logo b{font-size:16px;line-height:1;letter-spacing:-.035em;white-space:nowrap}
.logo-strip .booking img{width:23px}.logo-strip .booking b{color:#003580}
.logo-strip .airbnb b{color:#E64B54}
.dashboard-frame{color:var(--navy);background:rgba(248,240,226,.9);border-color:rgba(201,162,93,.3);box-shadow:0 30px 75px rgba(55,42,23,.13)}
.dash-nav{background:var(--navy);border-right-color:rgba(255,255,255,.08)}.dash-nav button.active{color:#E0BF78;background:rgba(201,162,93,.18)}
.dash-main{background:linear-gradient(145deg,#FBF5EA,#F0E4D2)}
.dash-top small,.stats-grid small,.stats-grid span,.week,.tasks-widget small,.tasks-widget li>span{color:#777064}
.dash-actions button{color:#4C5661;background:#FBF5EA;border-color:rgba(20,36,59,.12)}
.avatar{color:#14243B;background:linear-gradient(135deg,#E4C782,#C9A25D)}
.stats-grid article,.calendar-widget,.tasks-widget{background:rgba(255,250,241,.82);border-color:rgba(20,36,59,.09);box-shadow:0 12px 28px rgba(55,42,23,.05)}
.widget-title{color:#777064}.widget-title b{color:var(--navy)}
.stats-grid .positive{color:#9B7331}.meter i{background:linear-gradient(90deg,#C9A25D,#E0BF78)}.stats-grid strong i{color:#B88D43}
.bookings{background:linear-gradient(90deg,transparent 13%,rgba(20,36,59,.04) 13% 14%,transparent 14% 27%,rgba(20,36,59,.04) 27% 28%,transparent 28% 41%,rgba(20,36,59,.04) 41% 42%,transparent 42% 55%,rgba(20,36,59,.04) 55% 56%,transparent 56%)}
.bookings i,.bookings i:nth-child(2),.bookings i:nth-child(3){color:#76551F;background:rgba(201,162,93,.14);border-color:#C9A25D}.tasks-widget li{border-bottom-color:rgba(20,36,59,.07)}
.mint{background:#B8914D}.blue{background:#213A5A}
.bento,.price-card{background:rgba(250,244,233,.76);border-color:rgba(20,36,59,.12);box-shadow:0 18px 50px rgba(55,42,23,.07)}
.bento h3{color:var(--navy)}.bento p,.price-card p,.price-card li{color:#696961}
.icon-glass{color:#9A7332;border-color:rgba(201,162,93,.35);background:rgba(201,162,93,.11)}
.mini-calendar i{background:rgba(20,36,59,.055)}.mini-calendar i.stay{background:linear-gradient(90deg,rgba(201,162,93,.22),rgba(224,191,120,.28));border-color:rgba(201,162,93,.45)}
.message-preview,.task-progress span{background:rgba(20,36,59,.055)}.message-preview i{color:#FFF8EB;background:#213A5A}.task-progress b{color:var(--navy)}
.bento-dark{color:#FFF8EB;background:radial-gradient(circle at 100% 100%,rgba(201,162,93,.28),transparent 46%),var(--navy);border-color:rgba(201,162,93,.32)}
.bento-dark h3{color:#FFF8EB}.bento-dark p{color:#D5D0C7}.bento-dark .icon-glass{color:#E0BF78;border-color:rgba(224,191,120,.38);background:rgba(201,162,93,.13)}
.automation-flow i{color:#F5EDDF;background:rgba(255,255,255,.06);border-color:rgba(224,191,120,.24);box-shadow:none}.automation-flow b{color:#E0BF78}
.finance{background:radial-gradient(circle at 80% 40%,rgba(201,162,93,.16),transparent 35%),rgba(250,244,233,.8)}
.donut{color:#FFF8EB;background:radial-gradient(circle closest-side,#14243B 75%,transparent 76% 99%),conic-gradient(#C9A25D 52%,#E0BF78 52% 72%,rgba(20,36,59,.08) 0)}
.price-card>span{color:#947039}
.featured{color:#FFF8EB;border-color:rgba(201,162,93,.68);background:radial-gradient(circle at 50% 0,rgba(201,162,93,.22),transparent 42%),linear-gradient(160deg,#213A5A,#102039);box-shadow:0 25px 70px rgba(20,36,59,.2),inset 0 1px rgba(255,255,255,.12)}
.featured p,.featured li{color:#D4D0C8}.featured h3 small{color:#C5BEB2}.featured .button-primary{color:#14243B;background:linear-gradient(135deg,#F1D99E,#C9A25D);border-color:#E5C982}.popular{color:#14243B;background:linear-gradient(90deg,#E8D092,#C9A25D)}
.final-cta{color:#FFF8EB;border-color:rgba(201,162,93,.36);background:linear-gradient(150deg,#213A5A,#102039);box-shadow:0 30px 80px rgba(20,36,59,.18)}
.final-cta .section-number{color:#DABB75}.cta-orb{background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.24),rgba(201,162,93,.19) 24%,rgba(224,191,120,.07) 52%,transparent 70%);border-color:rgba(224,191,120,.18);box-shadow:inset 25px 20px 70px rgba(255,255,255,.06),0 0 120px rgba(201,162,93,.18)}
footer{color:#756F64}
@media(max-width:640px){.menu-button span{background:var(--navy)}.site-header.menu-open nav{background:rgba(247,239,225,.98)}.dashboard-frame{background:#F7EEDF}.dash-main{border-radius:22px}}

/* UX pass — mobile-first usability, keyboard access and resilient layouts */
html{scroll-padding-top:96px}
body{min-width:320px}
img,svg{max-width:100%}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible{outline:3px solid #A67E39;outline-offset:3px}
.skip-link{position:fixed;z-index:100;top:8px;left:12px;padding:12px 16px;border-radius:12px;background:#14243B;color:#fff;transform:translateY(-150%);transition:transform .2s}
.skip-link:focus{transform:translateY(0)}
.brand-logo{display:block;width:auto;height:32px;max-width:154px}
.menu-button{min-width:44px;min-height:44px;align-items:center;justify-content:center;border-radius:12px;cursor:pointer}
.menu-button:hover{background:rgba(20,36,59,.06)}
.mobile-action{display:none}

@media(max-width:960px){
  .hero{min-height:auto}
  .section-heading h2{max-width:16ch}
  .dashboard-frame{min-height:0}
}

@media(max-width:640px){
  html{scroll-padding-top:82px}
  body{padding-bottom:82px}
  .site-header{padding:6px 7px 6px 14px;border-radius:18px}
  .brand-logo{height:27px;max-width:135px}
  .menu-button{padding:0}
  .site-header.menu-open nav{top:64px;padding:8px;gap:4px;box-shadow:0 18px 45px rgba(20,36,59,.16)}
  .site-header.menu-open nav a{display:flex;align-items:center;min-height:48px;padding:0 14px;border-radius:12px;font-size:16px;font-weight:700}
  .site-header.menu-open nav a:hover,.site-header.menu-open nav a:focus-visible{background:rgba(201,162,93,.13)}
  .hero{padding:96px 16px 44px;gap:30px}
  .hero-copy{text-align:left}
  .eyebrow{justify-content:flex-start;font-size:11px;line-height:1.35}
  h1{font-size:clamp(42px,13vw,53px);line-height:.98;margin:20px 0;overflow-wrap:anywhere}
  .hero-lede{font-size:16px;line-height:1.55;margin:0}
  .hero-actions{margin-top:26px;gap:10px}
  .button{min-height:52px;padding-inline:18px;font-size:15px}
  .trust-line{margin-top:28px;gap:12px}
  .trust-line p{font-size:12px;line-height:1.45}
  .hero-visual{height:480px;border-radius:24px}
  .hero-visual>img{object-position:center}
  .revenue-card{right:10px;top:12px;width:172px;padding:14px;border-radius:17px}
  .revenue-card strong{font-size:22px}
  .guest-card{left:10px;right:10px;top:auto;bottom:158px;max-width:230px}
  .liquid-orb{width:96px;height:96px}
  .orb-shell{bottom:18px}
  .orb-shell>span{max-width:190px;text-align:center;line-height:1.4}
  .hero-visual.open .liquid-orb{transform:translateY(-172px) scale(.48)}
  .plume{bottom:118px}
  .hero-visual.open .plume span{transform:translate(calc(-50% + (var(--x) * .65)),calc(var(--y) * .76)) rotate(var(--r))}
  .logo-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:18px 10px;gap:5px}
  .logo-strip>span{grid-column:1/-1;margin-bottom:5px}
  .logo-strip .integration-logo{justify-content:flex-start;min-width:0;padding:9px}
  .logo-strip .integration-logo:last-child{grid-column:1/-1;justify-content:center}
  .logo-strip .integration-logo img{width:23px;height:23px}
  .logo-strip .integration-logo b{font-size:14px;overflow:hidden;text-overflow:ellipsis}
  .cockpit-section,.modules-section,.pricing-section{padding:58px 16px}
  .section-heading,.section-heading.compact{gap:14px;margin-bottom:30px}
  .section-heading h2{font-size:clamp(36px,11vw,43px);line-height:1.04;max-width:100%;overflow-wrap:anywhere}
  .section-heading p{font-size:15px;line-height:1.55}
  .dashboard-frame{padding:6px;border-radius:24px}
  .dash-main{min-width:0;padding:14px 10px}
  .dash-top{gap:10px}
  .dash-top h3{font-size:19px;white-space:nowrap}
  .avatar{flex:0 0 38px}
  .stats-grid{gap:8px;margin:18px 0}
  .stats-grid article{min-width:0;padding:14px 12px;border-radius:15px}
  .stats-grid small{font-size:11px;line-height:1.3}
  .stats-grid strong{font-size:19px;white-space:nowrap}
  .calendar-widget{overflow:hidden}
  .widget-title{font-size:11px}
  .week{margin:18px 0 8px}
  .bookings{gap:4px;grid-auto-rows:42px}
  .bookings i{padding:7px 5px;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .bento{min-height:310px;padding:22px;border-radius:22px}
  .icon-glass{margin-bottom:30px}
  .bento p{font-size:15px}
  .mini-calendar,.message-preview,.task-progress{left:22px;right:22px}
  .automation-flow{left:22px;right:22px;gap:7px;flex-wrap:wrap}
  .automation-flow i{padding:10px;font-size:10px}
  .finance{min-height:390px}
  .pricing-grid{gap:22px}
  .price-card,.featured{padding:28px 22px;border-radius:24px}
  .price-card h3{font-size:38px}
  .price-card p{min-height:0}
  .price-card li{font-size:15px}
  .final-cta{margin:50px 16px;padding:64px 18px}
  .final-cta h2{font-size:clamp(38px,12vw,48px);overflow-wrap:anywhere}
  footer{padding-bottom:28px}
  footer>div{flex-wrap:wrap;gap:12px 20px}
  footer a{min-height:44px;display:inline-flex;align-items:center}
  .mobile-action{position:fixed;z-index:45;left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 10px 10px 14px;border:1px solid rgba(224,191,120,.42);border-radius:18px;background:rgba(20,36,59,.96);color:#FFF8EB;box-shadow:0 14px 35px rgba(20,36,59,.3);backdrop-filter:blur(18px)}
  .mobile-action div{min-width:0}.mobile-action strong,.mobile-action span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-action strong{font-size:13px}.mobile-action span{font-size:11px;color:#D5D0C7}
  .mobile-action a{flex:0 0 auto;min-height:44px;display:inline-flex;align-items:center;padding:0 14px;border-radius:12px;background:linear-gradient(135deg,#F1D99E,#C9A25D);color:#14243B;font-size:13px;font-weight:800}
}

@media(max-width:370px){
  .hero{padding-inline:12px}.cockpit-section,.modules-section,.pricing-section{padding-inline:12px}
  .mobile-action div{display:none}.mobile-action a{width:100%;justify-content:center}
  .guest-card{max-width:205px}.card-kicker{font-size:10px}
}

@media(prefers-reduced-motion:reduce){.liquid-orb{transition:none}.aurora{display:none}}

/* Pricing hierarchy and premium reveal */
.pricing-grid{align-items:stretch}
.price-card{position:relative;isolation:isolate;overflow:hidden;min-height:535px;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .35s ease}
.price-card:after{content:"";position:absolute;z-index:-1;inset:-45% 50% 45% -30%;background:radial-gradient(circle,rgba(224,191,120,.18),transparent 67%);opacity:0;transform:translate3d(-18px,18px,0);transition:opacity .4s ease,transform .55s ease;pointer-events:none}
.price-card:hover{transform:translateY(-8px);border-color:rgba(201,162,93,.48);box-shadow:0 28px 65px rgba(55,42,23,.14)}
.price-card:hover:after{opacity:1;transform:translate3d(0,0,0)}
.price-card>span{font-weight:800}
.price-card h3{display:flex;align-items:baseline;gap:7px;white-space:nowrap}
.price-card h3 small{line-height:1.25}
.price-card ul{flex:1}
.featured{min-height:535px;transform:none}
.reveal-ready .price-card{opacity:0;transform:translateY(34px) scale(.975)}
.reveal-ready .pricing-grid.is-visible .price-card{opacity:1;transform:translateY(0) scale(1);transition:opacity .65s ease,transform .75s cubic-bezier(.16,1,.3,1),box-shadow .35s ease,border-color .35s ease}
.reveal-ready .pricing-grid.is-visible .price-card:nth-child(2){transition-delay:.12s}
.reveal-ready .pricing-grid.is-visible .price-card:nth-child(3){transition-delay:.24s}
.reveal-ready .pricing-grid.is-visible .featured{animation:price-pulse 1.2s .72s ease-out both}
@keyframes price-pulse{0%{box-shadow:0 25px 70px rgba(20,36,59,.2),0 0 0 0 rgba(201,162,93,.36)}60%{box-shadow:0 30px 78px rgba(20,36,59,.24),0 0 0 12px rgba(201,162,93,0)}100%{box-shadow:0 25px 70px rgba(20,36,59,.2),0 0 0 0 rgba(201,162,93,0)}}

@media(max-width:960px){
  .featured{order:initial}
  .price-card,.featured{min-height:0}
}

@media(max-width:640px){
  .pricing-grid{gap:18px}
  .price-card:hover{transform:none}
  .price-card h3{justify-content:space-between;font-size:36px}
  .price-card h3 small{max-width:88px;text-align:right;white-space:normal}
  .popular{top:14px;left:auto;right:14px;transform:none}
}

@media(prefers-reduced-motion:reduce){
  .reveal-ready .price-card,.reveal-ready .pricing-grid.is-visible .price-card{opacity:1;transform:none;animation:none;transition:none}
}

.avatars img{width:32px;height:32px;margin-left:-8px;border:2px solid var(--night);border-radius:50%;object-fit:cover;object-position:center;display:block}
.avatars img:first-child{margin-left:0}
.hero-copy{text-align:center}
.hero-lede{margin-inline:auto}
.hero-actions,.trust-line{justify-content:center}

:root{--ease-out-expo:cubic-bezier(.16,1,.3,1);--ease-out-quart:cubic-bezier(.25,1,.5,1)}
.site-header{background:rgba(250,247,239,.62);transition:background-color .35s ease,border-color .35s ease,box-shadow .35s ease,transform .35s var(--ease-out-quart)}
.site-header.is-scrolled{background:rgba(250,247,239,.94);border-color:rgba(18,36,59,.16);box-shadow:0 10px 28px rgba(50,42,28,.14)}
.site-header nav a{position:relative;transition:color .2s ease}
.site-header nav a::after{content:"";position:absolute;right:0;bottom:-7px;left:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .3s var(--ease-out-quart)}
.site-header nav a:hover::after,.site-header nav a:focus-visible::after{transform:scaleX(1);transform-origin:left}
.nav-cta,.button{transition:transform .22s var(--ease-out-quart),box-shadow .22s ease,background-color .22s ease}
.nav-cta.is-pressed,.button.is-pressed{transform:translateY(1px) scale(.97)}
.hero-line{display:block;overflow:hidden}
.hero-line em{display:inline-block}
html.motion-ready .hero-copy>h1 .hero-line{animation:hero-line-in .75s var(--ease-out-expo) both}
html.motion-ready .hero-copy>h1 .hero-line:nth-child(2){animation-delay:.1s}
html.motion-ready .hero-lede{animation:hero-copy-in .65s var(--ease-out-expo) .25s both}
html.motion-ready .hero-actions{animation:hero-copy-in .6s var(--ease-out-expo) .38s both}
html.motion-ready .trust-line{animation:hero-copy-in .6s var(--ease-out-expo) .5s both}
html.motion-ready .hero-visual{animation:hero-visual-in .9s var(--ease-out-expo) .08s both}
.hero-visual>img{transition:transform .8s var(--ease-out-quart)}
.hero-visual.is-ready .revenue-card path{animation:draw-line 1.1s var(--ease-out-expo) .35s both}
.plume span{animation:badge-float 5.5s ease-in-out infinite alternate}
.plume span:nth-child(2){animation-delay:-1.4s}.plume span:nth-child(3){animation-delay:-2.8s}.plume span:nth-child(4){animation-delay:-4.1s}
html.motion-ready .reveal-target.is-visible{animation:reveal-in .65s var(--ease-out-expo) both;animation-delay:calc(var(--reveal-index,0) * 45ms)}
.dashboard-frame.is-visible{perspective:1400px;animation:dashboard-in .8s var(--ease-out-expo) both}
.dashboard-frame.is-visible .stats-grid article{animation:stat-in .55s var(--ease-out-expo) both}
.dashboard-frame.is-visible .stats-grid article:nth-child(2){animation-delay:.08s}.dashboard-frame.is-visible .stats-grid article:nth-child(3){animation-delay:.16s}
.dashboard-frame.is-visible .bookings i{animation:booking-in .55s var(--ease-out-expo) both}.dashboard-frame.is-visible .bookings i:nth-child(2){animation-delay:.12s}.dashboard-frame.is-visible .bookings i:nth-child(3){animation-delay:.22s}
.dashboard-frame.is-visible .tasks-widget li{animation:task-in .45s var(--ease-out-expo) both}.dashboard-frame.is-visible .tasks-widget li:nth-child(2){animation-delay:.1s}.dashboard-frame.is-visible .tasks-widget li:nth-child(3){animation-delay:.2s}
.bento{transition:transform .28s var(--ease-out-quart),box-shadow .28s ease,border-color .28s ease}
.bento:hover{transform:translateY(-5px);border-color:rgba(198,161,91,.5);box-shadow:0 14px 32px rgba(65,47,23,.12)}
.bento.is-visible .mini-calendar i{animation:calendar-cell-in .45s var(--ease-out-expo) both}.bento.is-visible .mini-calendar i:nth-child(2){animation-delay:.04s}.bento.is-visible .mini-calendar i:nth-child(3){animation-delay:.08s}.bento.is-visible .mini-calendar i:nth-child(4){animation-delay:.12s}.bento.is-visible .mini-calendar i:nth-child(5){animation-delay:.16s}.bento.is-visible .mini-calendar i:nth-child(6){animation-delay:.2s}.bento.is-visible .mini-calendar i:nth-child(7){animation-delay:.24s}
.bento.is-visible .automation-flow i,.bento.is-visible .message-preview,.bento.is-visible .task-progress span{animation:detail-in .55s var(--ease-out-expo) both}.bento.is-visible .automation-flow i:nth-child(2){animation-delay:.15s}.bento.is-visible .task-progress span:nth-child(2){animation-delay:.12s}
.finance.is-visible .donut{animation:donut-in 1s var(--ease-out-expo) .25s both}
.price-card .button{transition:transform .2s var(--ease-out-quart),box-shadow .2s ease,background-color .2s ease}
.price-card li{transition:color .2s ease,transform .2s var(--ease-out-quart)}.price-card li:hover{color:var(--navy);transform:translateX(3px)}
.final-cta{isolation:isolate}.cta-orb{animation:orb-drift 18s ease-in-out infinite alternate}
.menu-button{transition:background-color .2s ease,transform .2s var(--ease-out-quart)}.menu-button:active{transform:scale(.94)}
@media(max-width:640px){
  .site-header nav{visibility:hidden;opacity:0;transform:translateY(-8px);transition:opacity .25s ease,transform .3s var(--ease-out-quart),visibility .25s}
  .site-header.menu-open nav{visibility:visible;opacity:1;transform:none}
  .trust-line{align-items:center;text-align:center}
  .bento:hover{transform:none;box-shadow:none}
  .hero-visual>img{transition:none}
}
@keyframes hero-line-in{from{opacity:.82;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes hero-copy-in{from{opacity:.84;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes hero-visual-in{from{opacity:.92;transform:translateY(22px) scale(.98)}to{opacity:1;transform:none}}
@keyframes reveal-in{from{opacity:.84;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes draw-line{to{stroke-dashoffset:0}}
@keyframes badge-float{from{translate:0 0}to{translate:0 -4px}}
@keyframes dashboard-in{from{opacity:.2;transform:translateY(20px) rotateX(2deg)}to{opacity:1;transform:none}}
@keyframes stat-in{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
@keyframes booking-in{from{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:none}}
@keyframes task-in{from{opacity:0;transform:translateX(8px)}to{opacity:1;transform:none}}
@keyframes calendar-cell-in{from{opacity:0;transform:scale(.8)}to{opacity:1;transform:none}}
@keyframes detail-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes donut-in{from{transform:scale(.9);opacity:.4}to{transform:none;opacity:1}}
@keyframes orb-drift{from{transform:translate(-50%,-50%) scale(1)}to{transform:translate(-50%,-52%) scale(1.04)}}
@media(prefers-reduced-motion:reduce){
  html.motion-ready .hero-copy>h1 .hero-line,html.motion-ready .hero-lede,html.motion-ready .hero-actions,html.motion-ready .trust-line,html.motion-ready .hero-visual{opacity:1;transform:none;animation:none}
  html.motion-ready .reveal-target{opacity:1;transform:none}
  .plume span,.cta-orb{animation:none}
}

/* Mobile-first layout: the compact experience is the default. */
html,body{min-width:320px;overflow-x:clip}
body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
img{max-width:100%}
.site-header{top:max(10px,env(safe-area-inset-top));width:calc(100% - 20px);height:58px;padding-inline:14px 8px;border-radius:16px}
.site-header nav{display:none}
.site-header.menu-open nav{position:absolute;top:67px;left:0;right:0;display:flex;flex-direction:column;gap:4px;padding:10px;border:1px solid var(--line);border-radius:16px;background:rgba(247,239,225,.98)}
.site-header.menu-open nav a{padding:12px 10px;border-radius:10px}
.nav-cta{display:none}
.menu-button{display:flex;flex:0 0 44px;min-width:44px;min-height:44px;align-items:center;justify-content:center}
.hero{min-height:0;display:flex;flex-direction:column;gap:36px;padding:108px 16px 54px}
.hero-copy{width:100%;max-width:680px;margin-inline:auto}
h1{font-size:clamp(45px,13vw,60px);line-height:.96;letter-spacing:-.045em;margin:22px 0}
.hero-lede{max-width:40rem;font-size:16px;line-height:1.6}
.hero-actions{flex-direction:column;align-items:stretch;gap:10px;margin-top:28px}
.hero-actions .button{width:100%;min-height:52px}
.trust-line{align-items:center;flex-direction:column;gap:10px;margin-top:28px;text-align:center}
.trust-line p{font-size:12px;line-height:1.45}
.hero-visual{width:100%;height:530px;border-radius:26px}
.revenue-card{top:14px;right:12px;width:min(185px,calc(100% - 24px));padding:14px}
.guest-card{left:12px;top:45%;max-width:calc(100% - 24px);padding:10px 12px}
.guest-card strong{font-size:11px}
.plume{display:none}
.logo-strip{margin:24px 16px 54px;padding:18px 10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.logo-strip>span{grid-column:1/-1;width:auto;margin-bottom:6px;text-align:center;font-size:10px}
.logo-strip .integration-logo{min-width:0;justify-content:flex-start}
.logo-strip .integration-logo b{font-size:13px;overflow:hidden;text-overflow:ellipsis}
.cockpit-section,.modules-section,.pricing-section{padding:64px 16px}
.section-heading,.section-heading.compact{display:block;margin-bottom:36px}
.section-heading h2{font-size:clamp(38px,11vw,50px);line-height:1.03;letter-spacing:-.04em;margin:14px 0 18px;text-wrap:balance}
.section-heading p{font-size:16px;line-height:1.6}
.dashboard-frame{min-height:0;display:block;padding:8px;border-radius:24px}
.dash-nav{display:none}
.dash-main{padding:12px}
.dash-top{gap:12px}.dash-top h3{font-size:20px}.dash-top small{font-size:9px}
.dash-actions button{display:none}
.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0}
.stats-grid article{min-width:0;padding:14px}.stats-grid article:nth-child(3){display:none}
.stats-grid strong{font-size:20px;white-space:nowrap}.stats-grid small{font-size:11px}
.dash-grid{display:block}.calendar-widget{padding:12px}.tasks-widget{display:none}
.week{margin:18px 0 10px}.bookings{grid-auto-rows:40px;gap:4px}.bookings i{padding:7px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bento-grid{grid-template-columns:1fr;gap:12px}.bento{min-height:330px;padding:23px;border-radius:20px}.bento h3{font-size:25px;line-height:1.05}.finance{display:block;min-height:420px}.donut{margin:22px auto 0}
.pricing-grid{grid-template-columns:1fr;gap:14px;max-width:620px;margin-inline:auto}.price-card,.featured{min-height:0;padding:26px;border-radius:22px}.featured{order:-1}.price-card p{min-height:0}.price-card ul{margin-bottom:24px}
.final-cta{margin:54px 16px;padding:70px 20px;border-radius:26px}.final-cta h2{font-size:clamp(42px,12vw,54px);text-wrap:balance}
footer{grid-template-columns:1fr;gap:18px;margin:0 16px;padding:30px 0 max(28px,env(safe-area-inset-bottom));text-align:center}footer .brand,footer>div{justify-content:center}footer p{margin:0}
@media (min-width:640px){
  .hero{padding-inline:28px}.hero-visual{height:620px}.hero-actions{flex-direction:row;align-items:center}.hero-actions .button{width:auto}.trust-line{flex-direction:row;text-align:left}.plume{display:block}
  .logo-strip{display:flex;flex-wrap:wrap;justify-content:space-around}.logo-strip>span{width:auto;margin:0}.bento-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance{grid-column:1/-1}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.featured{order:-1}
  .stats-grid article:nth-child(3){display:block}.dash-grid{display:grid;grid-template-columns:1.25fr .75fr}.tasks-widget{display:block}
}
@media (min-width:900px){
  .site-header{top:16px;width:min(1180px,calc(100% - 32px));height:66px;padding-left:20px;border-radius:22px}.site-header nav{display:flex;gap:32px}.nav-cta{display:inline-flex}.menu-button{display:none}
  .hero{min-height:940px;display:grid;grid-template-columns:.82fr 1.18fr;gap:58px;padding:150px 36px 80px}.hero-visual{height:690px}.hero-actions{justify-content:center}.trust-line{justify-content:center}
  .section-heading{display:grid;grid-template-columns:180px 1fr .65fr;gap:40px;align-items:end}.section-heading.compact{display:grid;grid-template-columns:180px 1fr}.section-heading h2{font-size:clamp(40px,5vw,66px);margin:0}.section-heading p{font-size:16px}.cockpit-section,.modules-section,.pricing-section{padding:100px 30px}
  .dashboard-frame{min-height:640px;display:grid;grid-template-columns:66px 1fr;padding:10px;border-radius:34px}.dash-nav{display:flex}.dash-main{padding:26px}.dash-actions button{display:block}.dash-grid{grid-template-columns:1.25fr .75fr}
  .bento{min-height:350px;padding:28px;border-radius:28px}.finance{min-height:290px}.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.price-card{min-height:510px;padding:30px}.featured{min-height:555px}.final-cta{margin:100px auto;padding:100px 40px;border-radius:38px}
  footer{grid-template-columns:1fr 1fr 1fr;gap:0;margin:auto;padding:35px 30px 50px;text-align:left}footer p{text-align:center}
}
@media (pointer:coarse){
  .button,.nav-cta,.site-header nav a{min-height:44px}.bento:hover{transform:none;border-color:var(--line);box-shadow:none}.price-card li{padding-block:11px}
}
@media(prefers-reduced-motion:reduce){
  html.motion-ready .reveal-target{opacity:1!important;transform:none!important;transition:none!important}
  html.motion-ready .hero-copy>h1 .hero-line,html.motion-ready .hero-lede,html.motion-ready .hero-actions,html.motion-ready .trust-line,html.motion-ready .hero-visual{opacity:1!important;transform:none!important;animation:none!important}
  .dashboard-frame.is-visible,.dashboard-frame.is-visible .stats-grid article,.dashboard-frame.is-visible .bookings i,.dashboard-frame.is-visible .tasks-widget li,.bento.is-visible .mini-calendar i,.bento.is-visible .automation-flow i,.bento.is-visible .message-preview,.bento.is-visible .task-progress span,.finance.is-visible .donut{animation:none!important}
}

/* Reliability overrides: every meaningful element remains present without JS. */
.reveal-ready .price-card{opacity:1!important;transform:none!important}
.plume span{opacity:1;transform:translate(calc(-50% + var(--x)),var(--y)) rotate(var(--r))}
.hero-visual.is-ready .revenue-card path{stroke-dasharray:none;stroke-dashoffset:0;animation:none}
@media (min-width:640px) and (max-width:899px){.pricing-grid{grid-template-columns:1fr;max-width:620px}}
@media (min-width:900px){.hero{grid-template-columns:.9fr 1.1fr}}
.pricing-grid .featured{order:initial}
.cockpit-section>.section-heading{display:block;max-width:900px;margin-inline:auto;text-align:center}
.cockpit-section>.section-heading .section-number{justify-content:center}
.cockpit-section>.section-heading p{max-width:650px;margin:20px auto 0}

/* Stable landing invariants: animation is additive and never owns visibility. */
.hero{grid-template-columns:minmax(0,.45fr) minmax(0,.55fr)}
.hero-copy,.hero-copy h1,.hero-copy .hero-line,.hero-lede,.hero-actions,.trust-line,.hero-visual{visibility:visible!important;opacity:1!important;transform:none}
.hero-copy{min-width:0}
.hero-line{overflow:visible}
.hero-visual{min-width:0}
.logo-strip{width:calc(100% - 60px)}
.logo-strip .integration-logo{flex:1 1 0}
.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}
.pricing-grid .price-card,.pricing-grid .featured{order:initial;min-width:0;opacity:1;transform:none}
.pricing-grid .featured{order:2}
.price-card p{min-height:74px}
.finance{min-height:290px}
.reveal-target{visibility:visible!important}
@media(max-width:960px){.hero{grid-template-columns:1fr}.pricing-grid{grid-template-columns:1fr;max-width:620px}.pricing-grid .featured{order:2}}
@media(max-width:640px){.logo-strip{width:auto}.logo-strip .integration-logo{flex:1 1 calc(50% - 8px)}.pricing-grid .featured{order:2}.finance{min-height:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-copy,.hero-copy h1,.hero-copy .hero-line,.hero-lede,.hero-actions,.trust-line,.hero-visual,.reveal-target{animation:none!important;transition:none!important}}

/* Legal pages */
.legal-page{min-height:100vh;display:flex;flex-direction:column}
.legal-main{width:min(960px,calc(100% - 32px));margin:0 auto;padding:154px 0 90px;flex:1}
.legal-intro{max-width:740px;padding-bottom:42px;border-bottom:1px solid var(--line)}
.legal-kicker{display:block;color:#8a6831;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.legal-intro h1{font-size:clamp(46px,7vw,78px);line-height:.98;letter-spacing:-.04em;margin:20px 0 18px}
.legal-intro p{max-width:62ch;color:#59636d;font-size:17px;line-height:1.7;margin:0}
.legal-updated{display:block;margin-top:22px;color:#7a827c;font-size:13px}
.legal-layout{display:grid;grid-template-columns:180px minmax(0,1fr);gap:58px;padding-top:48px}
.legal-index{position:sticky;top:110px;align-self:start;display:grid;gap:12px}
.legal-index a{color:#68736f;font-size:13px}
.legal-index a:hover,.legal-index a:focus-visible{color:var(--navy)}
.legal-content{max-width:680px}
.legal-content section{scroll-margin-top:110px;margin:0 0 42px}
.legal-content h2{font-size:25px;line-height:1.15;letter-spacing:-.025em;margin:0 0 12px}
.legal-content p,.legal-content li{color:#4f5b60;font-size:15px;line-height:1.75}
.legal-content p{margin:0 0 12px}
.legal-content ul{padding-left:20px;margin:10px 0 0}
.legal-content li+li{margin-top:5px}
.legal-content a{color:#735624;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.legal-note{padding:18px 20px;border:1px solid rgba(115,86,36,.24);border-radius:14px;background:rgba(255,255,255,.42)}
.legal-footer{margin-top:auto}
@media(max-width:700px){.legal-main{padding-top:120px}.legal-layout{display:block;padding-top:34px}.legal-index{position:static;display:flex;flex-wrap:wrap;gap:8px 18px;padding-bottom:34px}.legal-index a{min-height:32px;display:inline-flex;align-items:center}.legal-content section{margin-bottom:34px}.legal-intro p{font-size:16px}}

/* =============================================
   HERO OPTIMISATION — eyebrow, shimmer CTA,
   rating card, trust-meta, hero-line-em
   ============================================= */

/* Eyebrow badge */
.hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px 6px 10px;
  margin-bottom: 20px;
  border: 1px solid rgba(201,162,93,.38);
  border-radius: 999px;
  background: rgba(201,162,93,.1);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #9A7638;
  animation: eyebrow-in .55s cubic-bezier(.16,1,.3,1) .05s both;
}
@keyframes eyebrow-in {
  from { opacity: 0; transform: translateY(-10px) scale(.96); }
  to   { opacity: 1; transform: none; }
}

/* h1 sizing & hero-line-em */
.hero-line-em { font-size: 1em; }
.hero-line-em em { font-size: 1em; }

/* Primary CTA with shimmer */
.hero-cta-primary {
  position: relative;
  overflow: hidden;
}
.cta-shimmer {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    105deg,
    transparent 40%,
    rgba(255,255,255,.28) 50%,
    transparent 60%
  );
  background-size: 200% 100%;
  animation: cta-shimmer 3.2s ease-in-out 1.2s infinite;
}
@keyframes cta-shimmer {
  0%   { background-position: 200% center; }
  40%  { background-position: -200% center; }
  100% { background-position: -200% center; }
}

/* Trust meta (stars + count) */
.trust-meta {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.trust-meta p { margin: 0; line-height: 1.4; }
.trust-stars { font-size: 12px; }
.trust-stars span { color: #C9A25D; letter-spacing: 1px; font-size: 13px; }
.trust-stars strong { color: var(--navy); font-size: 13px; }

/* Rating card */
.rating-card {
  right: 25px;
  bottom: 78px;
  padding: 13px 16px;
  border-radius: 18px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 160px;
  animation: float-card-in .7s cubic-bezier(.16,1,.3,1) .6s both;
}
.rating-row {
  display: flex;
  align-items: baseline;
  gap: 8px;
}
.rating-score {
  font-size: 26px;
  letter-spacing: -.03em;
  color: #FFF8EB;
}
.stars {
  color: #E0BF78;
  font-size: 13px;
  letter-spacing: 1px;
}
.rating-sub {
  font-size: 10px;
  color: rgba(255,248,235,.6);
  letter-spacing: .03em;
}

/* Float-in animation for glass cards */
@keyframes float-card-in {
  from { opacity: 0; transform: translateY(16px) scale(.96); }
  to   { opacity: 1; transform: none; }
}
.revenue-card { animation: float-card-in .7s cubic-bezier(.16,1,.3,1) .35s both; }
.guest-card   { animation: float-card-in .7s cubic-bezier(.16,1,.3,1) .5s both; }

/* Guest card repositioned slightly lower to avoid overlap */
.guest-card { top: 48%; }

/* Mobile adjustments */
@media (max-width: 640px) {
  .hero-eyebrow { font-size: 10px; padding: 5px 11px 5px 9px; }
  .rating-card  { right: 10px; bottom: 158px; min-width: 140px; padding: 11px 13px; }
  .rating-score { font-size: 22px; }
  .trust-meta   { gap: 1px; }
}
@media (max-width: 900px) {
  .hero-eyebrow { justify-content: center; }
}
@media (prefers-reduced-motion: reduce) {
  .cta-shimmer, .hero-eyebrow,
  .revenue-card, .guest-card, .rating-card { animation: none !important; }
}

/* =================================================================
   RESPONSIVE MOBILE OPTIMISATION — StayVault
   Bloc additif — ajouté à la fin du fichier uniquement.
   Aucune règle existante supprimée, cascade intentionnelle préservée.
   ================================================================= */

/* -----------------------------------------------------------------
   P0 — DESIGN TOKENS MOBILE
   Tokens absents de :root nécessaires aux corrections suivantes.
   ----------------------------------------------------------------- */
:root {
  --header-h: 58px;
  --cta-bar-h: 66px;
  --page-px: clamp(14px, 4vw, 22px);
  --space-xs: 8px;
  --space-sm: 16px;
  --space-md: 24px;
  --space-lg: 40px;
  --space-xl: 64px;
  --space-2xl: 96px;
  --section-gap: clamp(56px, 10vw, 96px);
  --card-radius: 20px;
  --card-padding: clamp(18px, 4vw, 28px);
  --content-max: 680px;
}

/* -----------------------------------------------------------------
   P0 — OVERFLOW HORIZONTAL GLOBAL
   min-width:0 sur * corrige les enfants flex/grid qui débordent.
   ----------------------------------------------------------------- */
* { min-width: 0; }
html, body { overflow-x: clip; max-width: 100%; }

.hero,
.logo-strip,
.cockpit-section,
.modules-section,
.pricing-section,
.final-cta,
footer {
  max-width: 100%;
  overflow-x: hidden;
}

/* Clip le .plume et les glass cards au niveau du visuel */
.hero-visual { overflow: hidden; }

/* -----------------------------------------------------------------
   P0 — HEADER STICKY MOBILE (< 900px)
   Remplace position: fixed par sticky pour sortir du flux et éviter
   que le header chevauchent le contenu. Le nav reste absolute.
   Desktop (>= 900px) : fixed conservé par la cascade existante.
   ----------------------------------------------------------------- */
@media (max-width: 899px) {
  .site-header {
    position: sticky;
    top: max(0px, env(safe-area-inset-top));
    left: auto;
    transform: none;
    width: 100%;
    overflow: visible; /* permet au nav absolu de dépasser */
    z-index: 50;
  }

  /* Nav ouvert ancré sous le header sticky */
  .site-header.menu-open nav {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin-top: 6px;
    z-index: 49;
  }
}

/* -----------------------------------------------------------------
   P0 — SCROLL-PADDING-TOP UNIFIÉ (une seule source de vérité)
   Écrase les valeurs 96px / 82px / 110px définies à plusieurs endroits.
   ----------------------------------------------------------------- */
@media (max-width: 899px) {
  html { scroll-padding-top: calc(var(--header-h) + 16px); }
}

@media (min-width: 900px) {
  html { scroll-padding-top: 110px; }
}

/* -----------------------------------------------------------------
   P0 — BODY PADDING-BOTTOM (CTA flottant)
   Remplace le padding-bottom:82px hardcodé. Inclut safe-area iOS.
   Desktop : on remet à 0.
   ----------------------------------------------------------------- */
@media (max-width: 899px) {
  body {
    padding-bottom: calc(var(--cta-bar-h) + env(safe-area-inset-bottom) + 12px);
  }
}

@media (min-width: 900px) {
  body { padding-bottom: 0; }
}

/* -----------------------------------------------------------------
   P0 — CTA FLOTTANT (.mobile-action) — CORRECTIONS
   Marges via --page-px, hauteur stable, safe area, transition hide.
   ----------------------------------------------------------------- */
@media (max-width: 899px) {
  .mobile-action {
    left: var(--page-px);
    right: var(--page-px);
    bottom: max(12px, env(safe-area-inset-bottom));
    height: var(--cta-bar-h);
    overflow: hidden;
    transition: opacity .3s ease, transform .3s ease;
  }
}

.mobile-action.cta-hidden {
  opacity: 0;
  pointer-events: none;
  transform: translateY(8px);
}

/* -----------------------------------------------------------------
   P1 — PADDING HORIZONTAL UNIFORME SECTIONS
   ----------------------------------------------------------------- */
@media (max-width: 899px) {
  .hero,
  .cockpit-section,
  .modules-section,
  .pricing-section,
  .final-cta {
    padding-left: var(--page-px);
    padding-right: var(--page-px);
  }

  .logo-strip {
    padding-left: var(--page-px);
    padding-right: var(--page-px);
  }

  footer {
    padding-left: var(--page-px);
    padding-right: var(--page-px);
  }
}

/* -----------------------------------------------------------------
   P1 — RYTHME VERTICAL DES SECTIONS
   ----------------------------------------------------------------- */
@media (max-width: 899px) {
  .cockpit-section,
  .modules-section,
  .pricing-section {
    padding-top: var(--section-gap);
    padding-bottom: var(--section-gap);
  }

  .logo-strip {
    margin-top: 32px;
    margin-bottom: 0;
  }
}

/* -----------------------------------------------------------------
   P1 — HERO — TYPOGRAPHIE ET VISUEL MOBILE
   ----------------------------------------------------------------- */
@media (max-width: 899px) {
  .hero h1 {
    font-size: clamp(40px, 11.5vw, 58px);
    line-height: 0.97;
    letter-spacing: -0.045em;
    margin-top: 20px;
    margin-bottom: 16px;
  }

  .hero-line-em { font-size: 0.88em; }

  .hero-lede {
    font-size: clamp(14px, 3.8vw, 17px);
    line-height: 1.6;
  }

  .hero-eyebrow { margin-bottom: 16px; }

  .hero-visual { height: clamp(320px, 75vw, 530px); }
}

/* Trust-line en row sur écrans <= 599px */
@media (max-width: 599px) {
  .trust-line {
    flex-direction: row;
    align-items: center;
    gap: 12px;
    margin-top: 24px;
  }
  .trust-meta { gap: 2px; }
  .trust-meta p { font-size: 11px; }
}

/* -----------------------------------------------------------------
   P1 — TYPOGRAPHIE RESPONSIVE — Headings sections
   ----------------------------------------------------------------- */
@media (max-width: 899px) {
  .section-heading h2,
  .final-cta h2 {
    font-size: clamp(34px, 9.5vw, 52px);
    line-height: 1.04;
    letter-spacing: -0.04em;
  }

  .bento h3 { font-size: clamp(20px, 5vw, 27px); }

  .price-card h3 { font-size: clamp(36px, 9vw, 48px); }
}

/* -----------------------------------------------------------------
   P1 — LOGO STRIP
   ----------------------------------------------------------------- */
@media (max-width: 899px) {
  .logo-strip {
    display: flex;
    justify-content: center;
    gap: 32px;
    flex-wrap: wrap;
  }

  .logo-strip > span {
    width: 100%;
    text-align: center;
    margin-bottom: 8px;
  }

  .integration-logo {
    flex: 0 0 auto;
    justify-content: center;
  }
}

/* -----------------------------------------------------------------
   P1 — CARTES BENTO
   ----------------------------------------------------------------- */
@media (max-width: 899px) {
  .bento {
    min-height: 0;
    height: auto;
    padding: var(--card-padding);
    border-radius: var(--card-radius);
  }

  .bento-grid { gap: 12px; }

  .finance {
    flex-direction: column;
    gap: 20px;
    align-items: flex-start;
    min-height: 0;
    padding: var(--card-padding);
  }

  .donut {
    width: 130px;
    height: 130px;
    align-self: center;
  }
}

/* -----------------------------------------------------------------
   P1 — PRICING CARDS
   ----------------------------------------------------------------- */
@media (max-width: 899px) {
  .pricing-grid {
    grid-template-columns: 1fr;
    gap: 16px;
    max-width: 560px;
    margin-inline: auto;
  }

  .price-card,
  .featured {
    min-height: 0;
    height: auto;
    padding: var(--card-padding);
    border-radius: var(--card-radius);
  }

  .price-card p { min-height: 0; }

  .price-card .button {
    min-height: 50px;
    width: 100%;
    margin-top: 16px;
  }

  .popular {
    top: 14px;
    left: auto;
    right: 14px;
    transform: none;
  }
}

/* -----------------------------------------------------------------
   P1 — DASHBOARD / COCKPIT
   ----------------------------------------------------------------- */
@media (max-width: 899px) {
  .dashboard-frame {
    border-radius: var(--card-radius);
    overflow-x: hidden;
  }
}

/* 320–375px : paddings internes réduits */
@media (max-width: 375px) {
  .dash-main { padding: 10px 8px; }
  .dash-top h3 { font-size: 17px; }
  .stats-grid strong { font-size: 17px; }
  .bookings i { font-size: 7px; padding: 5px 4px; }
}

/* -----------------------------------------------------------------
   P1 — VISUEL HERO — glass cards repositionnées sur mobile
   Évite chevauchements entre revenue-card / guest-card / rating-card.
   ----------------------------------------------------------------- */
@media (max-width: 640px) {
  .rating-card {
    right: 10px;
    bottom: 160px;
    min-width: 130px;
  }

  .guest-card {
    left: 10px;
    top: 42%;
    bottom: auto;
    max-width: min(220px, calc(100% - 140px));
  }

  .revenue-card {
    top: 12px;
    right: 10px;
    width: min(175px, calc(100% - 20px));
  }
}

/* -----------------------------------------------------------------
   P2 — SAFE AREAS
   ----------------------------------------------------------------- */
/* Header : safe area top (déjà dans sticky top, on couvre aussi le padding) */
.site-header { padding-top: max(0px, env(safe-area-inset-top)); }

/* Footer : safe area bottom */
footer { padding-bottom: max(28px, calc(env(safe-area-inset-bottom) + 16px)); }

/* Body : safe areas latérales (déjà définies à la ligne 452, on renforce) */
body {
  padding-left: env(safe-area-inset-left);
  padding-right: env(safe-area-inset-right);
}

/* -----------------------------------------------------------------
   P2 — TOUCH TARGETS — tous les éléments interactifs >= 44×44px
   ----------------------------------------------------------------- */
.menu-button,
.nav-cta,
.button,
.mobile-action a,
.price-card .button,
.site-header nav a,
footer a {
  min-height: 44px;
  min-width: 44px;
}

/* -----------------------------------------------------------------
   P2 — ANIMATIONS MOBILE — réduire la complexité
   Perspective retirée sur mobile pour éviter le layout shift.
   ----------------------------------------------------------------- */
@media (max-width: 899px) {
  .dashboard-frame.is-visible { perspective: none; }
}

/* -----------------------------------------------------------------
   Fin du bloc d'optimisation responsive mobile — StayVault
   ================================================================= */

