:root{
  --ink:#102b35; --muted:#5c7380; --teal:#087f82; --teal2:#13a3a1; --mint:#e9f7f4; --cream:#fbf7ef; --line:#dfe9ea; --white:#fff; --shadow:0 24px 70px rgba(16,43,53,.13); --radius:28px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:linear-gradient(180deg,#fff 0%,#f8fbfb 42%,#fff 100%);line-height:1.6} img{max-width:100%;display:block} a{color:inherit;text-decoration:none}.notice-bar{background:#0c3138;color:#eafdf9;text-align:center;padding:.55rem 1rem;font-size:.85rem}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.9);backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:space-between;padding:1rem clamp(1rem,3vw,3rem);border-bottom:1px solid rgba(223,233,234,.75)}.brand{display:flex;gap:.8rem;align-items:center}.brand-mark{width:46px;height:46px;border-radius:15px;background:linear-gradient(135deg,var(--teal),var(--teal2));color:#fff;display:grid;place-items:center;font-weight:800;letter-spacing:.05em}.brand strong{display:block;font-weight:800}.brand small{display:block;color:var(--muted);font-size:.75rem}.main-nav{display:flex;align-items:center;gap:1.2rem;font-size:.93rem;font-weight:650}.main-nav a{color:#22434d}.main-nav a.active{color:var(--teal);font-weight:900}.nav-cta{background:var(--teal);color:#fff!important;padding:.7rem 1rem;border-radius:999px}.nav-cta.active{box-shadow:0 10px 26px rgba(8,127,130,.22)}.menu-toggle{display:none;background:#fff;border:1px solid var(--line);border-radius:12px;padding:.45rem .65rem;font-size:1.2rem}.section-pad{padding:clamp(4rem,7vw,7rem) clamp(1.2rem,5vw,5rem)}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.95fr);gap:3rem;align-items:center;min-height:78vh}.page-hero{min-height:42vh;display:grid;place-items:center}.eyebrow{margin:0 0 .8rem;text-transform:uppercase;letter-spacing:.14em;color:var(--teal);font-weight:800;font-size:.76rem}.hero h1,.section-head h1,h2{font-family:'Playfair Display',Georgia,serif;line-height:1.02;margin:0 0 1.2rem}.hero h1,.section-head h1{font-size:clamp(2.8rem,6vw,6.6rem);max-width:900px}.lead{font-size:clamp(1.05rem,1.4vw,1.25rem);color:var(--muted);max-width:680px}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin:1.8rem 0}.btn{border:0;border-radius:999px;padding:.92rem 1.25rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s ease}.btn.primary{background:linear-gradient(135deg,var(--teal),var(--teal2));color:#fff;box-shadow:0 14px 32px rgba(8,127,130,.25)}.btn.secondary{border:1px solid var(--teal);color:var(--teal);background:#fff}.btn:hover{transform:translateY(-2px)}.btn.full{width:100%;border-radius:16px;margin-top:.8rem}.text-link{display:inline-block;margin-top:1rem;color:var(--teal);font-weight:900}.trust-row{display:flex;gap:.7rem;flex-wrap:wrap}.trust-row span{background:var(--mint);border:1px solid #cfebe6;border-radius:999px;padding:.55rem .8rem;color:#24575f;font-size:.86rem;font-weight:700}.hero-card,.mockup-frame,.demo-panel{border-radius:var(--radius);background:#fff;box-shadow:var(--shadow);overflow:hidden;border:1px solid rgba(223,233,234,.8)}.hero-card img{height:100%;object-fit:cover}.split{display:grid;grid-template-columns:.85fr 1.15fr;gap:3rem;align-items:center}.split.reverse{grid-template-columns:1fr .9fr}.split.reverse .demo-panel{order:1}.split.reverse .section-copy{order:2}.section-copy h2,.section-head h2{font-size:clamp(2.1rem,4vw,4.2rem)}.section-copy p,.section-head p{color:var(--muted);font-size:1.05rem}.tick-list{list-style:none;padding:0;margin:1.5rem 0 0}.tick-list li{position:relative;padding-left:1.8rem;margin:.65rem 0;color:#294751}.tick-list li:before{content:'✓';position:absolute;left:0;top:0;color:var(--teal);font-weight:900}.soft{background:linear-gradient(135deg,var(--mint),#fff)}.section-head{text-align:center;max-width:850px;margin:0 auto 2.3rem}.cards{display:grid;gap:1.2rem}.cards.four{grid-template-columns:repeat(4,minmax(0,1fr))}.service-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:1.4rem;box-shadow:0 14px 40px rgba(16,43,53,.07)}.service-card .icon{font-size:2rem}.service-card h3{margin:.8rem 0 .4rem}.service-card p{margin:0;color:var(--muted);font-size:.95rem}.chat-shell{padding:1rem;background:#f7fbfb}.chat-head{display:flex;align-items:center;gap:.8rem;background:linear-gradient(135deg,var(--teal),var(--teal2));color:#fff;border-radius:22px 22px 12px 12px;padding:1rem}.avatar{width:42px;height:42px;border-radius:999px;background:#fff;color:var(--teal);display:grid;place-items:center;font-weight:900}.chat-head small{display:block;color:#d6fffa}.chat-body{min-height:310px;padding:1rem;display:flex;flex-direction:column;gap:.65rem}.msg{max-width:86%;padding:.8rem .95rem;border-radius:16px;font-size:.94rem}.bot{background:#fff;border:1px solid var(--line);align-self:flex-start}.user{background:var(--teal);color:#fff;align-self:flex-end}.chat-actions{display:flex;gap:.55rem;flex-wrap:wrap;padding:0 1rem 1rem}.chip{border:1px solid #b8dcda;background:#fff;color:var(--teal);border-radius:999px;padding:.6rem .85rem;font-weight:800;cursor:pointer}.flow-list{display:grid;gap:.75rem;margin-top:1.4rem}.flow-list div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1rem}.flow-list span{display:block;color:var(--muted);font-size:.92rem}.dark{background:#0d3038;color:#fff}.dark .eyebrow{color:#81e3dc}.dark .section-head p,.dark .center-note{color:#c6dbdf}.workflow-grid{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:1rem;max-width:1100px;margin:auto}.workflow-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:24px;padding:1.4rem;min-height:150px}.workflow-card span{color:#81e3dc;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:800}.workflow-card strong{display:block;margin-top:.55rem;font-size:1.25rem}.workflow-card.highlight{background:linear-gradient(135deg,var(--teal),var(--teal2))}.arrow{font-size:2rem;color:#81e3dc}.center-note{text-align:center;margin:2rem 0 0}.scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;max-width:1100px;margin:auto}.scope-box,.pricing-card,.table-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.4rem,3vw,2.4rem);box-shadow:var(--shadow)}.scope-box h3{margin-top:0}.scope-box ul{margin:0;padding-left:1.1rem}.scope-box li{margin:.55rem 0;color:#334f59}.included{border-top:6px solid var(--teal)}.excluded{border-top:6px solid #d9b56f}.investment{background:linear-gradient(135deg,#fff,var(--cream))}.pricing-card{max-width:760px;margin:auto;text-align:center}.pricing-card h2{font-size:clamp(2rem,4vw,4rem)}.price-line{font-size:1.2rem;margin:.5rem 0}.price-line span{font-size:clamp(2.4rem,5vw,4.4rem);font-weight:900;color:var(--teal);letter-spacing:-.04em}.price-line.small span{font-size:clamp(1.8rem,3.4vw,3rem)}.muted{color:var(--muted)}.price-divider{height:1px;background:var(--line);margin:1.5rem 0}.compact{display:inline-block;text-align:left}.next{background:#f7fbfb}.next-card{max-width:900px;margin:auto;text-align:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.5rem,4vw,3rem);box-shadow:var(--shadow)}.center{justify-content:center}.site-footer{text-align:center;padding:2rem 1rem;background:#071f25;color:#dbecef}.fineprint{font-size:.78rem;color:#9bb3ba;max-width:760px;margin:.7rem auto 0}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.table-card{overflow:auto}.table-card table{width:100%;border-collapse:collapse}.table-card th,.table-card td{text-align:left;padding:1rem;border-bottom:1px solid var(--line)}.table-card th{background:#f2f8f7;color:#173741}
@media (max-width:1000px){.hero,.split,.split.reverse,.scope-grid{grid-template-columns:1fr}.split.reverse .demo-panel,.split.reverse .section-copy{order:initial}.cards.four{grid-template-columns:repeat(2,1fr)}.workflow-grid{grid-template-columns:1fr}.arrow{transform:rotate(90deg);text-align:center}.main-nav{display:none;position:absolute;right:1rem;top:74px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:1rem;flex-direction:column;align-items:flex-start}.main-nav.open{display:flex}.menu-toggle{display:block}}
@media (max-width:640px){.section-pad{padding:3.2rem 1rem}.hero h1{font-size:2.55rem}.cards.four{grid-template-columns:1fr}.hero-actions{flex-direction:column}.btn{width:100%}.brand small{display:none}.notice-bar{font-size:.75rem}.site-header{padding:.8rem 1rem}.chat-body{min-height:260px}.price-line span{font-size:2.5rem!important}}
.price-line.addon span{font-size:clamp(1.35rem,2.5vw,2rem)}
.terms-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;text-align:left;margin-top:1rem}
.terms-grid div{background:#f7fbfb;border:1px solid var(--line);border-radius:18px;padding:1rem}
.terms-grid strong{display:block;color:var(--ink);margin-bottom:.35rem}
.terms-grid span{display:block;color:var(--muted);font-size:.92rem}
.contact-line{color:var(--muted);font-size:1.02rem}
@media (max-width:700px){.terms-grid{grid-template-columns:1fr}}
.form-card{max-width:980px;margin:auto;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.4rem,3vw,2.4rem);box-shadow:var(--shadow)}.appointment-form{display:grid;gap:1rem;margin-top:1.4rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.appointment-form label{display:grid;gap:.4rem;color:#294751;font-weight:800}.appointment-form label span,.consent span{font-weight:700}.appointment-form input,.appointment-form select,.appointment-form textarea{width:100%;border:1px solid var(--line);border-radius:16px;padding:.9rem 1rem;font:inherit;color:var(--ink);background:#fff}.appointment-form input:focus,.appointment-form select:focus,.appointment-form textarea:focus{outline:3px solid rgba(19,163,161,.18);border-color:var(--teal)}.consent{display:flex!important;grid-template-columns:auto 1fr;align-items:flex-start;gap:.75rem}.consent input{width:auto;margin-top:.25rem}.form-note{color:var(--muted);margin:.4rem 0 0}.form-alert{display:none;background:#fff2f2;border:1px solid #f0b7b7;color:#8a1f1f;border-radius:16px;padding:1rem;margin:1rem 0}.form-error-visible .form-alert{display:block}.hp-field{position:absolute!important;left:-9999px!important;opacity:0!important}.appointment-form .btn{justify-self:start}
@media (max-width:700px){.form-grid{grid-template-columns:1fr}.appointment-form .btn{width:100%}}
.feature-image{width:100%;height:auto;aspect-ratio:16/11;object-fit:cover}.hero-card .feature-image{height:100%;min-height:360px}.service-image{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:18px;margin-bottom:1rem;background:var(--mint)}.inline-card-image{border-radius:22px;margin:0 0 1.2rem}.demo-panel>.feature-image{aspect-ratio:16/9;border-bottom:1px solid var(--line)}
.chat-input{border:1px solid #b8dcda;background:#fff;color:var(--ink);border-radius:18px;padding:.75rem .9rem;font:inherit;min-width:min(100%,260px)}textarea.chat-input{width:100%;min-height:92px}.inline-error{display:block;width:100%;margin:0 0 .5rem}


/* Sprint 4B public content polish */
.notice-bar{background:#0d3038;color:#eafdf9;text-align:center;padding:.65rem 1rem;font-weight:700;font-size:.9rem}
.service-card.featured{display:grid;gap:1rem}.service-card.featured .service-image{margin-bottom:.25rem}.detail-list{display:grid;gap:.8rem;margin-top:1.2rem}.detail-list div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1rem}.detail-list strong{display:block;color:var(--ink)}.detail-list span{display:block;color:var(--muted);font-size:.94rem}.care-note{background:#fff7e8;border:1px solid #f1ddb5;border-radius:18px;padding:1rem;color:#4c3b1f}.assistant-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.4rem,3vw,2.2rem);box-shadow:var(--shadow)}.assistant-card .chat-shell{border:1px solid var(--line);border-radius:24px}.quote-band{background:#0d3038;color:#fff;text-align:center}.quote-band .section-head p{color:#c6dbdf}.contact-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.contact-strip div{background:#fff;border:1px solid var(--line);border-radius:20px;padding:1rem}.contact-strip strong{display:block}.contact-strip span,.contact-strip a{color:var(--muted)}.feature-image,.service-image{object-position:center center}.footer-copy{font-size:.8rem;color:#9bb3ba;margin-top:.7rem}.page-hero.slim{min-height:34vh}.main-nav a[data-page="ai-front-desk"]{white-space:nowrap}
@media (max-width:900px){.contact-strip{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.contact-strip{grid-template-columns:1fr}}

/* De La Vie logo asset upgrade */
.brand-logo{display:block;width:162px;height:auto;max-height:50px;object-fit:contain;flex:0 0 auto}.brand .brand-logo+span{display:none}.brand-mark{display:none}@media (max-width:640px){.brand-logo{width:128px;max-height:40px}.brand{gap:.55rem}}
