:root{
  --navy:#042b4f;
  --navy-900:#021a31;
  --navy-800:#06365f;
  --green:#13a463;
  --green-700:#0a7f4a;
  --teal:#0da8a2;
  --mint:#e9fbf2;
  --aqua:#eefbfb;
  --cream:#f8f5ee;
  --ivory:#fbfcf8;
  --paper:#f7faf8;
  --ink:#071923;
  --muted:#63747c;
  --muted-2:#8c9aa0;
  --white:#fff;
  --line:rgba(4,43,79,.12);
  --line-strong:rgba(4,43,79,.2);
  --glass:rgba(255,255,255,.74);
  --shadow:0 32px 90px rgba(4,43,79,.14);
  --shadow-soft:0 18px 50px rgba(4,43,79,.1);
  --radius:30px;
  --radius-lg:42px;
  --serif:'Cormorant Garamond', Georgia, serif;
  --sans:'Inter', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:98px}
body{
  margin:0;
  font-family:var(--sans);
  color:var(--ink);
  background:var(--paper);
  overflow-x:hidden;
  line-height:1.5;
}
body.no-scroll{overflow:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
.skip-link{position:absolute;left:16px;top:-80px;z-index:999;background:var(--navy);color:#fff;padding:12px 16px;border-radius:999px;transition:.2s ease}
.skip-link:focus{top:16px}
.shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.grain{position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 250 250' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}
.ambient{position:fixed;inset:0;z-index:-2;overflow:hidden;background:linear-gradient(180deg,#fbfffc 0%,#f2fbf7 45%,#f7faf9 100%)}
.ambient span{position:absolute;border-radius:999px;filter:blur(20px);opacity:.72;transform:translateZ(0)}
.ambient span:nth-child(1){width:480px;height:480px;left:-190px;top:-130px;background:radial-gradient(circle,rgba(19,164,99,.22),transparent 66%)}
.ambient span:nth-child(2){width:520px;height:520px;right:-190px;top:40px;background:radial-gradient(circle,rgba(4,43,79,.18),transparent 68%)}
.ambient span:nth-child(3){width:620px;height:620px;left:32%;bottom:-320px;background:radial-gradient(circle,rgba(13,168,162,.12),transparent 70%)}
.site-header{
  position:fixed;z-index:50;top:16px;left:50%;transform:translateX(-50%);
  width:min(1180px,calc(100% - 28px));
  min-height:72px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;
  padding:10px 12px 10px 14px;border:1px solid rgba(255,255,255,.72);
  background:rgba(255,255,255,.68);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  box-shadow:0 18px 60px rgba(4,43,79,.11);border-radius:999px;
}
.site-header.is-scrolled{background:rgba(255,255,255,.86);box-shadow:0 22px 70px rgba(4,43,79,.15)}
.brand,.footer-brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:-.04em;color:var(--navy)}
.brand img,.footer-brand img{border-radius:50%;background:#fff;box-shadow:0 10px 26px rgba(4,43,79,.12)}
.brand span{font-size:1.08rem}.desktop-nav{display:flex;align-items:center;justify-content:center;gap:6px}
.desktop-nav a,.text-link{font-size:.86rem;font-weight:700;color:#344b55;padding:12px 14px;border-radius:999px;transition:.22s ease}
.desktop-nav a:hover,.text-link:hover{background:rgba(4,43,79,.06);color:var(--navy)}
.header-actions{display:flex;align-items:center;gap:8px}.menu-toggle{display:none;width:44px;height:44px;border:0;background:var(--navy);border-radius:50%;position:relative}
.menu-toggle span{position:absolute;left:12px;right:12px;height:2px;background:#fff;border-radius:999px;transition:.25s ease}.menu-toggle span:first-child{top:17px}.menu-toggle span:last-child{top:25px}.menu-toggle[aria-expanded="true"] span:first-child{top:21px;transform:rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{top:21px;transform:rotate(-45deg)}
.mobile-nav{display:none;position:absolute;top:82px;left:0;right:0;padding:18px;background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow)}
.mobile-nav a{display:block;padding:14px 16px;border-radius:18px;font-weight:700;color:var(--navy)}.mobile-nav a:hover{background:#eef8f3}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 24px;border-radius:999px;border:1px solid transparent;font-weight:800;letter-spacing:-.02em;transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease,color .22s ease;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(19,164,99,.33);outline-offset:3px}
.btn-primary{background:linear-gradient(135deg,var(--navy),var(--navy-800));color:#fff;box-shadow:0 18px 42px rgba(4,43,79,.25)}
.btn-primary:hover{box-shadow:0 22px 55px rgba(4,43,79,.3)}
.btn-outline{background:rgba(255,255,255,.72);border-color:var(--line-strong);color:var(--navy)}.btn-outline:hover{background:#fff;border-color:rgba(19,164,99,.34);box-shadow:var(--shadow-soft)}
.btn-ghost{background:transparent;color:var(--navy);padding-inline:10px}.btn-ghost:hover{background:rgba(4,43,79,.05)}.btn-small{min-height:46px;padding-inline:18px;font-size:.88rem}.btn-light{background:#fff;color:var(--navy);box-shadow:0 18px 44px rgba(0,0,0,.18)}.btn-soft{background:rgba(255,255,255,.13);color:#fff;border-color:rgba(255,255,255,.22)}.btn-soft:hover{background:rgba(255,255,255,.2)}
.hero{min-height:100svh;display:flex;align-items:center;padding:138px 0 66px;position:relative}
.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.88fr);gap:64px;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0 0 18px;font-size:.78rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:var(--green-700)}
.eyebrow span{width:38px;height:1px;background:currentColor;display:inline-block}.eyebrow.light{color:#99f5c8}.hero h1,.section h2,.booking-copy h2{font-family:var(--serif);font-weight:700;letter-spacing:-.065em;line-height:.88;margin:0;color:var(--navy-900)}
.hero h1{font-size:clamp(4.4rem,9vw,8.9rem);max-width:860px}.hero-lede{font-size:clamp(1.08rem,1.55vw,1.32rem);line-height:1.75;color:#435760;max-width:720px;margin:28px 0 0}.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.hero-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:680px;margin-top:38px}.hero-proof div{padding:18px;border:1px solid var(--line);background:rgba(255,255,255,.56);border-radius:24px}.hero-proof strong{display:block;color:var(--navy);font-size:1.15rem;letter-spacing:-.03em}.hero-proof span{font-size:.82rem;color:var(--muted);font-weight:700}
.hero-visual{position:relative}.visual-card{position:relative;min-height:620px;border-radius:var(--radius-lg);overflow:hidden;background:linear-gradient(145deg,#fff,#eef9f4);border:1px solid rgba(255,255,255,.9);box-shadow:0 44px 120px rgba(4,43,79,.18),inset 0 0 0 1px rgba(255,255,255,.7)}
.visual-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 20%,rgba(19,164,99,.18),transparent 35%),linear-gradient(135deg,rgba(4,43,79,.08),transparent 45%)}.visual-toolbar{position:absolute;top:22px;left:24px;display:flex;gap:8px;z-index:2}.visual-toolbar span{width:10px;height:10px;border-radius:50%;background:rgba(4,43,79,.22)}
.living-room-scene{position:absolute;inset:0}.window{position:absolute;width:230px;height:310px;left:62px;top:88px;border-radius:30px;background:linear-gradient(180deg,#eafff8,#fff);box-shadow:inset 0 0 0 1px rgba(4,43,79,.08)}.window:after{content:"";position:absolute;inset:45px 0 auto;height:1px;background:rgba(4,43,79,.12);box-shadow:0 80px 0 rgba(4,43,79,.08)}
.sofa-shape{position:absolute;left:50%;bottom:110px;width:74%;height:238px;transform:translateX(-50%);filter:drop-shadow(0 35px 45px rgba(4,43,79,.18))}.sofa-shape:before{content:"";position:absolute;left:11%;right:11%;bottom:62px;height:172px;border-radius:48px 48px 34px 34px;background:linear-gradient(135deg,#eefaf5,#cce7dc)}.sofa-shape:after{content:"";position:absolute;left:0;right:0;bottom:0;height:112px;border-radius:46px;background:linear-gradient(135deg,#d9eee5,#b8d8cd)}.sofa-shape span:nth-child(1),.sofa-shape span:nth-child(2){position:absolute;bottom:70px;width:24%;height:140px;background:#c6e1d7;border-radius:38px;z-index:1}.sofa-shape span:nth-child(1){left:0}.sofa-shape span:nth-child(2){right:0}.sofa-shape span:nth-child(3){position:absolute;left:28%;right:28%;top:10px;height:72px;background:#f7fffb;border-radius:26px;transform:rotate(-2deg);z-index:2}
.plant{position:absolute;right:74px;bottom:190px;width:150px;height:260px}.plant:before{content:"";position:absolute;left:68px;bottom:0;width:12px;height:160px;background:#7aa596;border-radius:999px}.plant:after{content:"";position:absolute;left:48px;bottom:0;width:56px;height:48px;border-radius:14px 14px 22px 22px;background:var(--navy)}.plant i{position:absolute;background:linear-gradient(135deg,#13a463,#7be0b2);border-radius:100% 0 100% 0}.plant i:nth-child(1){width:68px;height:38px;left:8px;top:58px;transform:rotate(-24deg)}.plant i:nth-child(2){width:78px;height:42px;right:0;top:92px;transform:rotate(25deg)}.plant i:nth-child(3){width:65px;height:38px;left:35px;top:25px;transform:rotate(8deg)}
.sparkle{position:absolute;width:9px;height:9px;background:var(--green);border-radius:50%;box-shadow:0 0 0 7px rgba(19,164,99,.08),0 0 28px rgba(19,164,99,.5);animation:float 5s ease-in-out infinite}.s1{right:32%;top:22%}.s2{right:19%;top:37%;animation-delay:1.2s}.s3{left:38%;top:30%;animation-delay:2.2s}
.floating-metric,.quality-stamp{position:absolute;z-index:4;background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.9);backdrop-filter:blur(20px);border-radius:22px;box-shadow:0 20px 50px rgba(4,43,79,.13)}.floating-metric{padding:15px 17px}.floating-metric b{display:block;color:var(--navy);font-size:.95rem}.floating-metric span{display:block;color:var(--muted);font-size:.76rem;font-weight:700}.metric-one{left:28px;bottom:132px}.metric-two{right:28px;top:100px}.quality-stamp{right:34px;bottom:38px;width:96px;height:96px;display:grid;place-items:center;text-align:center;text-transform:uppercase;font-size:.69rem;letter-spacing:.15em;font-weight:900;color:var(--green-700);border-radius:50%}
.trust-bar{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;margin-top:-16px;margin-bottom:54px;background:rgba(255,255,255,.7);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);overflow:hidden}.trust-bar div{padding:22px 18px;border-right:1px solid var(--line)}.trust-bar div:last-child{border-right:0}.trust-bar b{display:block;color:var(--navy);font-size:.9rem;letter-spacing:-.02em}.trust-bar span{font-size:.77rem;color:var(--muted);font-weight:650}
.section{padding:96px 0}.section-head{display:grid;grid-template-columns:minmax(0,.9fr) minmax(280px,.58fr);gap:50px;align-items:end;margin-bottom:40px}.section-head.narrow{display:block;max-width:720px;text-align:center;margin-inline:auto}.section h2,.booking-copy h2{font-size:clamp(2.9rem,5.4vw,6.4rem)}.section-head p:not(.eyebrow),.areas-grid p,.booking-copy p{font-size:1.04rem;line-height:1.78;color:var(--muted);margin:0 0 8px}.services-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.service-card{min-height:268px;padding:24px;border:1px solid var(--line);border-radius:30px;background:rgba(255,255,255,.68);box-shadow:0 10px 35px rgba(4,43,79,.055);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease;display:flex;flex-direction:column}.service-card:hover{transform:translateY(-8px);border-color:rgba(19,164,99,.32);box-shadow:0 26px 70px rgba(4,43,79,.13);background:#fff}.icon{width:48px;height:48px;border-radius:17px;background:linear-gradient(135deg,#eafbf2,#fff);display:grid;place-items:center;color:var(--green-700);font-size:1.25rem;font-weight:900;box-shadow:inset 0 0 0 1px rgba(19,164,99,.12)}.service-card h3{margin:22px 0 8px;color:var(--navy);font-size:1.12rem;letter-spacing:-.04em}.service-card p{margin:0;color:var(--muted);font-size:.92rem;line-height:1.62}.service-card a{margin-top:auto;color:var(--green-700);font-weight:900;font-size:.88rem;padding-top:20px}.service-card a:after{content:" →"}
.split-section{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:36px;align-items:stretch}.editorial-panel{padding:46px;border-radius:var(--radius-lg);background:var(--navy);color:#fff;min-height:560px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.editorial-panel:before{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at 10% 20%,rgba(19,164,99,.28),transparent 34%),radial-gradient(circle at 80% 80%,rgba(13,168,162,.18),transparent 38%)}.editorial-panel>*{position:relative}.editorial-panel h2{color:#fff;font-size:clamp(2.8rem,4.5vw,5.5rem)}.why-list{display:grid;gap:14px}.why-list div{padding:28px;border:1px solid var(--line);background:rgba(255,255,255,.72);border-radius:28px;transition:.24s ease}.why-list div:hover{transform:translateX(6px);background:#fff;box-shadow:var(--shadow-soft)}.why-list strong{display:block;color:var(--navy);font-size:1.02rem;margin-bottom:8px}.why-list p{margin:0;color:var(--muted);line-height:1.7}
.process-section{background:linear-gradient(180deg,rgba(4,43,79,.04),rgba(19,164,99,.05));border-block:1px solid var(--line)}.timeline{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:46px;position:relative}.timeline:before{content:"";position:absolute;left:8%;right:8%;top:38px;height:1px;background:linear-gradient(90deg,transparent,var(--line-strong),transparent)}.timeline-item{position:relative;background:rgba(255,255,255,.72);border:1px solid var(--line);border-radius:28px;padding:22px;min-height:245px;box-shadow:0 12px 35px rgba(4,43,79,.06)}.timeline-item span{width:52px;height:52px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900;margin-bottom:42px;position:relative;z-index:2}.timeline-item h3{font-size:1.1rem;color:var(--navy);margin:0 0 8px}.timeline-item p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.64}
.comparison-card{border-radius:var(--radius-lg);padding:16px;background:rgba(255,255,255,.72);border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}.comparison{position:relative;border-radius:34px;overflow:hidden;isolation:isolate;background:#eaf5f0}.comparison-img{width:100%;height:auto}.comparison-after{position:absolute;inset:0;width:55%;overflow:hidden;border-right:1px solid rgba(255,255,255,.9)}.comparison-after .comparison-img{height:auto;max-width:none;width:var(--comparison-width,100%);min-width:100%}.comparison-line{position:absolute;top:0;bottom:0;left:55%;width:2px;background:#fff;box-shadow:0 0 0 1px rgba(4,43,79,.1),0 0 40px rgba(4,43,79,.2);transform:translateX(-1px);z-index:3}.comparison-line span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:78px;height:78px;border-radius:50%;background:#fff;color:var(--navy);display:grid;place-items:center;font-size:.77rem;text-transform:uppercase;letter-spacing:.13em;font-weight:900;box-shadow:0 18px 45px rgba(4,43,79,.22)}.comparison-range{position:absolute;inset:0;opacity:0;cursor:ew-resize;z-index:4;width:100%;height:100%}.ba-label{position:absolute;top:22px;z-index:5;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.75);backdrop-filter:blur(12px);font-weight:900;font-size:.82rem;color:var(--navy)}.ba-label.before{right:22px}.ba-label.after{left:22px}
.stats-band{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:32px;margin-top:24px;border-radius:var(--radius-lg);background:var(--navy);box-shadow:var(--shadow);color:#fff}.stats-band div{padding:30px;border:1px solid rgba(255,255,255,.12);border-radius:28px;background:rgba(255,255,255,.06)}.stats-band strong{font-family:var(--serif);font-size:clamp(3rem,5vw,5rem);line-height:.8;letter-spacing:-.06em;display:block}.stats-band strong:after{content:"+"}.stats-band div:nth-child(4) strong:after{content:"%"}.stats-band span{display:block;margin-top:15px;color:#cce6df;font-weight:750;font-size:.9rem}.testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.testimonial-card{margin:0;padding:30px;border:1px solid var(--line);border-radius:32px;background:rgba(255,255,255,.76);box-shadow:0 12px 38px rgba(4,43,79,.06)}.stars{color:#f0a500;letter-spacing:.1em;margin-bottom:18px}.testimonial-card blockquote{margin:0;color:#203640;font-size:1.02rem;line-height:1.75}.testimonial-card figcaption{margin-top:22px;color:var(--muted);font-weight:800;font-size:.86rem}.areas-section{background:var(--navy);color:#fff}.areas-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:48px;align-items:center}.areas-grid h2{color:#fff}.areas-grid p{color:#c9dfd9}.area-list{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.area-list span{padding:14px 18px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);font-weight:800;color:#eefbf5}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.price-card{padding:30px;border:1px solid var(--line);border-radius:34px;background:rgba(255,255,255,.72);box-shadow:0 12px 38px rgba(4,43,79,.06)}.price-card.featured{background:var(--navy);color:#fff;transform:translateY(-14px);box-shadow:var(--shadow)}.price-card p{margin:0 0 12px;color:var(--green-700);font-weight:900;text-transform:uppercase;font-size:.72rem;letter-spacing:.14em}.price-card.featured p{color:#95f1c6}.price-card h3{font-size:1.5rem;margin:0 0 16px;color:var(--navy);letter-spacing:-.04em}.price-card.featured h3{color:#fff}.price-card strong{font-family:var(--serif);font-size:2.55rem;letter-spacing:-.05em;color:var(--navy)}.price-card.featured strong{color:#fff}.price-card ul{padding:0;margin:20px 0 26px;list-style:none}.price-card li{margin:10px 0;color:var(--muted);padding-left:20px;position:relative}.price-card.featured li{color:#d9eee9}.price-card li:before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;border-radius:50%;background:var(--green)}
.faq .accordion{max-width:880px;margin-inline:auto;border:1px solid var(--line);border-radius:32px;background:rgba(255,255,255,.72);overflow:hidden;box-shadow:0 16px 44px rgba(4,43,79,.08)}.faq-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:24px 28px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;font-weight:900;color:var(--navy);font-size:1.02rem}.faq-item i{width:18px;height:18px;position:relative;flex:0 0 18px}.faq-item i:before,.faq-item i:after{content:"";position:absolute;background:var(--green);border-radius:999px}.faq-item i:before{width:18px;height:2px;top:8px}.faq-item i:after{width:2px;height:18px;left:8px}.faq-item[aria-expanded="true"] i:after{transform:scaleY(0)}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease;border-bottom:1px solid var(--line)}.faq-answer.is-open{grid-template-rows:1fr}.faq-answer p{overflow:hidden;margin:0;padding:0 28px;color:var(--muted);line-height:1.75}.faq-answer.is-open p{padding-bottom:24px}
.booking-section{padding:110px 0;background:radial-gradient(circle at 20% 10%,rgba(19,164,99,.3),transparent 35%),linear-gradient(135deg,var(--navy),var(--navy-900));color:#fff}.booking-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(420px,.72fr);gap:54px;align-items:center}.booking-copy h2{color:#fff}.booking-copy p{color:#d4e8e2;max-width:620px}.booking-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.booking-form{background:rgba(255,255,255,.98);color:var(--ink);padding:30px;border-radius:34px;box-shadow:0 36px 90px rgba(0,0,0,.22)}.form-row{margin-bottom:16px}.form-row.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-row label{display:block;color:var(--navy);font-size:.82rem;font-weight:900;margin-bottom:8px}input,select,textarea{width:100%;border:1px solid rgba(4,43,79,.16);background:#f9fcfb;border-radius:18px;padding:15px 16px;transition:.2s ease}textarea{resize:vertical;min-height:112px}input:focus,select:focus,textarea:focus{border-color:rgba(19,164,99,.52);background:#fff;box-shadow:0 0 0 4px rgba(19,164,99,.08)}.form-error{min-height:22px;margin:0 0 12px;color:#b42318;font-weight:800;font-size:.87rem}.form-submit{width:100%}
.site-footer{padding:70px 0 24px;background:#f3f8f5}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,.7fr);gap:34px}.footer-brand{margin-bottom:14px}.footer-grid p{color:var(--muted);max-width:430px}.footer-grid h3{font-size:.9rem;color:var(--navy);text-transform:uppercase;letter-spacing:.14em}.footer-grid a:not(.footer-brand){display:block;margin:10px 0;color:var(--muted);font-weight:750}.footer-grid a:hover{color:var(--green-700)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:44px;padding-top:22px;color:var(--muted);font-size:.86rem;font-weight:700}.success-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:22px;background:rgba(2,26,49,.48);backdrop-filter:blur(14px);opacity:0;pointer-events:none;transition:.25s ease}.success-modal.is-open{opacity:1;pointer-events:auto}.success-card{position:relative;width:min(460px,100%);padding:38px;border-radius:34px;background:#fff;text-align:center;box-shadow:0 40px 100px rgba(0,0,0,.28)}.modal-close{position:absolute;top:14px;right:14px;border:0;background:#edf7f2;width:38px;height:38px;border-radius:50%;font-size:1.4rem}.success-icon{width:68px;height:68px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;margin:0 auto 20px;font-size:2rem;font-weight:900}.success-card h2{margin:0 0 10px;color:var(--navy);font-size:1.7rem}.success-card p{color:var(--muted);margin:0 0 24px}.reveal{opacity:0;transform:translateY(28px);transition:opacity .72s ease,transform .72s ease}.reveal.is-visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@media (max-width:1080px){.hero-grid,.booking-grid{grid-template-columns:1fr;gap:44px}.hero-visual{max-width:720px;margin-inline:auto;width:100%}.trust-bar{grid-template-columns:repeat(3,1fr)}.trust-bar div:nth-child(3){border-right:0}.trust-bar div:nth-child(n+4){border-top:1px solid var(--line)}.services-grid{grid-template-columns:repeat(3,1fr)}.timeline{grid-template-columns:1fr 1fr}.timeline:before{display:none}.split-section,.areas-grid{grid-template-columns:1fr}.testimonial-grid,.pricing-grid{grid-template-columns:1fr}.price-card.featured{transform:none}.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:820px){html{scroll-padding-top:90px}.desktop-nav,.text-link,.header-cta{display:none}.site-header{grid-template-columns:auto 1fr auto;border-radius:30px}.header-actions{justify-content:end}.menu-toggle{display:block}.mobile-nav.is-open{display:block}.hero{padding-top:126px}.hero h1{font-size:clamp(3.9rem,17vw,6.8rem)}.hero-proof,.stats-band{grid-template-columns:1fr 1fr}.section-head{grid-template-columns:1fr;gap:14px}.services-grid{grid-template-columns:1fr 1fr}.visual-card{min-height:520px}.trust-bar{grid-template-columns:1fr 1fr}.trust-bar div{border-top:1px solid var(--line);border-right:1px solid var(--line)}.trust-bar div:nth-child(odd){border-left:0}.form-row.two{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.section{padding:74px 0}}
@media (max-width:560px){.shell{width:min(100% - 28px,1180px)}.site-header{top:10px;width:calc(100% - 20px);min-height:64px}.brand img{width:44px;height:44px}.brand span{font-size:.98rem}.hero{padding-top:118px}.hero h1{font-size:3.7rem;letter-spacing:-.075em}.hero-lede{font-size:1rem}.hero-ctas .btn{width:100%}.hero-proof,.services-grid,.trust-bar,.stats-band,.timeline{grid-template-columns:1fr}.trust-bar div{border-right:0}.section h2,.booking-copy h2{font-size:3.15rem}.editorial-panel{padding:30px;min-height:420px}.visual-card{min-height:440px;border-radius:32px}.window{left:28px;top:75px;width:170px;height:230px}.plant{right:24px;transform:scale(.82);transform-origin:bottom right}.sofa-shape{width:86%;bottom:88px}.metric-two{right:16px;top:70px}.metric-one{left:16px;bottom:92px}.quality-stamp{display:none}.comparison-card{padding:8px;border-radius:28px}.comparison{border-radius:22px}.comparison-line span{width:62px;height:62px;font-size:.62rem}.ba-label{top:12px}.ba-label.before{right:12px}.ba-label.after{left:12px}.booking-form{padding:22px;border-radius:28px}.footer-grid{grid-template-columns:1fr}.area-list{justify-content:flex-start}.section-head p:not(.eyebrow){font-size:.98rem}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* Responsive catalog update */
.service-price{
  display:inline-flex;
  width:max-content;
  margin:4px 0 18px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(19,164,99,.1);
  color:var(--green-700);
  font-size:.82rem;
  font-weight:900;
  letter-spacing:-.02em;
}
.pricing .section-head{
  grid-template-columns:1fr;
  text-align:center;
  justify-items:center;
  max-width:820px;
  margin-inline:auto;
}
.pricing .section-head .eyebrow{
  justify-self:center;
}
.pricing .section-head p:not(.eyebrow){
  max-width:720px;
  margin-inline:auto;
}
.catalog-pricing{
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
}
.catalog-pricing .price-card{
  display:flex;
  flex-direction:column;
}
.catalog-pricing .price-card ul{
  flex:1;
}
.booking-copy{
  max-width:760px;
}
.booking-actions .btn,
.hero-ctas .btn{
  touch-action:manipulation;
}
@media (max-width:1180px){
  .catalog-pricing{grid-template-columns:repeat(2,minmax(0,1fr));}
  .site-header{width:calc(100% - 28px);}
}
@media (max-width:920px){
  .catalog-pricing{grid-template-columns:1fr;}
  .pricing .section-head{text-align:left;justify-items:start;}
  .pricing .section-head .eyebrow{justify-self:start;}
  .pricing .section-head p:not(.eyebrow){margin-inline:0;}
}
@media (max-width:820px){
  .site-header{grid-template-columns:auto auto;justify-content:space-between;gap:10px;}
  .header-actions .btn-small{display:none;}
  .mobile-nav{max-height:calc(100svh - 110px);overflow:auto;}
  .hero-ctas{display:grid;grid-template-columns:1fr 1fr;}
  .hero-ctas .btn-ghost{grid-column:1 / -1;}
}
@media (max-width:560px){
  body{min-width:0;}
  .shell{width:calc(100% - 24px);}
  .hero-ctas{grid-template-columns:1fr;}
  .hero h1{font-size:clamp(3.05rem,15vw,4rem);line-height:.92;}
  .section h2,.booking-copy h2{font-size:clamp(2.45rem,13vw,3.15rem);line-height:.94;}
  .section-head p:not(.eyebrow),.hero-lede,.booking-copy p{max-width:100%;}
  .service-card,.price-card,.testimonial-card,.timeline-item{border-radius:26px;}
  .booking-actions{display:grid;grid-template-columns:1fr;}
  .booking-actions .btn{width:100%;}
  .price-card strong{font-size:2.15rem;}
  .footer-grid{gap:18px;}
}
@media (max-width:380px){
  .brand span{display:none;}
  .hero h1{font-size:3rem;}
  .btn{padding-inline:18px;}
  .section{padding:60px 0;}
}

/* Client requested interaction/layout updates */
.theme-toggle{
  width:46px;height:46px;border:1px solid var(--line);border-radius:50%;
  display:grid;place-items:center;background:rgba(255,255,255,.72);color:var(--navy);
  font-weight:900;box-shadow:0 10px 26px rgba(4,43,79,.08);transition:.22s ease;
}
.theme-toggle:hover{transform:translateY(-2px);background:#fff;border-color:rgba(19,164,99,.34)}
@media (min-width:921px){
}
.quote-modal{position:fixed;inset:0;z-index:110;display:grid;place-items:center;padding:22px;background:rgba(2,26,49,.58);backdrop-filter:blur(14px);opacity:0;pointer-events:none;transition:.25s ease;overflow:auto}
.quote-modal.is-open{opacity:1;pointer-events:auto}
.quote-card{position:relative;width:min(760px,100%);max-height:calc(100svh - 36px);overflow:auto;padding:34px;border-radius:36px;background:var(--ivory);box-shadow:0 46px 120px rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.72)}
.quote-card h2{font-family:var(--serif);font-size:clamp(2.4rem,6vw,4.4rem);line-height:.9;letter-spacing:-.06em;color:var(--navy);margin:0 0 22px}.quote-card .eyebrow{margin-bottom:10px}
.selected-service-card{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end;margin:0 0 22px;padding:20px;border-radius:24px;background:linear-gradient(135deg,var(--navy),var(--navy-800));color:#fff;box-shadow:0 22px 50px rgba(4,43,79,.18)}
.selected-service-card span{grid-column:1/-1;color:#bfe8dc;font-size:.76rem;text-transform:uppercase;letter-spacing:.16em;font-weight:900}.selected-service-card strong{font-size:1.2rem;letter-spacing:-.03em}.selected-service-card em{font-style:normal;font-family:var(--serif);font-size:2rem;line-height:1;color:#fff}
.quote-card input,.quote-card select{background:#fff}.quote-card .form-submit{margin-top:4px}
body[data-theme-ready] .ambient{transition:background .25s ease}body[data-theme-ready],body[data-theme-ready] .site-header,body[data-theme-ready] .service-card,body[data-theme-ready] .price-card,body[data-theme-ready] .testimonial-card,body[data-theme-ready] .booking-form,body[data-theme-ready] .quote-card{transition:background .25s ease,color .25s ease,border-color .25s ease}
html[data-theme="dark"]{
  --paper:#061724;--ivory:#0a2233;--cream:#0b2436;--ink:#eefbf7;--muted:#a8bcc4;--muted-2:#89a0a9;--line:rgba(210,245,235,.13);--line-strong:rgba(210,245,235,.22);--glass:rgba(8,29,45,.76);--shadow:0 32px 90px rgba(0,0,0,.34);--shadow-soft:0 18px 50px rgba(0,0,0,.25)
}
html[data-theme="dark"] body{background:var(--paper);color:var(--ink)}
html[data-theme="dark"] .ambient{background:linear-gradient(180deg,#04111d 0%,#062135 48%,#071923 100%)}
html[data-theme="dark"] .grain{opacity:.08;filter:invert(1)}
html[data-theme="dark"] .site-header{background:rgba(6,23,36,.76);border-color:rgba(255,255,255,.1)}
html[data-theme="dark"] .site-header.is-scrolled{background:rgba(6,23,36,.9)}
html[data-theme="dark"] .desktop-nav a,html[data-theme="dark"] .text-link{color:#c5d8de}
html[data-theme="dark"] .desktop-nav a:hover,html[data-theme="dark"] .text-link:hover{background:rgba(255,255,255,.08);color:#fff}
html[data-theme="dark"] .brand,html[data-theme="dark"] .footer-brand,html[data-theme="dark"] .hero h1,html[data-theme="dark"] .section h2,html[data-theme="dark"] .price-card h3,html[data-theme="dark"] .footer-grid h3{color:#f3fffb}
html[data-theme="dark"] .hero-lede,html[data-theme="dark"] .section-head p:not(.eyebrow),html[data-theme="dark"] .footer-grid p,html[data-theme="dark"] .testimonial-card blockquote,html[data-theme="dark"] .faq-answer p,html[data-theme="dark"] .price-card li{color:#b7c9cf}
html[data-theme="dark"] .hero-proof div,html[data-theme="dark"] .trust-bar,html[data-theme="dark"] .service-card,html[data-theme="dark"] .testimonial-card,html[data-theme="dark"] .price-card,html[data-theme="dark"] .faq .accordion{background:rgba(9,32,49,.78);border-color:var(--line);box-shadow:var(--shadow-soft)}
html[data-theme="dark"] .btn-outline,html[data-theme="dark"] .theme-toggle{background:rgba(255,255,255,.08);border-color:var(--line-strong);color:#fff}
html[data-theme="dark"] .btn-ghost{color:#e9fbf2}html[data-theme="dark"] .btn-ghost:hover{background:rgba(255,255,255,.08)}
html[data-theme="dark"] .visual-card,html[data-theme="dark"] .comparison-card{background:linear-gradient(145deg,#092438,#061724);border-color:rgba(255,255,255,.1)}
html[data-theme="dark"] .booking-form,html[data-theme="dark"] .quote-card,html[data-theme="dark"] .success-card{background:#0a2233;color:var(--ink);border:1px solid var(--line)}
html[data-theme="dark"] input,html[data-theme="dark"] select,html[data-theme="dark"] textarea{background:#071923;color:#eefbf7;border-color:var(--line-strong)}
html[data-theme="dark"] .form-row label,html[data-theme="dark"] .success-card h2,html[data-theme="dark"] .quote-card h2{color:#f3fffb}
html[data-theme="dark"] .site-footer{background:#04111d}html[data-theme="dark"] .mobile-nav{background:rgba(6,23,36,.98)}html[data-theme="dark"] .mobile-nav a{color:#e9fbf2}html[data-theme="dark"] .mobile-nav a:hover{background:rgba(255,255,255,.08)}
html[data-theme="dark"] .price-card strong{color:#fff}html[data-theme="dark"] .price-card.featured{background:linear-gradient(135deg,var(--navy),var(--navy-900))}
@media (max-width:560px){.quote-card{padding:24px;border-radius:28px}.selected-service-card{grid-template-columns:1fr}.selected-service-card em{font-size:1.8rem}.booking-actions .btn{white-space:normal;text-align:center}}
