@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Lora:ital,wght@0,400;0,500;1,400&family=Noto+Serif+Devanagari:wght@400&display=swap');

:root { --paper:#f7faf9; --ink:#173e38; --muted:#566f68; --line:#c5d4d0; --green:#183d34; --lime:#cde3cb; --mist:#e7eff2; --sage:#dfeae5; --sans:'DM Sans',Arial,sans-serif; --serif:'Lora',Georgia,serif; --ease:cubic-bezier(.22,.7,.25,1); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:100px; }
body { margin:0; background:var(--paper); color:var(--ink); font:16px/1.8 var(--sans); }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
fieldset { min-width:0; margin:0; padding:0; border:0; }
fieldset:disabled .button { opacity:.55; cursor:not-allowed; }
button,a,summary { -webkit-tap-highlight-color:transparent; }
button { cursor:pointer; }
a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible { outline:2px solid #829b5c; outline-offset:6px; }
img { max-width:100%; display:block; }
h1,h2,h3,h4,p,figure { margin:0; }
h1,h2,h3 { font-family:var(--sans); font-weight:500; letter-spacing:-.045em; line-height:1.06; overflow-wrap:break-word; }
h2 { font-size:clamp(40px,4.1vw,64px); }
h3 { font-size:30px; }
h4 { font:500 16px var(--sans); }
p { color:var(--muted); }
em { font-family:var(--serif); font-weight:400; letter-spacing:-.045em; }
[hidden] { display:none!important; }
.section-pad { padding:115px max(7%,calc((100vw - 1320px)/2)); }
.eyebrow { font:500 12px/1.6 var(--sans); letter-spacing:.16em; margin-bottom:27px; color:var(--green); }
.eyebrow.light { color:#c5d2b6; }
.hindi { font-family:'Noto Serif Devanagari',Georgia,serif; }
.header { height:94px; margin:0 4.5%; display:flex; align-items:center; justify-content:space-between; position:relative; z-index:20; border-bottom:1px solid var(--line); }
.brand { display:flex; align-items:center; gap:13px; font-size:24px; letter-spacing:.13em; line-height:1; font-weight:600; }
.brand small { display:block; font-size:12px; font-weight:500; letter-spacing:.16em; margin-top:9px; }
.brand-mark { position:relative; font:48px/1 var(--serif); letter-spacing:-.12em; width:38px; }
.header nav { display:flex; align-items:center; gap:35px; font-size:14px; }
.header nav>a:not(.nav-contact) { position:relative; }
.header nav>a:not(.nav-contact):after { content:''; position:absolute; left:0; right:0; bottom:-6px; height:1px; background:var(--green); transform:scaleX(0); transform-origin:left; transition:transform .35s var(--ease); }
.header nav>a:hover:after { transform:scaleX(1); }
.nav-contact { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:10px 25px; background:var(--green); color:var(--paper); transition:background .3s; }
.nav-contact:hover { background:#2d5344; }
.menu-toggle { display:none; }
.button { display:inline-flex; align-items:center; justify-content:space-between; gap:35px; border:1px solid var(--green); padding:15px 20px; color:var(--paper); background:var(--green); font-size:14px; transition:background .3s,transform .3s var(--ease); }
.button>span { font-size:22px; line-height:1; transition:transform .3s; }
.button:hover { background:#2d5344; transform:translateY(-2px); }
.button:hover>span { transform:translate(3px,-3px); }
.button-light { color:var(--green); border-color:var(--lime); background:var(--lime); }
.button-light:hover { background:#ecf0d8; }
.underlined-link,.text-link { display:inline-flex; align-items:center; gap:35px; padding:10px 0; font-size:14px; border-bottom:1px solid #8e9c80; }
.underlined-link>span,.text-link>span { transition:transform .3s; }
.underlined-link:hover>span { transform:translate(3px,-3px); }
.home-hero { padding:0 4.5%; }
.hero-kicker { padding:30px 0 0; font:500 12px/1.7 var(--sans); letter-spacing:.1em; }
.hero-introduction { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr); grid-template-rows:auto 1fr; align-items:center; padding:28px 0 48px; }
.hero-introduction h1 { font-size:clamp(76px,8.5vw,124px); line-height:1.04; letter-spacing:-.065em; }
.title-line { display:block; animation:title-arrive 1s var(--ease) both; }
.title-line:nth-child(2) { animation-delay:.1s; }
.hero-introduction h1 em { font-style:italic; letter-spacing:-.065em; }
.hero-introduction-action { grid-column:1; display:flex; flex-direction:column; align-items:flex-start; gap:22px; margin-top:28px; }
.hero-introduction-action>p { max-width:560px; font-size:18px; line-height:1.65; }
.hero-introduction-action .button { flex-shrink:0; min-width:210px; }
.hero-architecture { grid-column:2; grid-row:1 / span 2; display:flex; align-items:center; justify-content:center; min-width:0; }
.hero-architecture svg { display:block; width:min(100%,460px); height:auto; overflow:visible; }
.hero-plan-grid { stroke:#8fa69a; stroke-width:.65; opacity:.28; }
.hero-plan-outline { stroke:var(--green); stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.hero-plan-detail { stroke:#698778; stroke-width:1.35; stroke-linecap:round; stroke-linejoin:round; }
.hero-plan-dimension { stroke:#8fa69a; stroke-width:1; stroke-dasharray:2 4; }
.hero-plan-node { fill:var(--paper); stroke:var(--green); stroke-width:1.5; }
.hero-architecture svg { animation:plan-arrive 1.2s .2s var(--ease) both; }
.hero-service-grid { display:grid; grid-template-columns:1.13fr .75fr 1fr; gap:29px; align-items:start; }
.hero-service-panel { min-width:0; display:block; position:relative; }
.hero-service-panel:nth-child(2) { margin-top:68px; }
.hero-service-panel:nth-child(3) { margin-top:21px; }
.hero-service-image { height:420px; position:relative; overflow:hidden; background:#d8ddce; animation:photo-arrive 1.2s var(--panel-delay,0ms) var(--ease) both; }
.hero-service-panel:nth-child(2) .hero-service-image { height:330px; }
.hero-service-panel:nth-child(3) .hero-service-image { height:390px; }
.hero-service-image img { width:100%; height:100%; object-fit:cover; transition:transform 1s var(--ease),filter 1s; filter:saturate(.76); }
.hero-service-panel:first-child img { object-position:39% center; }
.hero-service-panel:nth-child(2) img { object-position:49% 64%; }
.hero-service-panel:hover img,.hero-service-panel:focus-visible img { transform:scale(1.045); filter:saturate(1); }
.hero-photo-index { display:flex; justify-content:space-between; gap:15px; align-items:center; border-bottom:1px solid var(--line); padding:13px 0; font:12px/1.6 var(--sans); letter-spacing:.08em; color:var(--muted); }
.hero-photo-index>span:first-child { font-size:12px; color:var(--ink); }
.hero-photo-index>span:last-child { text-align:right; }
.hero-service-copy { position:relative; padding-top:18px; padding-right:30px; }
.hero-category { font:12px/1.7 var(--sans); text-transform:uppercase; letter-spacing:.1em; }
.hero-service-copy h2 { font-size:clamp(23px,2.1vw,32px); margin-top:8px; letter-spacing:-.04em; }
.hero-panel-arrow { position:absolute; right:0; top:24px; font-size:25px; transition:transform .35s var(--ease); }
.hero-service-panel:hover .hero-panel-arrow { transform:translate(4px,-4px); }
.hero-bottom-line { border-bottom:1px solid var(--line); display:flex; justify-content:space-between; align-items:center; gap:20px; margin-top:45px; padding:20px 0; font:12px/1.7 var(--sans); letter-spacing:.08em; }
.hero-bottom-line .hindi { font-size:14px; letter-spacing:0; }
.hero-bottom-line>a { display:flex; align-items:center; gap:25px; }
.hero-bottom-line>a>span { font-size:20px; }
.section-heading { display:grid; grid-template-columns:1fr 2fr; gap:5%; align-items:start; margin-bottom:55px; }
.section-heading .eyebrow { margin-top:8px; }
.services-section { background:var(--mist); }
.service-number { font:12px/1.5 var(--sans); color:var(--muted); margin-top:8px; }
.service-atlas { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:52px 32px; }
.service-atlas-card { min-width:0; padding-bottom:28px; border-bottom:1px solid #b9cacb; }
.service-card-image { position:relative; aspect-ratio:1.5; overflow:hidden; background:#cbdad6; }
.service-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .65s var(--ease); }
.service-card-index { position:absolute; left:14px; top:14px; display:grid; place-items:center; width:38px; height:38px; background:var(--paper); color:var(--green); font-size:13px; }
.service-card-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-top:24px; }
.service-card-heading h3 { max-width:290px; font-size:clamp(24px,2vw,30px); line-height:1.12; }
.service-card-heading>span { flex-shrink:0; font-size:26px; line-height:1.2; transition:transform .3s var(--ease); }
.service-atlas-card>p { margin-top:16px; font-size:16px; line-height:1.75; }
.service-atlas-card:hover img,.service-atlas-card:focus-visible img { transform:scale(1.035); }
.service-atlas-card:hover .service-card-heading>span,.service-atlas-card:focus-visible .service-card-heading>span { transform:translate(3px,-3px); }
.image-note { font-size:12px; margin-top:35px; max-width:680px; }
.image-note a { text-decoration:underline; }
.approach-section { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:10%; background:var(--green); color:var(--paper); }
.approach-copy h2 { font-size:clamp(55px,6vw,88px); }
.approach-copy h2 em { color:var(--lime); }
.approach-copy>p:not(.eyebrow) { font-size:14px; max-width:400px; margin-top:27px; color:#c5d9cf; }
.approach-copy .underlined-link { margin-top:24px; }
.drawing-panel { padding:22px 0; color:var(--lime); border-top:1px solid #dce6b74d; border-bottom:1px solid #dce6b74d; }
.drawing-panel-top { display:flex; justify-content:space-between; gap:20px; font:12px/1.7 var(--sans); letter-spacing:.08em; }
.house-drawing { display:block; width:100%; height:auto; overflow:visible; margin-top:25px; }
.drawing-walls,.drawing-details,.drawing-landscape { transition:opacity .8s,transform .8s var(--ease); }
.drawing-stage[data-stage='0'] .drawing-walls,.drawing-stage[data-stage='0'] .drawing-details,.drawing-stage[data-stage='0'] .drawing-landscape { opacity:0; transform:translateY(-15px); }
.drawing-stage[data-stage='1'] .drawing-details,.drawing-stage[data-stage='1'] .drawing-landscape { opacity:0; transform:translateY(-10px); }
.drawing-controls { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.drawing-controls button { padding:10px 8px; color:#d4dfca; background:transparent; border:1px solid #dce6b733; font-size:12px; transition:background .3s; }
.drawing-controls button span { font-size:12px; margin-right:6px; opacity:.7; }
.drawing-controls button[aria-pressed='true'] { background:var(--lime); color:var(--green); }
.drawing-caption { min-height:3.6em; margin-top:20px; color:#e0eade; font-size:16px; line-height:1.8; }
.drawing-panel-bottom { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 20px; margin-top:12px; }
.drawing-note { font-size:12px; color:#bbcebf; }
.drawing-playback { border:0; border-bottom:1px solid #bbcebf; padding:8px 0; background:transparent; color:var(--paper); font-size:14px; }
.spaces-section .section-heading { grid-template-columns:1fr 2fr; }
.living-feature { display:grid; grid-template-columns:1.25fr 1fr; align-items:center; }
.living-feature figure { position:relative; }
.living-feature img { width:100%; height:710px; object-fit:cover; object-position:50% 45%; }
.living-feature figcaption { margin-top:15px; font:12px/1.6 var(--sans); letter-spacing:.08em; }
.living-feature-copy { background:var(--sage); padding:60px 45px; margin-left:-55px; position:relative; z-index:1; }
.feature-number { display:block; font:12px/1.6 var(--sans); letter-spacing:.13em; margin-bottom:30px; }
.living-feature h3 { font-size:clamp(40px,4vw,59px); line-height:1.03; margin-bottom:30px; }
.living-feature p { font-size:14px; margin-bottom:20px; }
.living-feature .underlined-link { margin-top:5px; }
.material-palette { margin-top:40px; display:flex; align-items:center; gap:9px; }
.material-palette>span { width:27px; height:27px; border-radius:50%; background:var(--green); }
.material-palette>span:nth-child(2) { background:#a58a63; }
.material-palette>span:nth-child(3) { background:#c9c8b3; }
.material-palette>small { font-size:12px; letter-spacing:.07em; margin-left:8px; }
.living-details { display:grid; grid-template-columns:1.05fr repeat(3,1fr); margin-top:65px; padding-top:40px; border-top:1px solid var(--line); }
.living-details-intro { padding-right:25px; }
.living-details-intro .eyebrow { margin-bottom:20px; }
.living-details-intro h3 { font-size:34px; line-height:1.1; }
.living-details article { padding:0 25px; border-left:1px solid var(--line); }
.living-details svg { display:block; width:70px; height:60px; margin-bottom:24px; }
.living-details h4 { font-size:17px; line-height:1.5; margin-bottom:14px; }
.living-details p { font-size:16px; line-height:1.8; }
.planning-section { background:var(--sage); }
.journey-layout { display:grid; grid-template-columns:1fr 1.5fr; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.journey-tabs { display:flex; flex-direction:column; padding:35px 45px 35px 0; }
.journey-tabs button { border:0; border-bottom:1px solid var(--line); background:transparent; text-align:left; display:flex; align-items:center; gap:18px; padding:24px 15px; color:var(--muted); font:30px/1.2 var(--serif); transition:color .3s,background .3s; }
.journey-tabs button>span:first-child { font:12px var(--sans); }
.journey-tabs button>span:last-child { margin-left:auto; font:22px var(--sans); }
.journey-tabs button:last-child { border-bottom:0; }
.journey-tabs button[aria-selected='true'] { background:var(--paper); color:var(--green); }
.journey-panels { border-left:1px solid var(--line); }
.journey-panel { padding:45px 50px; animation:panel-in .4s var(--ease); }
.journey-panel h3 { font-size:48px; }
.journey-panel>p:not(.eyebrow) { margin-top:25px; font-size:14px; max-width:420px; }
.journey-panel>.underlined-link { margin-top:22px; }
.bring-list { margin-top:28px; padding-top:20px; border-top:1px solid var(--line); }
.bring-list>span { font:12px/1.7 var(--sans); letter-spacing:.14em; }
.bring-list p { font-size:14px; margin-top:8px; }
.brief-roadmap { margin-top:65px; display:grid; grid-template-columns:1fr 1.5fr; gap:45px; }
.roadmap-heading .eyebrow { margin-bottom:20px; }
.roadmap-heading h3 { font-size:42px; line-height:1.06; }
.roadmap-heading>p:last-child { margin-top:20px; font-size:16px; max-width:300px; }
.brief-roadmap ol { list-style:none; margin:0; padding:0; }
.brief-roadmap li { position:relative; border-top:1px solid #b1c5bc; padding:22px 0 25px 25px; border-left:1px solid #b1c5bc; }
.brief-roadmap li:before { content:''; position:absolute; left:-4px; top:29px; width:7px; height:7px; border-radius:50%; background:var(--green); }
.brief-roadmap li>span { display:block; font-size:12px; letter-spacing:.06em; margin-bottom:10px; }
.brief-roadmap h4 { font-size:19px; line-height:1.5; margin-bottom:8px; }
.brief-roadmap li p { font-size:16px; }
.home-checklist { display:grid; grid-template-columns:1fr 1fr; gap:10%; background:#edf3f5; }
.home-checklist h2 { font-size:clamp(46px,4.8vw,68px); }
.home-checklist>div>p:not(.eyebrow) { font-size:14px; margin-top:25px; }
.brief-note { margin-top:40px; padding:30px; background:var(--paper); border-left:3px solid #779a88; }
.brief-note .eyebrow { display:block; margin-bottom:20px; }
.brief-note h3 { font-size:38px; line-height:1.08; }
.brief-note ul { margin:22px 0 12px; padding-left:18px; color:var(--muted); font-size:16px; }
.brief-note li+li { margin-top:10px; }
.brief-note .underlined-link { font-size:15px; gap:18px; }
details { border-top:1px solid var(--line); padding:24px 0; }
details:last-child { border-bottom:1px solid var(--line); }
summary { list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:20px; font-size:14px; }
summary::-webkit-details-marker { display:none; }
summary:after { content:'+'; flex-shrink:0; font:24px/1 var(--serif); color:#84976f; }
details[open] summary:after { content:'−'; }
details p { font-size:14px; margin-top:18px; max-width:480px; }
.home-invitation { position:relative; overflow:hidden; background:var(--green); text-align:center; color:var(--paper); padding-bottom:150px; }
.home-invitation h2 { font-size:clamp(60px,7.8vw,116px); }
.home-invitation h2 em { color:var(--lime); }
.home-invitation .hindi { font-size:16px; color:#beceac; margin-top:30px; }
.invitation-actions { display:flex; justify-content:center; align-items:center; gap:35px; position:relative; z-index:1; margin-top:40px; }
.invitation-actions>a:not(.button) { font-size:14px; }
.invitation-actions>a:not(.button)>span { margin-left:20px; }
.invitation-watermark { position:absolute; left:50%; bottom:-70px; transform:translateX(-50%); font:300px/.9 var(--serif); letter-spacing:-.06em; color:#ffffff06; pointer-events:none; }
.floating-contact { position:fixed; bottom:20px; right:20px; z-index:15; display:grid; place-items:center; width:58px; height:58px; padding:0; background:var(--green); border:1px solid #dce6b755; color:white; border-radius:50%; box-shadow:0 4px 14px #183d3422; transition:transform .3s,opacity .3s,visibility .3s,background .3s; }
.floating-contact:hover { background:#2d5344; transform:translateY(-3px); }
.floating-contact svg { width:31px; height:31px; fill:currentColor; }
.floating-contact.is-hidden { opacity:0; visibility:hidden; pointer-events:none; transform:translateY(15px); }
.skip-link { position:fixed; top:-100px; left:12px; z-index:30; background:white; padding:12px; }
.skip-link:focus { top:12px; }
.page-intro h1,.service-hero h1,.legal h1 { font-size:clamp(65px,7vw,100px); max-width:850px; }
.page-intro>p:last-child { margin-top:30px; max-width:650px; font-size:16px; }
.contact-layout { display:grid; grid-template-columns:1.2fr 1fr; gap:12%; padding-top:0; }
.contact-layout h2 { font-size:45px; }
.form-intro { font-size:14px; margin:17px 0 35px; }
form label { display:block; font-size:14px; margin-bottom:25px; }
input,textarea,select { display:block; width:100%; margin-top:10px; padding:13px 0; border:0; border-bottom:1px solid #a9b59e; border-radius:0; background:transparent; color:var(--ink); font-size:16px; }
textarea { resize:vertical; }
input:focus,select:focus,textarea:focus { outline:2px solid #819760; outline-offset:4px; }
.form-note { font-size:14px; margin:25px 0; max-width:440px; }
.form-note a { text-decoration:underline; }
#form-status { font-size:14px; margin-top:18px; }
.contact-details { align-self:start; background:var(--sage); padding:45px; }
.contact-details h3 { font:500 14px var(--sans); margin:32px 0 10px; }
.contact-details>a,.contact-details>p:not(.eyebrow) { font-size:14px; overflow-wrap:anywhere; }
.service-hero { display:grid; grid-template-columns:1fr 1fr; gap:8%; align-items:center; }
.breadcrumb { display:block; font-size:12px; }
.service-hero p { font-size:16px; margin:30px 0; }
.service-hero img { width:100%; height:580px; object-fit:cover; }
.service-hero figcaption { font-size:12px; margin-top:14px; color:var(--muted); }
.detail-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:6%; background:var(--sage); }
.detail-grid h2 { font-size:38px; margin:22px 0; }
.detail-grid p { font-size:14px; }
.faq { display:grid; grid-template-columns:1fr 1.2fr; gap:8%; }
.contact-banner { background:var(--green); color:var(--paper); }
.contact-banner .eyebrow { color:#bacbab; }
.contact-banner h2 { font-size:clamp(55px,6vw,85px); }
.contact-banner h2 em { color:var(--lime); }
.contact-banner>.button { margin-top:35px; }
.legal { max-width:950px; }
.legal h2 { font-size:38px; margin:35px 0 18px; }
.legal a { text-decoration:underline; }
.service-directory { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 45px; }
.directory-service { display:flex; align-items:center; gap:23px; padding:32px 0; border-bottom:1px solid var(--line); }
.directory-service>div { flex:1; }
.directory-service h3 { font-size:36px; }
.directory-service p { font-size:14px; margin-top:12px; }
.directory-service>span:last-child { font-size:22px; }
.directory-section,.gallery-section { padding-top:0; }
.location-section { display:grid; grid-template-columns:1fr 1.4fr; align-items:center; gap:8%; border-bottom:1px solid var(--line); }
.location-section h2 { font-size:70px; }
.location-section>div>p:not(.eyebrow) { max-width:330px; font-size:14px; margin-top:25px; }
.location-section .underlined-link { margin-top:15px; }
.location-section iframe { width:100%; height:350px; border:0; background:#e0e4d7; }
.original-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.original-gallery img { width:100%; height:350px; object-fit:contain; background:var(--mist); }
.original-gallery figcaption { font-size:12px; margin-top:13px; }
.reveal-ready [data-reveal] { opacity:0; transform:translateY(28px); transition:opacity .85s var(--delay,0ms),transform .85s var(--delay,0ms) var(--ease); }
.reveal-ready [data-reveal].is-visible { opacity:1; transform:none; }
@keyframes title-arrive { from { opacity:0; transform:translateY(30px); } to { opacity:1; transform:none; } }
@keyframes plan-arrive { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:none; } }
@keyframes photo-arrive { from { clip-path:inset(15% 0 0); opacity:0; transform:translateY(20px); } to { clip-path:inset(0); opacity:1; transform:none; } }
@keyframes panel-in { from { opacity:.3; transform:translateY(10px); } to { opacity:1; transform:none; } }
@media(min-width:1800px) { body { max-width:1800px; margin-inline:auto; } .section-pad { padding-inline:7%; } }
@media(max-width:1150px) {
  .hero-introduction h1 { font-size:clamp(72px,9vw,98px); }
  .service-atlas { gap:38px 25px; }
  .hero-service-grid { gap:20px; }
  .hero-service-image { height:360px; }
  .hero-service-panel:nth-child(2) .hero-service-image { height:280px; }
  .hero-service-panel:nth-child(3) .hero-service-image { height:330px; }
  .living-feature-copy { padding:40px 35px; }
  .living-feature img { height:650px; }
}
@media(max-width:760px) {
  html { scroll-padding-top:30px; }
  .section-pad { padding:65px 7%; }
  .header { height:82px; margin:0 6%; }
  .brand { font-size:22px; }
  .brand-mark { font-size:40px; width:32px; }
  .menu-toggle { display:flex; gap:12px; padding:12px 0; background:transparent; border:0; color:var(--green); font-size:14px; }
  .header nav { display:none; position:absolute; top:81px; left:-7%; right:-7%; padding:25px 7%; background:var(--paper); border-bottom:1px solid var(--line); }
  .header nav.is-open { display:flex; flex-direction:column; align-items:stretch; gap:25px; }
  .nav-contact { align-self:flex-start; }
  .home-hero { padding:0 6%; }
  .hero-kicker { font-size:12px; padding:25px 0 0; letter-spacing:.04em; }
  .hero-introduction { padding:25px 0 35px; }
  .hero-introduction h1 { font-size:clamp(42px,10.8vw,72px); line-height:1.08; }
  .hero-introduction { display:block; }
  .hero-architecture { display:none; }
  .hero-introduction-action { flex-direction:column; align-items:flex-start; gap:22px; margin-top:25px; }
  .hero-introduction-action>p { font-size:16px; }
  .hero-introduction-action>p br { display:none; }
  .hero-introduction-action .button { min-width:205px; font-size:15px; padding:14px 18px; }
  .hero-service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px 15px; }
  .hero-service-panel:first-child { grid-column:1 / -1; }
  .hero-service-panel:nth-child(2),.hero-service-panel:nth-child(3) { margin-top:0; }
  .hero-service-image { height:340px; }
  .hero-service-panel:nth-child(2) .hero-service-image,.hero-service-panel:nth-child(3) .hero-service-image { height:225px; }
  .hero-photo-index { font-size:12px; gap:8px; padding:10px 0; }
  .hero-photo-index>span:first-child { font-size:12px; }
  .hero-service-copy { padding-top:12px; padding-right:15px; }
  .hero-category { font-size:12px; letter-spacing:.05em; }
  .hero-service-copy h2 { font-size:24px; line-height:1.13; margin-top:7px; }
  .hero-service-panel:first-child h2 { font-size:30px; }
  .hero-panel-arrow { font-size:18px; top:16px; }
  .hero-bottom-line { flex-wrap:wrap; gap:15px; margin-top:30px; padding:20px 0; }
  .hero-bottom-line>span:nth-child(2) { display:none; }
  .hero-bottom-line .hindi { font-size:14px; }
  .hero-bottom-line>a { font-size:12px; gap:12px; }
  .section-heading,.spaces-section .section-heading { display:block; margin-bottom:35px; }
  .section-heading .eyebrow { margin:0 0 22px; }
  h2 { font-size:clamp(34px,8.8vw,42px); }
  .service-atlas { grid-template-columns:repeat(2,minmax(0,1fr)); gap:35px 22px; }
  .service-card-heading { margin-top:20px; gap:15px; }
  .service-card-heading h3 { font-size:25px; }
  .image-note { font-size:12px; margin-top:25px; }
  .approach-section { grid-template-columns:1fr; gap:40px; }
  .approach-copy h2 { font-size:clamp(40px,10vw,52px); }
  .approach-copy>p:not(.eyebrow) { font-size:14px; }
  .drawing-panel { padding:18px 0; }
  .drawing-panel-top { font-size:12px; }
  .drawing-controls button { font-size:12px; padding:10px 5px; }
  .drawing-controls button span { display:block; margin:0 0 4px; }
  .drawing-note { font-size:12px; }
  .living-feature { grid-template-columns:1fr; }
  .living-feature img { height:440px; }
  .living-feature figcaption { font-size:12px; }
  .living-feature-copy { margin:25px 0 0; padding:35px 27px; }
  .living-feature h3 { font-size:36px; }
  .feature-number { font-size:12px; margin-bottom:25px; }
  .material-palette { margin-top:30px; }
  .living-details { grid-template-columns:1fr; margin-top:40px; padding-top:30px; }
  .living-details-intro { padding:0 0 30px; }
  .living-details article { padding:25px 0 25px 85px; border-left:0; border-top:1px solid var(--line); position:relative; }
  .living-details svg { position:absolute; left:0; top:26px; width:60px; height:52px; }
  .brief-roadmap { grid-template-columns:1fr; gap:30px; margin-top:40px; }
  .journey-layout { grid-template-columns:1fr; }
  .journey-tabs { padding:15px 0; }
  .journey-tabs button { font-size:28px; padding:18px 12px; }
  .journey-panels { border-left:0; border-top:1px solid var(--line); }
  .journey-panel { padding:30px 15px; }
  .journey-panel h3 { font-size:42px; }
  .home-checklist { grid-template-columns:1fr; gap:35px; }
  .brief-note { padding:25px; }
  .home-checklist h2 { font-size:clamp(34px,9vw,42px); }
  .home-invitation { padding-bottom:100px; }
  .home-invitation h2 { font-size:clamp(36px,9vw,48px); }
  .home-invitation .hindi { font-size:16px; }
  .invitation-actions { flex-direction:column; gap:25px; margin-top:30px; }
  .invitation-watermark { font-size:190px; bottom:-45px; }
  .floating-contact { right:15px; bottom:15px; font-size:14px; }
  .page-intro h1,.service-hero h1,.legal h1 { font-size:clamp(38px,10vw,54px); }
  .page-intro>p:last-child { font-size:14px; }
  .contact-layout { grid-template-columns:1fr; gap:40px; padding-top:0; }
  .contact-details { padding:30px; }
  .service-hero { grid-template-columns:1fr; gap:35px; }
  .service-hero img { height:390px; }
  .detail-grid { grid-template-columns:1fr; gap:35px; }
  .detail-grid article+article { padding-top:30px; border-top:1px solid var(--line); }
  .detail-grid h2 { font-size:37px; }
  .faq { grid-template-columns:1fr; gap:30px; }
  .contact-banner h2 { font-size:57px; }
  .service-directory { grid-template-columns:1fr; }
  .directory-service { gap:17px; padding:27px 0; }
  .directory-service h3 { font-size:33px; }
  .directory-section,.gallery-section { padding-top:0; }
  .location-section { grid-template-columns:1fr; gap:35px; }
  .location-section h2 { font-size:58px; }
  .location-section iframe { height:300px; }
  .original-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px 15px; }
  .original-gallery img { height:240px; }
}
@media(max-width:360px) { .hero-service-panel:nth-child(2) .hero-service-image,.hero-service-panel:nth-child(3) .hero-service-image { height:195px; } }
.approach-copy>p:not(.eyebrow),.living-feature p,.journey-panel>p:not(.eyebrow),.bring-list p,.home-checklist>div>p:not(.eyebrow),details p,.page-intro>p:last-child,.service-hero p,.detail-grid p,.directory-service p,.location-section>div>p:not(.eyebrow),.contact-details>a,.contact-details>p:not(.eyebrow),.form-intro { font-size:16px; line-height:1.8; }
.image-note,.form-note,.service-hero figcaption,.original-gallery figcaption { font-size:14px; line-height:1.7; }
summary { font-size:16px; line-height:1.65; }
.hero-kicker,.hero-photo-index,.hero-category,.eyebrow,.feature-number,.drawing-panel-top,.drawing-note { letter-spacing:.06em; }
.hero-photo-index { align-items:flex-start; }
.hero-introduction-action .button { font-size:14px; }
.hero-service-panel:first-child img { object-position:50% 55%; }
.hero-service-panel:nth-child(2) img { object-position:50% 65%; }
img[src$="demolition-site.jpg"] { object-position:72% center; }
.living-feature img { height:560px; object-position:50% center; }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:10px; font-size:14px; margin-bottom:30px; line-height:1.7; }
.breadcrumbs>a { text-decoration:underline; text-underline-offset:4px; }
.breadcrumbs>[aria-current] { color:var(--muted); }
.related-services { padding-top:10px; }
.related-services h2 { font-size:58px; }
.related-service-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; margin-top:35px; }
.related-service-links>a { position:relative; border-top:1px solid var(--line); padding:25px 35px 10px 0; }
.related-service-links h3 { font-size:36px; }
.related-service-links p { font-size:16px; margin-top:15px; }
.related-service-links>a>span { position:absolute; right:0; top:25px; font-size:25px; }
.site-footer { padding:65px 6% 25px; background:#dce7e1; }
.footer-heading { display:flex; justify-content:space-between; gap:35px; align-items:center; padding-bottom:40px; border-bottom:1px solid #bcc6b2; }
.footer-wordmark { font:110px/.9 var(--serif); letter-spacing:-.05em; }
.footer-wordmark>span { color:#80955c; }
.footer-heading>p { font-size:16px; line-height:1.7; }
.footer-heading>.underlined-link { font-size:15px; }
.footer-main { display:grid; grid-template-columns:1.1fr .9fr 1fr 1.2fr; gap:35px; padding:45px 0; }
.footer-main h2 { font:600 16px/1.5 var(--sans); letter-spacing:0; margin-bottom:20px; }
.footer-link-group ul { list-style:none; margin:0; padding:0; }
.footer-link-group li+li { margin-top:4px; }
.footer-main a { display:inline-block; font-size:15px; line-height:1.65; padding:7px 0; text-decoration-thickness:1px; text-underline-offset:5px; }
.footer-main a:hover,.footer-bottom a:hover { text-decoration:underline; }
.footer-contact address { font-style:normal; font-size:15px; line-height:1.8; color:var(--muted); margin-bottom:15px; }
.footer-guides { background:var(--green); color:var(--paper); padding:25px; align-self:start; }
.footer-guides h2 { font-size:20px; margin-bottom:12px; }
.footer-guides-hint { font-size:14px; line-height:1.7; color:#c5d9cf; margin-bottom:15px; }
.footer-guides li:first-child { margin-bottom:10px; }
.footer-guides li:first-child a { font-size:16px; font-weight:600; color:var(--lime); border-bottom:1px solid #8fa99b; }
.footer-contact>a { display:block; overflow-wrap:anywhere; }
.footer-socials { display:flex; flex-wrap:wrap; gap:10px; padding-top:15px; }
.footer-socials a { display:grid; place-items:center; width:42px; height:42px; border:1px solid #a9b7ad; border-radius:50%; transition:color .25s,background .25s,border-color .25s; }
.footer-socials a:hover { color:var(--paper); background:var(--green); border-color:var(--green); }
.footer-socials svg { display:block; width:20px; height:20px; fill:currentColor; }
.footer-socials svg rect,.footer-socials svg circle:not(.social-icon-dot) { fill:none; stroke:currentColor; stroke-width:1.8; }
.footer-socials svg .social-icon-dot { fill:currentColor; }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; padding-top:25px; border-top:1px solid #bcc6b2; color:var(--muted); font-size:14px; }
.footer-bottom nav { display:flex; flex-wrap:wrap; gap:25px; }
.footer-bottom a { padding:4px 0; }
@media(max-width:1100px) and (min-width:761px) {
  .living-details { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .living-details-intro { grid-column:1 / -1; padding:0 0 30px; }
  .living-details article { padding-inline:20px; }
  .living-details article:nth-child(2) { border-left:0; padding-left:0; }
  .footer-main { grid-template-columns:repeat(2,minmax(0,1fr)); gap:35px 50px; }
}
@media(max-width:760px) {
  .brand small { font-size:10px; letter-spacing:.03em; }
  .hero-photo-index { flex-wrap:wrap; font-size:12px; }
  .hero-photo-index>span:last-child { text-align:left; }
  .hero-category { font-size:12px; line-height:1.6; }
  .hero-service-copy { padding-right:18px; }
  .hero-bottom-line { align-items:flex-start; }
  .hero-bottom-line>a { font-size:12px; gap:10px; }
  .hero-bottom-line .hindi { font-size:14px; }
  .drawing-controls button { font-size:14px; line-height:1.6; }
  .drawing-controls button span { font-size:12px; }
  .drawing-panel-top { flex-wrap:wrap; font-size:12px; }
  .living-feature img { height:340px; }
  .living-feature-copy { padding:32px 25px; }
  .material-palette { flex-wrap:wrap; }
  .material-palette>small { font-size:12px; margin:5px 0 0; width:100%; }
  .journey-panel { padding-inline:5px; }
  .journey-tabs button { gap:10px; }
  .journey-tabs button>span:first-child { font-size:12px; }
  .journey-tabs button>span:last-child { font-size:18px; }
  .breadcrumbs { font-size:14px; gap:8px; }
  .related-services h2 { font-size:45px; }
  .related-service-links { grid-template-columns:1fr; gap:20px; }
  .site-footer { padding:45px 7% 85px; }
  .footer-heading { display:block; padding-bottom:30px; }
  .footer-wordmark { font-size:90px; }
  .footer-heading>p { margin:20px 0 10px; }
  .footer-main { grid-template-columns:1fr; gap:30px; padding:35px 0; }
  .footer-link-group { padding-bottom:25px; border-bottom:1px solid var(--line); }
  .footer-link-group:first-child ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px 20px; }
  .footer-link-group li+li { margin:0; }
  .footer-main a { font-size:16px; padding:9px 0; }
  .footer-main h2 { font-size:16px; }
  .footer-bottom { flex-direction:column; gap:18px; line-height:1.7; }
  .footer-bottom nav { gap:20px; }
}
.page-breadcrumb-wrap { padding:28px 7% 0; }
.page-intro>p:not(.eyebrow) { margin-top:30px; max-width:760px; font-size:16px; }
.legal p+p { margin-top:18px; }
.guide-page .floating-contact { display:none; }
.page-breadcrumb-wrap .breadcrumbs { margin-bottom:0; }
.page-breadcrumb-wrap+.page-intro,.page-breadcrumb-wrap+.legal { padding-top:55px; }
.section-lede { font-size:16px; margin-top:25px; max-width:580px; }
.service-hero h1 { font-size:clamp(55px,6.1vw,88px); }
.service-hero .eyebrow { margin:0 0 22px; font-size:12px; }
.service-hero .breadcrumbs { font-size:13px; margin-bottom:32px; }
.service-hero figcaption { max-width:420px; }
.service-jump-links { display:flex; flex-wrap:wrap; gap:18px 40px; padding:20px 7%; border-block:1px solid var(--line); font-size:14px; }
.service-jump-links a { padding:7px 0; text-decoration:underline; text-underline-offset:5px; }
.service-feature { display:grid; grid-template-columns:1fr 1.1fr; gap:10%; background:var(--sage); }
.feature-intro>p:not(.eyebrow) { font-size:16px; margin-top:27px; max-width:450px; }
.brief-illustration { width:220px; height:190px; display:block; margin-top:30px; }
.brief-decisions article { display:grid; grid-template-columns:30px 1fr; gap:25px; padding:30px 0; border-top:1px solid #a9bfb5; }
.brief-decisions article:last-child { border-bottom:1px solid #a9bfb5; }
.brief-decisions article>span { font-size:13px; padding-top:6px; }
.brief-decisions h3 { font-size:36px; line-height:1.1; }
.brief-decisions p { font-size:16px; margin-top:18px; }
.service-feature-business { background:var(--green); color:var(--paper); }
.service-feature-business .eyebrow,.service-feature-business p { color:#c5d9cf; }
.service-feature-business h2 em { color:var(--lime); }
.service-feature-business .brief-decisions article { border-color:#ffffff40; }
.service-feature-drawings,.service-feature-rooms { display:block; background:var(--mist); }
.service-feature-rooms { background:var(--paper); }
.service-feature-drawings .feature-intro,.service-feature-rooms .feature-intro { display:grid; grid-template-columns:1.5fr .5fr; gap:0 50px; }
.service-feature-drawings .feature-intro>p,.service-feature-rooms .feature-intro>p,.service-feature-drawings .feature-intro h2,.service-feature-rooms .feature-intro h2 { grid-column:1; }
.service-feature-drawings .brief-illustration,.service-feature-rooms .brief-illustration { grid-column:2; grid-row:1 / 4; align-self:center; width:100%; height:auto; margin:0; }
.service-feature-drawings .brief-decisions,.service-feature-rooms .brief-decisions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px; margin-top:50px; }
.service-feature-drawings .brief-decisions article,.service-feature-rooms .brief-decisions article { display:block; border-bottom:0; }
.service-feature-drawings .brief-decisions h3,.service-feature-rooms .brief-decisions h3 { margin-top:20px; }
.service-feature-renovation { background:var(--mist); }
.service-feature-demolition .brief-decisions article { border-top-style:dashed; }
.service-scope { background:#fff; }
.service-types { background:var(--sage); }
.service-types-intro { grid-column:2; max-width:720px; font-size:18px; line-height:1.7; margin-top:10px; }
.service-types .editorial-list { margin-top:22px; font-size:16px; }
.service-types .underlined-link { display:inline-flex; margin-top:24px; font-size:15px; text-decoration:none; }
.service-types>.form-note { max-width:850px; margin-top:38px; }
.scope-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:45px; }
.scope-grid article { border-top:1px solid var(--line); padding-top:26px; }
.scope-grid .eyebrow { display:block; margin-bottom:25px; }
.scope-grid h3 { font-size:37px; line-height:1.08; }
.scope-grid p { font-size:16px; margin-top:22px; }
.scope-grid a,.guide-body a,.gallery-next>p a { text-decoration:underline; text-underline-offset:4px; }
.service-preparation { display:grid; grid-template-columns:1.1fr 1fr; gap:10%; background:var(--sage); }
.service-preparation h2 { font-size:clamp(43px,4.5vw,64px); }
.service-preparation>div>p:not(.eyebrow) { font-size:16px; margin-top:25px; max-width:470px; }
.editorial-list { margin:20px 0 0; padding-left:22px; color:var(--muted); font-size:16px; }
.editorial-list li { padding-left:5px; margin-bottom:16px; }
.service-guides,.home-guides,.guide-index { background:var(--mist); }
.guide-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:35px; margin-top:40px; }
.guide-card { display:flex; flex-direction:column; padding:28px 0; border-top:1px solid #a9bec3; }
.guide-card h3 { font-size:39px; line-height:1.08; margin-bottom:22px; }
.guide-card p { font-size:16px; margin-bottom:28px; }
.guide-read { display:flex; justify-content:space-between; gap:20px; align-items:center; margin-top:auto; padding-top:15px; font-size:14px; }
.guide-read>span { font-size:24px; transition:transform .3s; }
.guide-card:hover .guide-read>span { transform:translate(3px,-3px); }
.service-guides .guide-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
.home-guides>.underlined-link { margin-top:15px; }
.guide-masthead { padding-top:65px; }
.guide-masthead h1 { max-width:1100px; font-size:clamp(56px,6.2vw,88px); }
.guide-masthead>p:not(.eyebrow) { font-size:20px; margin-top:35px; max-width:750px; }
.guide-provenance { display:block; margin-top:30px; font-size:14px; color:var(--muted); }
.guide-summary { display:grid; grid-template-columns:1fr 2.2fr; gap:8%; padding-block:45px; background:var(--sage); }
.guide-summary .eyebrow { margin:5px 0 0; }
.guide-summary>p:last-child { font-size:20px; color:var(--ink); }
.guide-layout { display:grid; grid-template-columns:1fr 2.2fr; gap:8%; align-items:start; background:#fff; }
.guide-toc { position:sticky; top:35px; }
.guide-toc nav { display:flex; flex-direction:column; }
.guide-toc nav a { display:flex; gap:18px; border-top:1px solid var(--line); padding:16px 0; font-size:15px; line-height:1.7; }
.guide-toc nav span { font-size:12px; padding-top:3px; }
.guide-toc>p:last-child { font-size:13px; margin-top:25px; }
.print-guide { background:transparent; border:0; border-bottom:1px solid var(--line); color:var(--ink); margin-top:20px; text-align:left; }
.guide-body { min-width:0; }
.guide-body>section { margin-bottom:80px; scroll-margin-top:30px; }
.guide-body h2 { font-size:clamp(40px,4vw,58px); line-height:1.06; margin-bottom:28px; }
.guide-body p { font-size:17px; line-height:1.9; margin-block:20px; }
.guide-body .eyebrow { font-size:12px; margin-bottom:22px; }
.guide-body h3 { font-size:33px; line-height:1.1; }
.definition-list { margin:30px 0; }
.definition-list>div { border-top:1px solid var(--line); padding:22px 0; }
.definition-list dt,.symptom-record dt { font-size:17px; font-weight:600; }
.definition-list dd { margin:10px 0 0; font-size:17px; color:var(--muted); }
.comparison-wrap { overflow-x:auto; margin:30px 0; }
.comparison-table { width:100%; border-collapse:collapse; font-size:16px; text-align:left; }
.comparison-table caption { text-align:left; font-size:15px; margin-bottom:20px; }
.comparison-table th,.comparison-table td { padding:18px 15px; vertical-align:top; border-top:1px solid var(--line); }
.comparison-table thead { background:var(--sage); }
.comparison-table tbody th { width:32%; font-weight:500; }
.comparison-table td { color:var(--muted); }
.quote-worksheet { padding:30px; background:var(--mist); margin-top:30px; }
.worksheet-inputs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px; }
.quote-worksheet label { font-size:15px; }
.quote-worksheet input { font-size:16px; }
.worksheet-reset { background:transparent; color:var(--ink); border:0; text-decoration:underline; padding:15px; font-size:14px; }
.quote-worksheet output { display:block; font-size:22px; line-height:1.6; color:var(--ink); border-top:1px solid #aec0c4; padding-top:24px; margin-top:25px; }
.quote-worksheet .form-note { font-size:14px; margin-bottom:0; }
.guide-note-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px 30px; margin-block:30px; }
.guide-note-grid article { border-top:1px solid var(--line); padding-top:24px; }
.guide-note-grid h3 { font-size:31px; }
.guide-note-grid p { font-size:16px; margin-bottom:0; }
.guide-callout,.symptom-record { background:var(--sage); padding:30px; margin-block:30px; }
.symptom-record dl { margin-bottom:0; }
.symptom-record dl>div { display:grid; grid-template-columns:110px 1fr; gap:20px; padding:20px 0; border-top:1px solid #b6c9be; }
.symptom-record dd { margin:0; font-size:16px; color:var(--muted); }
.safety-note { border-left:3px solid #6b8f7b; padding-left:22px; }
.editorial-disclosure { border-top:1px solid var(--line); padding-top:30px; }
.editorial-disclosure h2 { font:600 17px/1.5 var(--sans); letter-spacing:0; margin:0; }
.editorial-disclosure p,.editorial-disclosure>a { font-size:14px; }
.guide-next { background:var(--sage); }
.guide-service-links { display:flex; flex-wrap:wrap; gap:15px 35px; margin:30px 0; }
.guide-service-links a { display:flex; gap:30px; align-items:center; border-bottom:1px solid #8fa99b; padding:12px 0; font-size:16px; }
.guide-index { padding-top:35px; }
.guide-index .guide-cards { margin-top:0; }
.guide-cluster-nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:25px; margin-bottom:55px; }
.guide-cluster-nav a { padding:20px 0; border-top:1px solid #a9bec3; font-size:16px; line-height:1.6; }
.guide-cluster-nav a:hover { text-decoration:underline; text-underline-offset:4px; }
.guide-cluster-nav span { display:block; font-size:13px; color:var(--muted); margin-top:10px; }
.guide-cluster { padding-top:45px; margin-bottom:65px; border-top:1px solid #a9bec3; scroll-margin-top:35px; }
.guide-cluster-heading { display:grid; grid-template-columns:1fr 2fr; gap:5%; margin-bottom:30px; }
.guide-cluster-heading h2 { font-size:clamp(40px,4.3vw,62px); line-height:1.05; }
.guide-cluster-heading p { font-size:16px; max-width:620px; margin-top:20px; }
.guide-cluster-heading>.eyebrow { margin-top:7px; }
.guide-cluster[data-guide-count='4'] .guide-cards,.guide-cluster[data-guide-count='2'] .guide-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
.guide-cluster[data-guide-count='1'] .guide-cards { grid-template-columns:1fr; }
.guide-cluster[data-guide-count='1'] .guide-card { display:grid; grid-template-columns:1fr 1fr; gap:0 50px; }
.guide-cluster[data-guide-count='1'] .guide-card>.eyebrow,.guide-cluster[data-guide-count='1'] .guide-read { grid-column:1 / -1; }
.guide-cluster[data-guide-count='1'] .guide-card h3 { grid-column:1; }
.guide-cluster[data-guide-count='1'] .guide-card p { grid-column:2; }
.guide-cluster-back { display:inline-flex; align-items:center; gap:20px; border-bottom:1px solid var(--line); padding:10px 0; margin-top:20px; font-size:14px; }
.guide-related { background:var(--mist); }
.guide-diagram { margin-block:30px; padding:25px; background:var(--sage); overflow-x:auto; }
.guide-diagram svg { display:block; width:100%; min-width:0; height:auto; }
.table-scroll-hint { display:none; }
.guide-diagram figcaption { margin-top:20px; font-size:14px; line-height:1.7; color:var(--muted); }
.interior-priority-table { min-width:560px; }
.interior-priority-table tbody th { width:23%; }
.library-note { margin-top:60px; max-width:800px; border-top:1px solid var(--line); padding-top:35px; }
.library-note h2 { font-size:46px; }
.library-note p { font-size:16px; margin:25px 0 15px; }
.service-chooser,.about-clarity,.contact-prep { background:var(--sage); }
.service-chooser>.scope-grid { margin-top:45px; }
.about-identity { display:grid; grid-template-columns:1.2fr 1fr; gap:12%; background:var(--mist); }
.about-identity>div>p:not(.eyebrow) { font-size:17px; margin-top:28px; }
.about-identity .underlined-link { margin-top:20px; }
.identity-card { padding:40px; background:var(--paper); border-top:3px solid #799a89; align-self:start; }
.identity-card h3 { font-size:44px; }
.identity-card address,.contact-details address { font-style:normal; font-size:16px; line-height:1.9; color:var(--muted); margin:25px 0; }
.identity-card>a { display:block; padding:8px 0; font-size:16px; overflow-wrap:anywhere; }
.identity-card>p:last-child { font-size:14px; margin-top:25px; }
.gallery-disclosure { padding:25px 30px; border-left:3px solid #799a89; background:var(--sage); max-width:850px; margin-top:35px; }
.gallery-disclosure strong { font-size:16px; font-weight:600; }
.gallery-disclosure p { font-size:16px; margin-top:12px; }
.annotated-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:65px 45px; }
.annotated-gallery img { width:100%; height:420px; object-fit:contain; background:var(--mist); }
.annotated-gallery figcaption { margin-top:25px; max-width:500px; }
.annotated-gallery .eyebrow { margin-bottom:15px; display:block; }
.annotated-gallery h2 { font-size:38px; line-height:1.1; }
.annotated-gallery p { font-size:16px; margin-top:18px; }
.gallery-next { background:var(--sage); }
.gallery-next>p:not(.eyebrow) { font-size:17px; max-width:700px; margin-top:30px; }
.credit-list { padding:0; margin:30px 0; list-style:none; }
.credit-list li { padding:20px 0; border-top:1px solid var(--line); }
.credit-list strong { display:block; font-size:16px; font-weight:500; }
.credit-list a { display:block; margin-top:8px; font-size:16px; }
.contact-details .underlined-link { gap:18px; line-height:1.7; }
@media(max-width:1100px) and (min-width:761px) {
  .header nav { gap:18px; }
  .brand { font-size:22px; }
  .brand small { font-size:10px; }
  .service-hero { gap:5%; }
  .service-hero h1 { font-size:clamp(45px,5.6vw,65px); }
  .scope-grid { gap:25px; }
  .scope-grid h3 { font-size:31px; }
  .service-feature { gap:6%; }
  .brief-decisions article { gap:12px; }
  .guide-cards { gap:25px; }
  .guide-card h3 { font-size:33px; }
  .guide-layout,.guide-summary { grid-template-columns:1fr 2.6fr; gap:6%; }
  .worksheet-inputs { grid-template-columns:1fr; gap:0; }
  .quote-worksheet { padding:25px; }
  .guide-note-grid { grid-template-columns:1fr; }
  .guide-body h2 { font-size:43px; }
  .about-identity { gap:5%; }
  .identity-card { padding:28px; }
}
@media(max-width:760px) {
  .page-breadcrumb-wrap { padding-top:25px; }
  .footer-guides { order:-1; padding:25px; border:0; }
  .footer-main .footer-guides h2 { font-size:22px; }
  .guide-cluster-nav { grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px 25px; margin-bottom:35px; }
  .guide-cluster-nav a { font-size:15px; }
  .guide-cluster-heading { display:block; margin-bottom:25px; }
  .guide-cluster-heading>.eyebrow { margin-bottom:20px; }
  .guide-cluster-heading h2 { font-size:41px; }
  .guide-cluster { padding-top:35px; margin-bottom:45px; }
  .guide-cluster[data-guide-count='4'] .guide-cards,.guide-cluster[data-guide-count='2'] .guide-cards { grid-template-columns:1fr; }
  .guide-cluster[data-guide-count='1'] .guide-card { display:flex; }
  .guide-diagram { padding:20px 15px; }
  .guide-diagram svg text { font-size:38px; }
  .guide-body .table-scroll-hint { display:block; font-size:14px; }
  .page-breadcrumb-wrap+.page-intro,.page-breadcrumb-wrap+.legal { padding-top:35px; }
  .service-hero h1 { font-size:clamp(36px,10vw,54px); }
  .service-hero img { height:360px; }
  .service-hero .breadcrumbs { font-size:13px; }
  .service-jump-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 20px; }
  .service-feature,.service-preparation,.about-identity { grid-template-columns:1fr; gap:35px; }
  .brief-illustration { width:180px; height:155px; }
  .brief-decisions h3 { font-size:32px; }
  .brief-decisions article { gap:15px; }
  .service-feature-drawings .feature-intro,.service-feature-rooms .feature-intro { display:block; }
  .service-feature-drawings .brief-illustration,.service-feature-rooms .brief-illustration { width:180px; margin-top:25px; }
  .service-feature-drawings .brief-decisions,.service-feature-rooms .brief-decisions { grid-template-columns:1fr; gap:0; margin-top:35px; }
  .scope-grid,.guide-cards,.service-guides .guide-cards { grid-template-columns:1fr; gap:30px; }
  .scope-grid h3 { font-size:35px; }
  .guide-card { padding:25px 0; }
  .guide-card h3 { font-size:39px; }
  .guide-card p { margin-bottom:15px; }
  .guide-masthead { padding-top:40px; }
  .guide-masthead h1 { font-size:clamp(38px,10.8vw,54px); }
  .guide-masthead>p:not(.eyebrow),.guide-summary>p:last-child { font-size:18px; }
  .guide-summary { grid-template-columns:1fr; gap:20px; padding-block:35px; }
  .guide-layout { grid-template-columns:1fr; gap:45px; }
  .guide-toc { position:static; }
  .guide-toc nav a { padding-block:12px; }
  .guide-body h2 { font-size:42px; }
  .guide-body>section { margin-bottom:55px; }
  .guide-body p,.definition-list dd { font-size:16px; }
  .guide-note-grid,.worksheet-inputs { grid-template-columns:1fr; gap:25px; }
  .worksheet-inputs { gap:0; }
  .quote-worksheet,.guide-callout,.symptom-record { padding:25px 20px; }
  .quote-worksheet .button { gap:15px; padding:14px; font-size:13px; }
  .quote-worksheet output { font-size:20px; }
  .worksheet-reset { padding:15px 0; display:block; }
  .comparison-table { font-size:14px; }
  .comparison-table th,.comparison-table td { padding:15px 10px; }
  .comparison-table tbody th { width:38%; }
  .symptom-record dl>div { grid-template-columns:1fr; gap:8px; }
  .guide-service-links { display:flex; flex-direction:column; gap:10px; align-items:flex-start; }
  .guide-service-links a { justify-content:space-between; width:100%; gap:20px; }
  .guide-index { padding-top:10px; }
  .identity-card { padding:30px 25px; }
  .identity-card h3 { font-size:39px; }
  .annotated-gallery { grid-template-columns:1fr; gap:45px; }
  .annotated-gallery img { height:350px; }
  .annotated-gallery h2 { font-size:34px; }
  .gallery-disclosure { padding:25px; }
}
@media(max-width:540px) {
  .service-atlas { grid-template-columns:1fr; gap:36px; }
  .service-card-image { aspect-ratio:1.45; }
  .service-card-heading h3 { font-size:28px; max-width:270px; }
  .service-card-index { width:35px; height:35px; }
  .hero-introduction h1 { font-size:clamp(40px,10.8vw,58px); }
}
@media print {
  .guide-related,.guide-cluster-back { display:none!important; }
  .table-scroll-hint { display:none!important; }
  .header,.site-footer,.floating-contact,.skip-link,.guide-toc,.guide-next,.guide-summary,.guide-provenance,.quote-worksheet button,.page-breadcrumb-wrap { display:none!important; }
  html { scroll-behavior:auto; }
  body { background:#fff; color:#111; font-size:11pt; }
  .guide-masthead,.guide-layout { padding:20px 0; display:block; }
  .guide-masthead h1 { font-size:38pt; }
  .guide-body h2 { font-size:25pt; }
  .guide-body>section { margin-bottom:35px; }
  .guide-body p,.guide-body li,.guide-body dd,.comparison-table { color:#222; font-size:11pt; }
  .guide-callout,.symptom-record,.quote-worksheet { border:1px solid #aaa; background:#fff; }
  .guide-body a { color:#111; }
  .guide-note-grid article,.definition-list>div,.symptom-record dl>div { break-inside:avoid; }
  .reveal-ready [data-reveal] { opacity:1; transform:none; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*:before,*:after { animation:none!important; transition:none!important; }
  .reveal-ready [data-reveal] { opacity:1; transform:none; }
}
