*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#432b24;background:#fbf9f6;font-family:'DM Sans',Arial,sans-serif}h1,h2,h3{font-family:'Averia Libre',Georgia,serif;font-weight:500}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{max-width:100%;display:block}.header{height:86px;padding:10px 6%;display:flex;align-items:center;gap:35px;background:#fff;position:sticky;top:0;z-index:10;box-shadow:0 2px 15px #432b2412}.brand img{width:170px;height:66px;object-fit:contain}.nav{display:flex;gap:28px;margin:auto}.nav a{font-size:13px;font-weight:600}.nav a:hover,.service a:hover{color:#bc895f}.btn{display:inline-block;padding:14px 22px;border-radius:4px;font-size:13px;font-weight:700;text-align:center;cursor:pointer;border:1px solid transparent}.btn-green{background:#19482a;color:white}.btn-brown{background:#432b24;color:#fff}.btn-outline{border-color:#8f6851;color:#432b24;background:#fff8}.btn-tan{background:#d2a177;color:#432b24}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:46% 54%;min-height:580px;background:#f3ece4}.hero-copy{padding:92px 5% 40px 13%;align-self:center}.eyebrow{letter-spacing:3px;font-size:11px;font-weight:700;color:#a67553}.hero h1{font-size:clamp(42px,5vw,75px);line-height:1.07;letter-spacing:-2px;margin:18px 0}.hero-copy>p:not(.eyebrow){max-width:420px;line-height:1.75;color:#584c45}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 55px}.hero-features{display:flex;gap:16px;flex-wrap:wrap;font-size:11px;font-weight:700}.hero-image{background:linear-gradient(90deg,#f3ece4 0%,transparent 24%),url('assets/hero.webp') center/cover}.section{max-width:1300px;margin:auto;padding:78px 5%}.section-heading{text-align:center;margin-bottom:35px}.section-heading h2,.projects h2,.craft h2,.contact h2{font-size:clamp(30px,3vw,47px);margin:10px 0}.section-heading>p:last-child{color:#746b64}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service img{width:100%;aspect-ratio:4/3;object-fit:cover}.service h3{font-size:23px;margin:16px 0 8px}.service p{color:#746b64;font-size:14px;line-height:1.6;min-height:48px}.service a{font-size:13px;font-weight:700}.craft{background:#432b24;color:white;padding:70px max(6%,calc((100vw - 1180px)/2));display:flex;align-items:center;gap:60px;justify-content:space-between}.craft>div:first-child{max-width:550px}.craft p:not(.eyebrow){line-height:1.8;color:#e8dcd3}.craft-points{display:flex;gap:22px}.craft-points span{font-size:38px;text-align:center;color:#d2a177}.craft-points small{display:block;color:white;font-size:12px;max-width:100px}.projects-heading{display:flex;justify-content:space-between;align-items:end;gap:30px}.projects-heading>p{max-width:300px;color:#746b64;font-size:14px;line-height:1.7}.filters{display:flex;gap:9px;margin:25px 0}.filters button{border:1px solid #d7c8bb;border-radius:40px;padding:9px 16px;background:transparent;color:#432b24;cursor:pointer}.filters button.active{background:#432b24;color:white}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-grid figure{margin:0;background:white}.project-grid img{width:100%;aspect-ratio:1.4;object-fit:cover}.project-grid figcaption{padding:15px;font-family:'Playfair Display',serif;font-size:21px}.project-grid small{display:block;font-family:'DM Sans',sans-serif;color:#88776a;font-size:12px;margin-top:5px}.disclaimer{font-size:12px;color:#7e746e}.contact{display:grid;grid-template-columns:1fr 1.25fr}.contact-info{background:#19482a;color:white;padding:80px 12%}.contact-info h2{font-size:50px}.contact-info>p:not(.eyebrow){line-height:1.8;color:#e6eee7}.contact-details{display:grid;gap:15px;margin-top:45px;font-size:14px}.contact-details span:before{content:'✓';color:#d2a177;margin-right:12px}.form-wrap{padding:65px 9%;background:#f3f0eb}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}form label{display:block;font-size:12px;font-weight:700;margin-bottom:15px}input,select,textarea{display:block;width:100%;border:1px solid #ded5cd;background:white;padding:13px;margin-top:7px;border-radius:3px;color:#432b24}textarea{resize:vertical}.form-submit{width:100%}.form-note{font-size:11px;color:#7b6f65;line-height:1.6}footer{background:#432b24;color:white;padding:45px 6% 20px}.footer-top{display:flex;align-items:center;gap:45px}.footer-top img{width:165px}.footer-top p{font-size:13px;line-height:1.7;color:#e9dcd1}.footer-top nav{display:flex;gap:24px;margin-left:auto;font-size:13px}.footer-bottom{border-top:1px solid #7a6256;margin-top:35px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#dfcfc3}@media(max-width:850px){.header{padding:8px 5%;height:75px}.brand img{width:145px}.menu-toggle{display:block;margin-left:auto;border:0;background:none;font-size:26px;color:#432b24}.nav{display:none;position:absolute;top:75px;left:0;right:0;background:white;padding:22px;box-shadow:0 10px 15px #0002;flex-direction:column}.nav.open{display:flex}.header-cta{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:60px 7% 35px}.hero-image{min-height:380px;background: url('assets/hero.webp') center/cover}.service-grid{grid-template-columns:repeat(2,1fr)}.craft{padding:55px 7%;display:block}.craft-points{margin-top:35px}.contact{grid-template-columns:1fr}.contact-info{padding:55px 7%}.form-wrap{padding:45px 7%}.footer-top{flex-wrap:wrap}.footer-top nav{margin-left:0}}@media(max-width:540px){.hero h1{font-size:45px}.hero-features{gap:10px}.section{padding:55px 5%}.service-grid{gap:18px 12px}.service h3{font-size:19px}.service p{font-size:12px}.project-grid{grid-template-columns:1fr}.projects-heading{display:block}.form-row{grid-template-columns:1fr}.footer-top{display:block}.footer-top img{margin-bottom:15px}.footer-top nav{flex-wrap:wrap;margin-top:20px}.footer-bottom{display:block}.craft-points{gap:10px}}
/* V2: horizontal identity and Averia Libre typography */
.header{height:108px;padding-top:9px;padding-bottom:9px;gap:28px}
.brand{display:flex;align-items:center;flex-shrink:0}
.brand img{width:330px;height:auto;max-height:86px;object-fit:contain}
.footer-top img{width:300px;height:auto;background:#fbf9f6;border-radius:4px;padding:10px}
@media(max-width:1100px){.brand img{width:265px}.nav{gap:15px}.header{gap:15px}}
@media(max-width:850px){.header{height:85px}.brand img{width:245px;max-height:68px}.nav{top:85px}}
@media(max-width:540px){.header{height:75px}.brand img{width:min(225px,64vw);max-height:60px}.nav{top:75px}.footer-top img{width:260px}}

/* V3: original Cantillano mark as the woodgrain signature */
.woodgrain-section{position:relative;isolation:isolate;overflow:hidden}.woodgrain-section::before{content:"";position:absolute;z-index:-1;pointer-events:none;background:url('assets/woodgrain-mark.png') center/contain no-repeat;width:370px;height:370px;right:-75px;top:-65px;opacity:.12;transform:rotate(-12deg)}.craft.woodgrain-section::before{width:560px;height:560px;left:-155px;right:auto;top:-120px;opacity:.13}.story-strip{background:#19482a;color:#fff;padding:85px 8%;text-align:center}.story-inner{max-width:750px;margin:auto}.story-strip h2,.cta-band h2{font-size:clamp(32px,4vw,54px);margin:10px 0}.story-strip p:not(.eyebrow),.cta-band p:not(.eyebrow){line-height:1.8;color:#e9e0d8}.story-strip .btn{margin-top:14px}.nav-dropdown{position:relative;display:flex;align-items:center}.nav-drop-btn{border:0;background:none;color:#432b24;font-weight:600;font-size:13px;cursor:pointer;padding:14px 0}.dropdown-panel{display:none;position:absolute;top:100%;left:-25px;min-width:270px;background:#fff;box-shadow:0 18px 40px #432b2430;border-top:3px solid #ca9a70;padding:12px;border-radius:0 0 8px 8px}.nav-dropdown:hover .dropdown-panel,.nav-dropdown:focus-within .dropdown-panel,.nav-dropdown.expanded .dropdown-panel{display:grid}.dropdown-panel a{padding:12px;border-radius:4px;display:block}.dropdown-panel a:hover{background:#f6efe7}.dropdown-panel small{display:block;color:#9b755b;font-size:11px;margin-top:5px}.service-photo{display:block;overflow:hidden}.service-photo img{transition:transform .65s cubic-bezier(.2,.7,.2,1)}.service-photo:hover img{transform:scale(1.07)}.service a:not(.service-photo){display:inline-block;margin-top:6px}.btn{transition:transform .25s ease,background .25s ease,box-shadow .25s ease}.btn:hover{transform:translateY(-3px);box-shadow:0 8px 22px #432b2426}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:translateY(0)}.zoomable{cursor:zoom-in;overflow:hidden}.zoomable img,.gallery-image img{transition:transform .6s ease}.zoomable:hover img,.gallery-image:hover img{transform:scale(1.045)}.inner-hero{display:grid;grid-template-columns:45% 55%;background:#f3ece4;min-height:520px}.inner-hero-copy{padding:100px 8% 85px 13%;align-self:center}.inner-hero h1{font-size:clamp(44px,5vw,78px);line-height:1.04;margin:16px 0}.inner-hero-copy>p:not(.eyebrow){font-size:18px;line-height:1.7;max-width:480px}.inner-hero .btn{margin-top:20px}.inner-hero-image img{width:100%;height:100%;object-fit:cover;min-height:520px}.detail-intro{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.detail-intro h2,.detail-list h2,.faq h2,.next-services h2{font-size:clamp(32px,3vw,46px);margin:10px 0}.detail-intro p{line-height:1.85;color:#67584e}.detail-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:35px}.detail-cards article{background:#f2eae1;padding:28px;min-height:215px;border-bottom:3px solid #ca9a70}.detail-cards span{font-size:12px;color:#a47b5c}.detail-cards h3{font-size:25px}.detail-cards p{font-size:14px;line-height:1.7;color:#6a5b50}.detail-gallery{background:#eae1d6;padding:75px 6%}.detail-gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:1200px;margin:auto}.gallery-image{padding:0;border:0;background:transparent;cursor:zoom-in;overflow:hidden}.gallery-image img{width:100%;height:340px;object-fit:cover}.faq{max-width:950px}.faq details{border-bottom:1px solid #d7c9bd;padding:22px 0}.faq summary{cursor:pointer;font-weight:700;font-size:17px}.faq details p{color:#6d6057;line-height:1.75}.next-links{display:flex;flex-wrap:wrap;gap:12px}.next-links a{background:#f1e8dd;padding:17px 22px;border-radius:5px;font-weight:600}.next-links span{color:#a47b5c}.cta-band{text-align:center;background:#432b24;color:white;padding:85px 5%}.cta-band .btn{margin-top:18px}.lightbox[hidden]{display:none}.lightbox{position:fixed;inset:0;background:#160e0ce8;z-index:1000;display:flex;align-items:center;justify-content:center;padding:65px 25px 25px}.lightbox img{max-width:95vw;max-height:85vh;object-fit:contain;box-shadow:0 20px 80px #0008}.lightbox-close{position:absolute;top:14px;right:25px;background:none;border:0;color:white;font-size:46px;cursor:pointer}.modal-open{overflow:hidden}@media(max-width:850px){.nav-dropdown{display:block}.dropdown-panel{position:static;box-shadow:none;border-top:1px solid #e8d8c8;min-width:0}.nav-dropdown:not(.expanded) .dropdown-panel{display:none}.inner-hero{grid-template-columns:1fr}.inner-hero-copy{padding:60px 7%}.inner-hero-image img{min-height:310px;max-height:460px}.detail-intro{grid-template-columns:1fr}.detail-cards{grid-template-columns:1fr}.gallery-image img{height:250px}}@media(max-width:540px){.detail-gallery-grid{grid-template-columns:1fr}.inner-hero h1{font-size:44px}.woodgrain-section::before{width:270px;height:270px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}

/* V4 visual QA: measured photo presentation, consistent header, accessible animation */
.header{height:100px;gap:22px;padding:9px 5%;transition:height .3s ease,box-shadow .3s ease}
.header.is-scrolled{height:82px;box-shadow:0 7px 28px #432b2418}
.brand img{width:350px;max-height:82px}
.nav{align-items:center;gap:26px}
.nav>a,.nav-drop-btn{display:inline-flex;align-items:center;height:44px;position:relative;white-space:nowrap}
.nav>a::after,.nav-drop-btn::after{content:"";position:absolute;left:0;right:100%;height:2px;bottom:5px;background:#ca9a70;transition:right .3s ease}
.nav>a:hover::after,.nav-drop-btn:hover::after{right:0}
.service-grid{gap:26px}.service-photo{background:#e9ded2;border-radius:5px;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center}
.service-photo img{width:100%;height:100%;object-fit:cover;image-rendering:auto;transform:none}
.service-photo:hover img{transform:scale(1.025)}
.inner-hero{min-height:0;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:stretch}
.inner-hero-copy{padding:75px clamp(32px,6vw,100px);min-height:430px}
.inner-hero-image{display:flex;align-items:center;justify-content:center;background:#e8dcd0;padding:30px;min-width:0}
.inner-hero-image img{width:auto;height:auto;max-width:100%;max-height:350px;min-height:0;object-fit:contain;border-radius:4px;box-shadow:0 14px 40px #432b241c}
.detail-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:900px}
.gallery-image{display:flex;align-items:center;justify-content:center;min-height:235px;max-height:280px;background:#e2d4c4;border-radius:6px;padding:16px}
.gallery-image img{width:auto;height:auto;max-width:100%;max-height:235px;object-fit:contain}
.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.project-grid figure[hidden]{display:none}
.project-grid img{aspect-ratio:1.5;object-fit:cover}
.lightbox img{width:auto;height:auto;max-width:min(90vw,850px);max-height:75vh;object-fit:contain}
.lightbox .image-caption{position:absolute;bottom:20px;left:15px;right:15px;text-align:center;color:#f5eae2;font-size:13px}
.footer-top nav a:hover{color:#d2a177}
@media(max-width:1100px){.brand img{width:275px}.nav{gap:15px}}
@media(max-width:850px){.header{height:83px}.header.is-scrolled{height:75px}.brand img{width:250px;max-height:65px}.nav{top:83px;align-items:stretch}.header.is-scrolled .nav{top:75px}.inner-hero{grid-template-columns:1fr}.inner-hero-copy{padding:55px 7%;min-height:0}.inner-hero-image{padding:28px}.inner-hero-image img{max-height:300px}.detail-gallery-grid{grid-template-columns:1fr}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.brand img{width:min(235px,68vw)}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.service h3{font-size:18px}.service-photo{aspect-ratio:1.15}.project-grid{grid-template-columns:1fr}.inner-hero-image img{max-height:260px}}
@media(prefers-reduced-motion:reduce){.header,.header.is-scrolled{transition:none}.nav>a::after,.nav-drop-btn::after{transition:none}}

/* V5: editorial, expandable service gallery; original Cantillano mark used as texture */
.service{position:relative}.service-photo{cursor:pointer}.service a:not(.service-photo){color:#432b24;font-weight:700}.service a:focus-visible,.explorer button:focus-visible{outline:3px solid #ca9a70;outline-offset:3px}
.explorer[hidden]{display:none!important}.explorer{position:relative;isolation:isolate;margin:34px 0 0;background:#f0e7dc;padding:clamp(25px,4vw,70px) clamp(20px,6vw,95px);overflow:hidden;border-top:3px solid #ca9a70;animation:gallery-enter .55s ease both}.explorer-grain{position:absolute;right:-115px;top:-100px;width:430px;height:430px;background:url('assets/woodgrain-mark.png') center/contain no-repeat;opacity:.095;pointer-events:none;z-index:-1}.explorer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:28px}.explorer-top h2{font-size:clamp(38px,4.5vw,64px);margin:7px 0}.explorer-top p:last-child{color:#67574c}.explorer-close{background:transparent;border:1px solid #b89c83;color:#432b24;border-radius:4px;padding:12px 16px;cursor:pointer}.explorer-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(25px,5vw,75px);align-items:start}.explorer-photo-frame{min-height:310px;background:#d8c4af;display:flex;justify-content:center;align-items:center;padding:24px;border-radius:5px;overflow:hidden}.explorer-photo-frame img{display:block;width:auto;height:auto;max-width:100%;max-height:320px;object-fit:contain;image-rendering:auto;filter:drop-shadow(0 12px 18px #432b2425)}.explorer-photo-note{font-size:12px;color:#806a5a}.explorer-detail h3,.explorer-bottom h3{font-size:clamp(28px,3vw,42px);margin:8px 0 16px}.explorer-detail>p:not(.eyebrow){color:#67574c;line-height:1.8}.explorer-options{margin:28px 0}.explorer-options h4{margin:24px 0 10px;font-size:14px}.explorer-tabs,.finish-choices{display:flex;flex-wrap:wrap;gap:8px}.explorer-tabs button,.finish-choices button{background:#fff9f2;border:1px solid #d5c1ad;padding:10px 14px;border-radius:4px;cursor:pointer;color:#432b24;font-size:13px}.explorer-tabs button[aria-pressed=true],.finish-choices button[aria-pressed=true]{background:#432b24;color:#fff;border-color:#432b24}.finish-choices button{display:flex;align-items:center;gap:8px}.finish-dot{display:inline-block;width:17px;height:17px;border-radius:50%;border:1px solid #b7a18e}.explorer-selection-description{color:#756255;font-size:13px;line-height:1.7;min-height:22px}.explorer-bottom{display:grid;grid-template-columns:1fr 1.5fr;gap:35px;margin-top:50px;padding-top:35px;border-top:1px solid #d3bda8}.explorer-faq details{border-bottom:1px solid #d3bda8;padding:15px 0}.explorer-faq summary{cursor:pointer;font-weight:600}.explorer-faq p{font-size:14px;line-height:1.7;color:#6a584d}.explorer-caveat{margin-top:30px;color:#806a5a;font-size:12px}.explorer.is-closing{animation:gallery-exit .3s ease both}@keyframes gallery-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes gallery-exit{to{opacity:0;transform:translateY(-8px)}}
@media(max-width:850px){.explorer-content,.explorer-bottom{grid-template-columns:1fr}.explorer-photo-frame{min-height:220px}.explorer-grain{width:280px;height:280px;right:-95px}}
@media(prefers-reduced-motion:reduce){.explorer,.explorer.is-closing{animation:none}}

.explorer-thumbnails{display:flex;gap:10px;margin-top:12px}.explorer-thumb{width:95px;height:74px;background:#e3d4c5;border:2px solid transparent;border-radius:4px;padding:5px;cursor:pointer;display:flex;align-items:center;justify-content:center}.explorer-thumb[aria-pressed=true]{border-color:#432b24}.explorer-thumb img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}.explorer{scroll-margin-top:105px}

/* V6: expanded high-resolution editorial photo gallery */
.explorer-content{grid-template-columns:minmax(0,1.55fr) minmax(310px,.8fr);gap:clamp(25px,3vw,52px)}
.explorer-photo-frame{height:clamp(350px,45vw,660px);padding:0;position:relative;background:#e3d6c9;border-radius:7px}
.explorer-photo-frame img{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;filter:none;transition:opacity .28s ease}
.gallery-prev,.gallery-next{position:absolute;top:50%;transform:translateY(-50%);border:0;background:#fffef0e8;color:#432b24;border-radius:50%;width:42px;height:42px;font-size:32px;line-height:1;cursor:pointer;z-index:1}
.gallery-prev{left:16px}.gallery-next{right:16px}.gallery-counter{position:absolute;bottom:15px;right:18px;background:#432b24dc;color:white;padding:7px 13px;border-radius:30px;font-size:12px}
.gallery-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:12px 1px 7px;scroll-snap-type:x mandatory}.gallery-thumbnails button{border:3px solid transparent;border-radius:6px;overflow:hidden;padding:0;background:transparent;flex:0 0 110px;height:75px;cursor:pointer;scroll-snap-align:start}.gallery-thumbnails button[aria-current=true]{border-color:#c89b6e}.gallery-thumbnails img{width:100%;height:100%;object-fit:cover;display:block}.explorer-photo-note{margin-top:5px}
@media(max-width:950px){.explorer-content{grid-template-columns:1fr}.explorer-photo-frame{height:clamp(270px,56vw,520px)}}
@media(max-width:600px){.gallery-thumbnails button{flex-basis:78px;height:60px}.gallery-prev,.gallery-next{width:36px;height:36px}}

/* V7 navigation fixes */
.nav-dropdown{position:relative}
.nav-drop-btn{cursor:pointer;gap:7px}
.dropdown-panel{z-index:50}
.dropdown-panel a{white-space:normal}
@media(max-width:850px){.nav-dropdown{width:100%}.nav-drop-btn{width:100%;justify-content:space-between}.nav-dropdown.expanded .dropdown-panel{display:grid;position:static;width:100%;min-width:0;box-shadow:none}.nav-dropdown:not(.expanded) .dropdown-panel{display:none!important}}
#service-explorer{scroll-margin-top:110px}

/* V8: aligned service tiles and straightforward Services navigation */
.nav-services-link{display:inline-flex;align-items:center;min-height:42px}
.service-grid{align-items:stretch}
.service{display:flex;flex-direction:column;min-width:0}
.service-photo{display:block;width:100%;aspect-ratio:4 / 3;flex-shrink:0;overflow:hidden;border-radius:5px}
.service-photo img,.service img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}
.service h3{min-height:2.25em;line-height:1.12;margin:16px 0 7px}
.service h3 a.service-title-link{display:inline;color:#432b24;font-size:inherit;font-weight:inherit;margin:0}
.service p{min-height:3.5em;margin:0 0 12px;flex-grow:1}
.service>a:not(.service-photo){margin-top:auto;align-self:flex-start}
@media(max-width:540px){.service-photo{aspect-ratio:4 / 3}.service h3{min-height:2.3em}.service p{min-height:5.4em}}

/* V9: enforce uniform tile geometry across browsers */
.service-grid>.service{display:flex;flex-direction:column;align-items:stretch}
.service-grid>.service>.service-photo{height:auto;aspect-ratio:4/3;display:block;overflow:hidden}
.service-grid>.service>.service-photo>img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.service-grid>.service>h3{min-height:2.4em}
.service-grid>.service>p{flex:1}
.nav .nav-services-link{display:inline-flex}

/* V10: Large editorial service cards with strictly identical geometry */
#services.section{max-width:1660px;padding-left:clamp(20px,4vw,70px);padding-right:clamp(20px,4vw,70px)}
#services .service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.8vw,30px);align-items:stretch}
#services .service-grid>.service{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #e9dfd4;border-radius:10px;overflow:hidden;box-shadow:0 12px 32px #432b240b;transition:transform .3s ease,box-shadow .3s ease}
#services .service-grid>.service:hover{transform:translateY(-5px);box-shadow:0 18px 36px #432b2418}
#services .service-grid>.service>.service-photo{display:block;position:relative;aspect-ratio:5/4;height:auto;width:100%;overflow:hidden;border-radius:0;background:#e7d7c6}
#services .service-grid>.service>.service-photo>img{display:block;width:100%;height:100%;aspect-ratio:unset;object-fit:cover;object-position:center;transition:transform .5s ease}
#services .service-grid>.service>h3{font-size:clamp(22px,1.65vw,29px);min-height:0;line-height:1.15;margin:23px 22px 8px}
#services .service-grid>.service>p{font-size:14px;line-height:1.6;min-height:0;flex:1;margin:0 22px 18px}
#services .service-grid>.service>a:not(.service-photo){font-size:13px;margin:0 22px 23px;align-self:flex-start}
/* Collapsible explorer: JS animates measured height, never display:none until the exit completes. */
#service-explorer{margin-top:30px;will-change:height;transform:none;animation:none;overflow:hidden}
#service-explorer.is-closing{animation:none}
@media(max-width:900px){#services .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){#services .service-grid{grid-template-columns:1fr}#services .service-grid>.service>.service-photo{aspect-ratio:16/10}#services .service-grid>.service>h3{margin-top:17px}}
@media(prefers-reduced-motion:reduce){#services .service-grid>.service{transition:none}}

/* V14: real-profile social trust area */
.trust-section{position:relative;background:#faf8f5;overflow:hidden}
.trust-heading{text-align:center;max-width:720px;margin:0 auto 34px}
.trust-heading h2{margin:8px 0 12px;color:#432b24}
.trust-heading>p:last-child{color:#75645a;line-height:1.65}
.trust-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1120px;margin:0 auto 26px}
.trust-card{background:#fff;border:1px solid #e8d9c9;border-radius:14px;padding:30px;min-height:230px;box-shadow:0 8px 24px rgba(67,43,36,.035);transition:transform .25s,box-shadow .25s}
.trust-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(67,43,36,.09)}
.trust-card-top{display:flex;align-items:center;gap:12px}
.trust-card h3{font-family:'Averia Libre',serif;color:#432b24;font-size:1.5rem;margin:0}
.trust-card>p{color:#75645a;line-height:1.6}
.trust-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#f4e8dc;color:#aa7750;font-size:24px;flex-shrink:0}
.trust-link{display:inline-flex;align-items:center;padding:10px 14px;border:1px solid #d9c2ae;border-radius:7px;color:#432b24;font-weight:700;text-decoration:none;margin:8px 8px 0 0;transition:background .2s,color .2s}
.trust-link:hover,.trust-link:focus-visible{background:#432b24;color:white}
.trust-muted{font-size:.88rem;color:#88776b!important;line-height:1.5}
.trust-social-links{display:flex;flex-wrap:wrap;gap:8px}
.trust-cta{max-width:1120px;margin:0 auto;background:#432b24;color:#fff;border-radius:14px;padding:30px 36px;display:flex;justify-content:space-between;align-items:center;gap:22px;position:relative;overflow:hidden}
.trust-cta h3{font-family:'Averia Libre',serif;font-size:1.7rem;color:#fff;margin:6px 0}
.trust-cta p{color:#e7d8cc;margin:0}
.trust-cta .eyebrow{color:#d6a477}
.trust-cta .btn{white-space:nowrap;z-index:1}
@media(max-width:760px){.trust-grid{grid-template-columns:1fr}.trust-card{min-height:unset;padding:22px}.trust-cta{flex-direction:column;align-items:flex-start;padding:24px}}
@media(prefers-reduced-motion:reduce){.trust-card{transition:none}}

/* V14 refinement: unified contact section, remove redundant dark banner */
.contact-refined{background:#f7f1e9;padding:clamp(65px,7vw,110px) 5%;display:block;position:relative;overflow:hidden}
.contact-refined.woodgrain-section::before{width:520px;height:520px;right:-170px;top:-120px;opacity:.055}
.contact-shell{max-width:1320px;margin:0 auto;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:stretch;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 24px 75px rgba(67,43,36,.09);border:1px solid #e9ddd0}
.contact-refined .contact-info{padding:clamp(42px,5vw,80px);background:#19482a;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;min-width:0}
.contact-refined .contact-info::after{content:"";position:absolute;right:-145px;bottom:-140px;width:410px;height:410px;background:url('assets/woodgrain-mark.png') center/contain no-repeat;opacity:.09;pointer-events:none}
.contact-refined .contact-info h2{font-size:clamp(43px,4.4vw,70px);line-height:1.05;margin:18px 0 22px;letter-spacing:-.025em}
.contact-refined .contact-info h2 em{font-weight:300;font-style:normal;color:#d5a779}
.contact-refined .contact-info>p:not(.eyebrow){font-size:15px;line-height:1.9;max-width:390px;color:#e6eee7}
.contact-refined .contact-divider{height:1px;background:rgba(255,255,255,.25);margin:34px 0 10px;max-width:320px}
.contact-refined .contact-details{margin-top:18px;gap:18px;line-height:1.5}
.contact-refined .contact-signature{margin-top:50px;font-family:'Averia Libre',Georgia,serif;font-size:19px!important;color:#dfbc96!important}
.contact-refined .form-wrap{background:#fffaf5;padding:clamp(38px,4.5vw,70px);min-width:0}
.contact-refined .form-wrap h3{font-size:clamp(32px,3vw,45px);line-height:1.12;margin:12px 0 10px}
.contact-refined .form-intro{color:#75665d;font-size:14px;line-height:1.7;margin:0 0 30px}
.contact-refined .form-row{gap:18px}
.contact-refined form label{font-size:12px;letter-spacing:.015em;margin-bottom:20px;color:#49372f}
.contact-refined input,.contact-refined select,.contact-refined textarea{border:1px solid #d8c9ba;border-radius:7px;padding:15px 16px;margin-top:9px;background:#fff;min-height:51px;outline-offset:3px}
.contact-refined textarea{min-height:120px}
.contact-refined input:focus,.contact-refined select:focus,.contact-refined textarea:focus{outline:2px solid #c79c72;border-color:#c79c72}
.contact-refined .form-submit{border-radius:7px;min-height:54px;font-weight:600;letter-spacing:.015em}
.contact-refined .form-note{margin:15px 0 0;color:#846f61;font-size:11px;line-height:1.6}
@media(max-width:850px){.contact-refined{padding:55px 5%}.contact-shell{grid-template-columns:1fr}.contact-refined .contact-info,.contact-refined .form-wrap{padding:45px 7%}.contact-refined .contact-signature{margin-top:25px}}
@media(max-width:540px){.contact-refined .contact-info,.contact-refined .form-wrap{padding:36px 7%}.contact-refined .contact-info h2{font-size:43px}.contact-refined .form-row{grid-template-columns:1fr}}
