
:root{--bg:#f7f2eb;--paper:#fffaf4;--text:#28211e;--muted:#6f6962;--accent:#a47a54;--light:#d9c7b5;--dark:#211b18;--line:rgba(45,36,28,.18);--serif:Georgia,'Times New Roman',serif;--sans:'Arial',system-ui,sans-serif;--radius:2px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:15px;line-height:1.65;overflow-x:hidden}img{display:block;max-width:100%;object-fit:cover}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #be965b;outline-offset:3px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{line-height:1.09;font-weight:400}h1{font-size:clamp(3.1rem,6.8vw,7.7rem);letter-spacing:-.05em}h2{font-size:clamp(2.3rem,4vw,4.6rem);letter-spacing:-.04em}h3{font-size:clamp(1.3rem,1.8vw,1.85rem);letter-spacing:-.03em}em{font-family:var(--serif);font-weight:400}p{color:var(--muted);line-height:1.8}.container{width:min(100% - 100px,1360px);margin-inline:auto}.section{padding-block:clamp(64px,8vw,132px)}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--accent)}.text-link{font-size:12px;font-weight:700;letter-spacing:.04em;display:inline-flex;gap:10px;align-items:center;border-bottom:1px solid currentColor;padding-bottom:6px;transition:gap .3s}.text-link:hover{gap:18px}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:51px;padding:13px 23px;font-weight:700;font-size:12px;letter-spacing:.04em;border:1px solid transparent;transition:transform .3s,background .3s,color .3s;white-space:nowrap}.button:hover{transform:translateY(-3px)}.button-primary{background:var(--accent);color:#fff}.button-primary:hover{background:var(--dark)}.site-header{position:relative;z-index:200;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;width:min(100% - 84px,1440px);margin:auto;min-height:91px}.brand{display:inline-flex;align-items:center;gap:11px;min-width:0}.brand-emblem{display:flex;flex:none}.brand-emblem img{width:47px;height:47px;object-fit:contain}.brand-words{display:flex;flex-direction:column;line-height:1.08;white-space:nowrap}.brand-words strong{font-size:19px;letter-spacing:.1em;font-weight:700}.brand-words strong span{font-weight:400}.brand-words small{font-size:8px;letter-spacing:.2em;margin-top:7px;color:var(--muted)}.desktop-nav{display:flex;align-items:center;gap:29px}.nav-link,.services-toggle{font-size:12px;font-weight:700;color:var(--text);transition:color .2s;background:none;border:0;padding:15px 0}.nav-link:hover,.services-toggle:hover,.nav-link.selected{color:var(--accent)}.services-holder{position:relative;order:3}.services-toggle span{margin-left:5px}.services-dropdown{position:absolute;right:-50px;top:calc(100% + 10px);width:268px;background:var(--paper);box-shadow:0 16px 50px #0003;padding:12px;display:none;z-index:300;border:1px solid var(--line)}.services-holder.open .services-dropdown{display:flex;flex-direction:column}.services-dropdown a{font-size:13px;font-weight:600;padding:12px 14px;border-bottom:1px solid var(--line);color:var(--text)}.services-dropdown a:hover{color:var(--accent);background:var(--bg)}.services-dropdown a:last-child{border-bottom:0}.services-dropdown .dropdown-all{background:var(--bg);display:flex;justify-content:space-between}.header-actions{display:flex;align-items:center;gap:12px}.header-whatsapp{background:var(--dark);color:white;padding:12px 18px;min-height:46px;display:inline-flex;align-items:center;gap:13px;white-space:nowrap;font-size:12px;font-weight:700}.header-whatsapp:hover{background:var(--accent)}.cta-short{display:none}.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:6px}.menu-toggle span{width:20px;height:2px;background:var(--text)}.mobile-menu{display:none}.hero{position:relative;overflow:hidden}.hero-v1{display:grid;grid-template-columns:48% 52%;min-height:680px;background:var(--dark);color:#fff}.hero-left{display:flex;justify-content:center;flex-direction:column;padding:8vw clamp(38px,6vw,110px);position:relative;z-index:2}.hero-left h1{font-family:var(--serif);font-size:clamp(3.4rem,6vw,6.8rem);max-width:720px;margin:25px 0}.hero-left p,.hero-v3 p{color:#e3d7c9;max-width:445px}.hero-actions{display:flex;align-items:center;gap:27px;flex-wrap:wrap;margin-top:25px}.hero-v1 .text-link,.hero-v3 .text-link{color:#fff}.hero-note{margin-top:64px;font-size:10px;letter-spacing:.09em;color:#b9a89a}.hairline{display:inline-block;width:35px;height:1px;background:var(--accent);vertical-align:middle;margin-right:10px}.hero-photo{position:relative;min-width:0;overflow:hidden}.hero-photo>img{width:100%;height:100%;position:absolute;inset:0;animation:slowPan 24s ease-in-out infinite alternate}.hero-v1 .hero-photo>img{object-position:50% 62%}.image-corner{position:absolute;right:24px;bottom:28px;color:#fff;text-shadow:0 1px 15px #0008;font-size:10px;letter-spacing:.18em}.hero-v2{padding:70px 0;background:var(--bg)}.split-hero{display:grid;grid-template-columns:47% 53%;gap:24px;min-height:650px}.hero-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:40px 4vw 40px 0}.hero-copy h1{font-family:var(--serif);font-size:clamp(3.3rem,5.3vw,6rem);margin:28px 0}.hero-copy em{color:var(--accent)}.hero-copy p{max-width:430px}.hero-v2 .hero-photo{min-height:570px}.hero-v2 .hero-photo img{object-position:center}.image-tag{position:absolute;bottom:25px;left:25px;padding:10px 18px;background:var(--paper);color:var(--text);font-size:10px;letter-spacing:.15em}.hero-index{margin-top:56px;font-size:11px;color:var(--muted);letter-spacing:.12em}.hero-v3{min-height:715px;color:#fff;display:flex;align-items:center}.hero-bg,.hero-bg:after{position:absolute;inset:0}.hero-bg img{width:100%;height:100%;animation:slowPan 28s ease-in-out infinite alternate}.hero-bg:after{content:'';background:linear-gradient(90deg,rgba(4,7,7,.9) 0%,rgba(11,13,12,.62) 45%,rgba(0,0,0,.22) 100%)}.hero-front{z-index:2;position:relative;padding:120px 0}.hero-v3 h1{font-family:var(--serif);max-width:760px;margin:22px 0;font-size:clamp(3.8rem,8vw,8.6rem)}.hero-v3 h1 em{color:var(--light)}.hero-v3 .hero-front p{font-size:16px;max-width:470px}.hero-footer{position:absolute;bottom:20px;left:5%;right:5%;display:flex;justify-content:space-between;color:#fff9;font-size:10px;letter-spacing:.17em;z-index:2}.marquee{overflow:hidden;white-space:nowrap;background:var(--accent);color:#fff;padding:14px 0}.marquee-track{display:flex;gap:36px;align-items:center;width:max-content;animation:marquee 36s linear infinite}.marquee span{font-size:10px;letter-spacing:.24em;font-weight:700}.marquee b{opacity:.5}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:35px}.section-heading h2{font-family:var(--serif);margin:14px 0 0}.intro-layout{display:grid;grid-template-columns:30% 70%;gap:20px}.intro-copy{max-width:780px}.intro-copy h2{font-family:var(--serif)}.intro-copy p{max-width:700px;font-size:17px}.intro-overline{padding-top:15px}.decor-line{display:block;width:60px;height:1px;background:var(--accent);margin-top:25px}.services-section{background:var(--paper)}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-card{display:block;min-width:0}.service-media{aspect-ratio:1.26;position:relative;overflow:hidden;background:#dbc9b6}.service-media img{width:100%;height:100%;transition:transform .7s cubic-bezier(.2,.8,.1,1)}.service-card:hover img{transform:scale(1.06)}.media-arrow{position:absolute;right:17px;bottom:16px;background:var(--paper);height:40px;width:40px;display:grid;place-items:center;color:var(--text)}.service-text{padding:23px 8px 24px}.service-text .micro{font-size:10px;letter-spacing:.13em;color:var(--accent);text-transform:uppercase}.service-text h3{font-family:var(--serif);margin:12px 0}.service-text p{font-size:13px;margin-bottom:10px}.subtle-link{font-size:12px;font-weight:700}.feature-section{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(36px,7vw,120px);align-items:center;padding-block:75px 120px}.feature-photo{height:570px;overflow:hidden}.feature-photo img{width:100%;height:100%;transition:transform 1s}.feature-photo:hover img{transform:scale(1.04)}.feature-copy h2{font-family:var(--serif);margin:23px 0}.feature-copy p{font-size:16px}.home-showcase{display:grid;grid-template-columns:1.35fr .65fr;gap:24px}.showcase-large{height:590px;overflow:hidden}.showcase-large img,.showcase-stack img{width:100%;height:100%}.showcase-stack{display:grid;grid-template-rows:1fr .7fr;gap:20px}.showcase-stack>div:first-child{overflow:hidden;min-height:260px}.showcase-caption{background:var(--dark);color:#fff;padding:36px;display:flex;flex-direction:column;justify-content:center}.showcase-caption span{font-size:10px;letter-spacing:.2em;color:var(--light)}.showcase-caption h3{font-family:var(--serif);margin:16px 0}.showcase-caption .text-link{align-self:flex-start}.cta-band{background:var(--dark);color:#fff;padding:90px 0}.cta-inner{display:flex;align-items:end;justify-content:space-between;gap:35px}.cta-inner h2{font-family:var(--serif);max-width:720px;margin:15px 0}.cta-inner p{color:#b9afa6;max-width:580px}.site-footer{background:#171514;color:#fff;padding:77px 0 18px}.footer-top{display:grid;grid-template-columns:2.15fr 1fr 1.3fr 1.25fr;gap:46px;padding-bottom:65px}.site-footer .brand-words small,.site-footer p{color:#b1a9a2}.site-footer .footer-identity p{max-width:320px;margin:25px 0}.site-footer .footer-column{display:flex;flex-direction:column;gap:11px}.footer-column h3{font:700 11px var(--sans);text-transform:uppercase;letter-spacing:.2em;color:var(--light);margin-bottom:18px}.footer-column a,.footer-column p{font-size:13px;color:#ccc2b8;line-height:1.6;margin:0}.footer-column a:hover{color:#fff}.footer-bottom{border-top:1px solid #ffffff26;padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:11px;color:#a8a19a}.footer-bottom a:hover{color:#fff}.floating-wa{position:fixed;right:22px;bottom:22px;z-index:150;display:flex;align-items:center;gap:10px;padding:12px 17px;border-radius:40px;background:#1fba63;color:white;font-weight:700;font-size:12px;box-shadow:0 8px 28px #0004}.floating-wa img{width:24px;height:24px;filter:brightness(0) invert(1)}.inner-hero{position:relative;min-height:420px;display:flex;align-items:end;color:#fff;overflow:hidden}.inner-hero-image,.inner-hero-image:after{position:absolute;inset:0}.inner-hero-image img{width:100%;height:100%;object-position:center 45%}.inner-hero-image:after{content:'';background:linear-gradient(90deg,#111b 0%,#1119 60%,#1113 100%)}.inner-hero-content{position:relative;z-index:1;padding-block:75px}.inner-hero h1{font-family:var(--serif);font-size:clamp(3.3rem,5.8vw,6.6rem);max-width:880px;margin:16px 0}.inner-hero p{color:#eee;max-width:620px}.about-grid{display:grid;grid-template-columns:.9fr 1fr;gap:9%;align-items:center}.about-photo{height:590px;overflow:hidden}.about-photo img{height:100%;width:100%}.about-copy h2{font-family:var(--serif);margin:23px 0}.about-copy p{font-size:16px}.statement{border-top:1px solid var(--line)}.statement h2{max-width:1050px;margin-top:25px;font-family:var(--serif)}.materials-row{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.materials-image{height:460px;overflow:hidden}.materials-image img{width:100%;height:100%}.materials-copy h2{font-family:var(--serif);margin:20px 0}.detail-layout{display:grid;grid-template-columns:1.1fr .78fr;gap:14%;align-items:start}.detail-main h2{font-family:var(--serif);margin:18px 0 30px}.detail-main p{font-size:16px;max-width:650px}.detail-main h3{font-family:var(--serif);margin:35px 0 14px}.detail-aside{position:relative}.detail-image{height:450px;overflow:hidden}.detail-image img{width:100%;height:100%}.detail-note{background:var(--dark);color:#fff;margin:-35px 30px 0;position:relative;padding:26px;display:flex;flex-direction:column;gap:8px}.detail-note span{font-size:10px;color:var(--accent);letter-spacing:.2em}.detail-note strong{font-family:var(--serif);font-weight:400;font-size:22px}.detail-note small{font-size:12px;color:#c9beb2}.related-section{background:var(--paper)}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.related-tile img{width:100%;height:240px}.related-tile span{display:block;margin-top:14px;font-family:var(--serif);font-size:22px}.gallery-lead{max-width:700px;margin-bottom:40px}.gallery-lead h2{font-family:var(--serif);margin:17px 0}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.gallery-item{margin:0;position:relative;overflow:hidden}.gallery-item img{height:470px;width:100%;transition:transform .7s}.gallery-item:hover img{transform:scale(1.04)}.gallery-item:nth-child(3n){grid-column:span 2}.gallery-item:nth-child(3n) img{height:610px}.gallery-item figcaption{display:flex;justify-content:space-between;gap:12px;font-size:11px;letter-spacing:.12em;padding:14px 0;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:12%}.contact-info h2{font-family:var(--serif);margin:20px 0 50px}.contact-info-block{border-top:1px solid var(--line);padding:25px 0}.contact-info-block strong{display:block;font-size:10px;letter-spacing:.15em;color:var(--accent);margin-bottom:11px}.contact-info-block a{font-family:var(--serif);font-size:24px}.contact-info-block p{font-size:17px}.contact-form{background:var(--paper);padding:clamp(24px,4vw,62px);display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 15px 45px #00000008}.contact-form h3{font-family:var(--serif);font-size:32px;margin:12px 0}.contact-form>p:not(.form-error){margin-bottom:24px}.contact-form label{font-size:12px;font-weight:700;margin:12px 0 7px}.contact-form label span{color:#bd683f}.contact-form input,.contact-form textarea,.contact-form select{border:1px solid #c6bcb1;background:transparent;width:100%;padding:13px;color:var(--text);border-radius:0;min-height:46px}.contact-form textarea{resize:vertical}.contact-form .button{margin-top:16px}.form-error{min-height:19px;color:#a63232;font-size:12px;margin:6px 0}.reveal{opacity:1;transform:none}.reveal.visible{animation:fadeSlide .8s ease both}@keyframes fadeSlide{from{opacity:.2;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes slowPan{from{transform:scale(1)}to{transform:scale(1.09)}}@keyframes marquee{to{transform:translateX(-33.333%)}}
@media(min-width:801px){.desktop-nav>.nav-link:nth-child(2){order:1}.desktop-nav>.nav-link:nth-child(3){order:4}.desktop-nav>.nav-link:nth-child(4){order:5}}
@media(max-width:1130px){.desktop-nav{gap:15px}.brand-words strong{font-size:16px}.header-inner{width:min(100% - 40px,1440px)}.footer-top{gap:25px}.container{width:min(100% - 65px,1360px)}}
@media(max-width:800px){.container{width:min(100% - 36px,1360px)}.header-inner{width:calc(100% - 30px);min-height:68px}.brand-emblem img{width:38px;height:38px}.brand-words strong{font-size:14px;letter-spacing:.06em}.brand-words small{font-size:7px;letter-spacing:.11em;margin-top:4px}.desktop-nav{display:none}.menu-toggle{display:flex}.header-whatsapp{min-height:42px;padding:10px 13px}.cta-long{display:none}.cta-short{display:inline}.mobile-menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);box-shadow:0 25px 40px #0003;z-index:250;padding:15px 18px 25px;max-height:calc(100vh - 68px);overflow-y:auto}.site-header.nav-open .mobile-menu{display:block}.mobile-link,.mobile-services-toggle,.mobile-service-links a{display:block;width:100%;padding:12px 11px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;font-weight:700;font-size:14px;color:var(--text)}.mobile-services-toggle{display:flex;justify-content:space-between}.mobile-service-links{display:none;padding-left:15px}.mobile-accordion.open .mobile-service-links{display:block}.mobile-service-links a{font-size:13px;font-weight:400;padding:10px}.hero-v1,.split-hero{display:flex;flex-direction:column}.hero-v1{min-height:auto}.hero-left{padding:70px 25px}.hero-left h1{font-size:clamp(3.5rem,10vw,6rem)}.hero-v1 .hero-photo{height:520px}.hero-v2{padding:30px 0 0}.split-hero{gap:25px;min-height:auto}.hero-copy{padding:35px 0}.hero-copy h1{font-size:clamp(3.2rem,9vw,5rem)}.hero-v2 .hero-photo{min-height:490px}.hero-v3{min-height:630px}.hero-v3 h1{font-size:clamp(3.8rem,10vw,6.7rem)}.hero-front{padding:100px 0}.intro-layout{grid-template-columns:1fr;gap:10px}.feature-section{gap:28px}.feature-photo{height:420px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.service-text{padding:16px 0}.service-text h3{font-size:25px}.home-showcase{gap:12px}.showcase-large{height:490px}.footer-top{grid-template-columns:repeat(2,1fr);gap:38px}.footer-identity{grid-column:span 2}.footer-bottom{flex-wrap:wrap}.detail-layout{gap:6%}.contact-grid{gap:7%}}
@media(max-width:560px){.header-inner{gap:7px}.brand{gap:6px}.brand-emblem img{width:35px;height:35px}.brand-words strong{font-size:12px}.brand-words small{font-size:6px}.header-whatsapp{font-size:11px;padding:8px;min-height:40px}.menu-toggle{width:39px;height:40px}.hero-left{padding:60px 20px}.hero-left h1{font-size:clamp(3.05rem,12vw,4.3rem)}.hero-v1 .hero-photo{height:400px}.hero-copy h1{font-size:clamp(2.75rem,11vw,4.3rem)}.hero-v2 .hero-photo{min-height:330px}.hero-v3{min-height:600px}.hero-v3 h1{font-size:clamp(3.3rem,12vw,5.2rem)}.hero-v3 .hero-front p{font-size:15px}.hero-actions{gap:16px}.hero-note{margin-top:36px}.hero-footer span:first-child{display:none}.hero-footer{justify-content:flex-end}.section{padding-block:65px}.section-heading{align-items:start;flex-direction:column;gap:8px}.section-heading h2{font-size:clamp(2.4rem,8vw,3.2rem)}.service-grid{gap:11px}.service-media{aspect-ratio:.9}.service-text h3{font-size:21px}.service-text p{font-size:12px;line-height:1.5}.service-text .micro{font-size:8px}.service-card .subtle-link{font-size:10px}.feature-section{display:flex;flex-direction:column;align-items:stretch;padding-block:50px 75px}.feature-photo{height:360px;width:100%}.feature-copy h2{font-size:42px}.home-showcase{grid-template-columns:1fr}.showcase-large{height:360px}.showcase-stack{grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:11px}.showcase-stack>div:first-child{min-height:190px}.showcase-caption{padding:18px}.showcase-caption h3{font-size:20px}.showcase-caption .text-link{font-size:10px}.cta-inner{flex-direction:column;align-items:flex-start}.cta-inner h2{font-size:40px}.cta-band{padding:65px 0}.inner-hero{min-height:365px}.inner-hero h1{font-size:clamp(2.75rem,10vw,4.5rem)}.inner-hero-content{padding-block:60px}.about-grid,.materials-row,.detail-layout,.contact-grid{grid-template-columns:1fr;gap:35px}.about-photo{height:370px}.detail-image{height:300px}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.related-tile img{height:150px}.related-tile span{font-size:16px}.related-tile:nth-child(3){display:none}.gallery-grid{gap:12px}.gallery-item img{height:240px}.gallery-item:nth-child(3n) img{height:325px}.gallery-item figcaption{font-size:9px;letter-spacing:.04em}.contact-info h2{margin-bottom:20px}.contact-form{padding:25px}.floating-wa{right:12px;bottom:12px;padding:11px;border-radius:50%}.floating-wa span{display:none}.footer-top{gap:25px}.footer-column a,.footer-column p{font-size:12px}.footer-bottom{padding-right:60px}.footer-column h3{margin-bottom:8px}.site-footer{padding-top:55px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}

body{--bg:#f6f5ef;--paper:#fffefa;--text:#252920;--muted:#61675c;--accent:#777c60;--light:#c5c8ad;--dark:#2b3026;--line:#353e2527;--serif:Georgia,'Times New Roman',serif}.site-header{border-bottom:0}.hero-v2{background:#eceee4}.hero-copy h1{font-style:normal}.hero-copy h1 em{font-style:italic}.service-card{background:#f6f5ef;border:1px solid var(--line);padding:12px}.services-section{background:#fffefa}.service-card:nth-child(1){grid-column:span 2;display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center}.service-card:nth-child(1) .service-media{aspect-ratio:1.5}.service-card:nth-child(1) .service-text{padding:20px}.service-card:nth-child(1) h3{font-size:34px}.feature-section{grid-template-columns:1fr 1fr}.feature-photo{height:525px}.cta-band{background:#343a30}.marquee{background:#858b74}.inner-hero-image:after{background:linear-gradient(90deg,#262e24dd,#262e2466)}@media(max-width:560px){.service-card:nth-child(1){grid-column:span 2;grid-template-columns:1fr 1fr}.service-card:nth-child(1) .service-media{aspect-ratio:.85}.service-card:nth-child(1) .service-text{padding:0}.service-card:nth-child(1) h3{font-size:23px}}
/* 2026 client-profile revision: preserve individual design directions */
.client-logo{width:172px;height:71px;object-fit:contain;object-position:left center;max-width:100%;filter:drop-shadow(0 1px 1px #0000000a)}
.site-footer .client-logo{width:194px;height:84px;object-fit:contain}
.header-inner{min-height:90px}
.services-dropdown{width:clamp(258px,25vw,340px);max-height:70vh;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.services-dropdown a{padding:9px 15px;font-size:12px}
.services-section .service-grid{align-items:stretch}
.services-section .service-card:nth-child(n+6){margin-top:0}
.services-section .service-card:nth-child(n+6) img{transition:transform .7s cubic-bezier(.2,.65,.2,1)}
.services-section .service-card:nth-child(n+6):hover img{transform:scale(1.055)}
.service-card:hover{box-shadow:0 20px 48px #00000013}
.material-gallery{background:var(--paper);position:relative;overflow:hidden}
.material-grid{display:grid;grid-template-columns:1.1fr 1fr .85fr;gap:16px}
.material-frame{position:relative;height:400px;display:block;overflow:hidden;background:#8e7a68}
.material-frame:nth-child(2){height:340px;margin-top:60px}
.material-frame:nth-child(3){height:360px;margin-top:18px}
.material-frame img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.material-frame:hover img{transform:scale(1.07)}
.material-frame:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#080605bb);pointer-events:none}
.material-frame span{position:absolute;z-index:2;bottom:18px;left:18px;color:white;font-weight:700;letter-spacing:.04em;font-size:12px}
.profile-statement{background:var(--paper)}
.profile-statement h2{max-width:900px;margin:20px 0}
.profile-statement p{max-width:900px;font-size:16px}
.profile-points{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:30px}
.profile-points span,.profile-points a{border:1px solid var(--line);padding:18px 15px;font-size:12px;font-weight:700;line-height:1.5}
.profile-points a:hover{border-color:var(--accent);color:var(--accent)}
.gallery-item figcaption span:last-child{font-size:9px}
.reveal{transition:opacity .65s ease, transform .65s ease}
@media(max-width:1000px){.client-logo{width:152px;height:67px}.services-dropdown{max-height:65vh}.material-grid{grid-template-columns:repeat(2,1fr)}.material-frame:nth-child(n){height:310px;margin-top:0}.profile-points{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.mobile-service-links{max-height:55vh;overflow:auto;overscroll-behavior:contain}.client-logo{width:130px;height:57px}.header-inner{min-height:71px}.material-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.material-frame:nth-child(n){height:240px}.material-frame:last-child{grid-column:span 2;height:240px}.profile-points{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:430px){.client-logo{width:111px;height:50px}.header-inner{gap:5px}.header-whatsapp{font-size:10px;padding-inline:10px;min-height:42px}.material-frame:nth-child(n){height:190px}.material-frame:last-child{height:190px}.profile-points span,.profile-points a{padding:12px 8px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.material-frame img,.services-section .service-card img{transition:none!important}}

/* The Gallery: floating architectural cream editorial panel over full-bleed image */
.hero-v2{padding:0;background:#eceee4;min-height:660px}
.hero-v2 .split-hero{width:100%;min-height:660px;display:block;position:relative}
.hero-v2 .hero-photo{position:absolute;inset:0;min-height:660px}
.hero-v2 .hero-copy{position:relative;z-index:3;margin:65px 0 65px max(30px,calc((100vw - 1360px)/2));width:min(48%,630px);min-height:540px;padding:42px 46px;background:rgba(247,247,239,.96);box-shadow:0 35px 95px #25292329}
.hero-v2 .hero-index{margin-top:32px}.hero-v2 .image-tag{right:34px;left:auto;z-index:2}
@media(max-width:768px){.hero-v2 .split-hero{min-height:680px}.hero-v2 .hero-photo{min-height:680px}.hero-v2 .hero-copy{margin:50px 18px;width:calc(100% - 36px);min-height:auto;padding:34px 29px;background:#f6f6efea}.hero-v2 .hero-copy h1{font-size:clamp(2.9rem,9vw,4.5rem)}.hero-v2 .image-tag{bottom:10px;right:10px}}

/* Accurate two-part client logo lockup from original PDF, preserves legible original mark and wordmark */
.client-logo-lockup{display:inline-flex;align-items:center;gap:4px;max-width:100%;padding:2px 4px;background:#fffdfa;border-radius:2px}
.client-logo-mark{width:54px;height:52px;object-fit:contain;flex:none}
.client-logo-type{width:180px;height:40px;object-fit:contain;flex:none}
.site-footer .client-logo-mark{width:61px;height:59px}
.site-footer .client-logo-type{width:193px;height:42px}
@media(max-width:1190px){.client-logo-mark{width:47px;height:48px}.client-logo-type{width:152px;height:37px}}
@media(max-width:768px){.client-logo-lockup{gap:1px;padding:0 1px}.client-logo-mark{width:38px;height:40px}.client-logo-type{width:119px;height:29px}.site-footer .client-logo-mark{width:48px;height:48px}.site-footer .client-logo-type{width:151px;height:34px}}
@media(max-width:430px){.client-logo-mark{width:33px;height:36px}.client-logo-type{width:97px;height:27px}}


/* 2026-11-02 user-directed revision: lossless logo display, realistic visible backgrounds, smaller gallery */
.site-header .client-logo-lockup,.site-footer .client-logo-lockup{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;max-width:100%!important;display:inline-flex!important;overflow:visible!important;align-items:center!important;gap:5px!important;white-space:nowrap;min-width:0}
.client-logo-lockup img{display:block!important;object-fit:contain!important;object-position:center!important;max-width:none!important;min-width:0;opacity:1}
.site-header .client-logo-mark{width:58px!important;height:65px!important;flex:0 0 58px}
.site-header .client-logo-type{width:195px!important;height:56px!important;flex:0 1 195px}
.site-footer .client-logo-mark{width:64px!important;height:74px!important;flex:0 0 64px}
.site-footer .client-logo-type{width:222px!important;height:66px!important;flex:0 1 222px}
.brand{overflow:visible!important;flex-shrink:0}
.site-header,.header-inner{overflow:visible!important}
/* Desktop four-column photo journal and mobile two-column: images are fully contained, never cropped */
.gallery-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:start!important;gap:16px!important}
.gallery-item,.gallery-item:nth-child(3n){grid-column:auto!important;margin:0!important;min-width:0!important;overflow:hidden;border-radius:5px;background:#e9e4dc}
.gallery-item img,.gallery-item:nth-child(3n) img{width:100%!important;height:295px!important;max-height:295px!important;object-fit:contain!important;object-position:center!important;transition:transform .45s ease!important;background:#e9e4dc}
.gallery-item:hover img{transform:scale(1.018)!important}
.gallery-item figcaption{padding:10px 12px!important;display:flex;gap:8px;flex-wrap:wrap;justify-content:space-between;background:#ffffff;color:#342a23!important;line-height:1.35;min-height:46px}
.gallery-item figcaption span{color:#342a23!important;font-size:9px!important}
/* Editorial statement on About: real, uncropped client artwork complements the original text layout */
.statement.container{position:relative;isolation:isolate;min-height:520px;padding:90px 0!important;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.statement.container>.eyebrow,.statement.container>h2{position:relative;z-index:2}
.statement.container>h2{max-width:850px;font-size:clamp(2.25rem,5.15vw,6rem)!important;text-shadow:0 1px 2px #fff8}
.statement-image{position:absolute;top:0;bottom:0;right:0;width:53%;display:flex;align-items:center;justify-content:flex-end;z-index:0;pointer-events:none}
.statement-photo{display:block;width:100%;height:auto;max-height:520px;object-fit:contain!important;object-position:right center;opacity:.54;mask-image:linear-gradient(90deg,transparent 0%,#000 42%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 42%)}
/* Featured contact band: real, clean photography next to independent HTML text; no crop or stretch */
.cta-band{position:relative;overflow:hidden;isolation:isolate;min-height:340px;display:flex;align-items:center}
.cta-band .cta-photo{position:absolute;inset:0 0 0 auto;z-index:-1;width:50%;height:100%;object-fit:contain!important;object-position:right center;opacity:.68;mask-image:linear-gradient(90deg,transparent,#000 32%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 32%);pointer-events:none}
.cta-band .cta-inner{position:relative;z-index:1;width:100%}
.cta-band .cta-inner>div{max-width:58%}
.cta-band .cta-inner .button{position:relative;z-index:2;box-shadow:0 4px 16px #0002}
/* Footer contrast deliberately changes to requested white in V1/V2/V3; V3 header is also white */
.site-footer{background:#fff!important;color:#29241f!important;border-top:1px solid #e3dcd4}
.site-footer p,.site-footer a,.site-footer .footer-column h3,.site-footer .footer-bottom,.site-footer .footer-bottom span{color:#40372f!important}
.site-footer .footer-column a:hover,.site-footer .footer-bottom a:hover{color:#a87628!important}
.site-footer .button.button-primary{color:#fff!important;background:#2b251e!important}
.site-footer .button.button-primary:hover{background:#9b6e2f!important}
.site-footer .footer-bottom{border-color:#ddd5ca!important}
.social-display{display:flex;align-items:center;gap:9px;margin:0 0 25px;flex-wrap:wrap}
.social-icon{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;background:#f3eee8;border:1px solid #d8cdc1;border-radius:50%;color:#9a682b!important;pointer-events:none}
.social-icon svg{width:19px;height:19px;display:block}
/* Distinct motion for each version's REAL hero photography; no extra controls */
.hero-v1 .hero-photo>img{animation:msHeroWander 21s ease-in-out infinite alternate!important;will-change:transform}
.hero-v2 .hero-photo>img{animation:msHeroWander 27s ease-in-out infinite alternate-reverse!important;will-change:transform}
.hero-v3 .hero-bg>img{animation:msHeroWander 23s ease-in-out infinite alternate!important;will-change:transform}
@keyframes msHeroWander{0%{transform:scale(1.006) translate3d(0,0,0)}100%{transform:scale(1.035) translate3d(-.35%,.2%,0)}}
@media(max-width:1120px){.site-header .client-logo-mark{width:46px!important;height:54px!important;flex-basis:46px}.site-header .client-logo-type{width:155px!important;height:44px!important;flex-basis:155px}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:768px){
.site-header .client-logo-mark{width:34px!important;height:42px!important;flex-basis:34px}.site-header .client-logo-type{width:103px!important;height:35px!important;flex-basis:103px}
.site-footer .client-logo-mark{width:44px!important;height:48px!important;flex-basis:44px}.site-footer .client-logo-type{width:150px!important;height:44px!important;flex-basis:150px}
.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.gallery-item img,.gallery-item:nth-child(3n) img{height:226px!important;max-height:226px!important}
.gallery-item figcaption{min-height:45px;padding:8px!important}.gallery-item figcaption span{font-size:8px!important}
.statement.container{min-height:0;display:flex;padding:55px 0 35px!important;gap:13px}
.statement.container>h2{max-width:100%;font-size:clamp(2.15rem,6.5vw,3.4rem)!important;margin-bottom:0}
.statement-image{position:relative;inset:auto;order:3;width:100%;max-height:265px;display:block}
.statement-photo{opacity:1;max-height:265px;object-fit:contain!important;mask-image:none;-webkit-mask-image:none;width:100%}
.cta-band{min-height:0;display:flex;flex-direction:column;align-items:stretch;padding:58px 0 0!important}
.cta-band .cta-photo{position:relative;order:2;inset:auto;width:100%;height:auto;max-height:270px;opacity:1;mask-image:none;-webkit-mask-image:none;object-fit:contain!important;object-position:center}
.cta-band .cta-inner{order:1;display:flex;flex-direction:column;align-items:flex-start}
.cta-band .cta-inner>div{max-width:100%}
}
@media(max-width:430px){.site-header .client-logo-mark{width:29px!important;height:37px!important;flex-basis:29px}.site-header .client-logo-type{width:91px!important;height:30px!important;flex-basis:91px}.gallery-item img,.gallery-item:nth-child(3n) img{height:205px!important;max-height:205px!important}.statement.container>h2{font-size:clamp(2.1rem,8.7vw,3.2rem)!important}}
@media(prefers-reduced-motion:reduce){.hero-v1 .hero-photo>img,.hero-v2 .hero-photo>img,.hero-v3 .hero-bg>img{animation:none!important;will-change:auto}.gallery-item img{transition:none!important}}

/* Final photo layering correction: visible without cropping or distorting */
.cta-band .cta-photo{z-index:0!important}
.cta-band .cta-inner{z-index:1!important}
@media(max-width:768px){.cta-band .cta-photo{z-index:0!important}}


/* November 2026 — targeted design polish, preserving original individual variant identities */
.section{padding-block:clamp(46px,5.5vw,82px)}
.section-heading{margin-bottom:26px}
.intro-layout{gap:clamp(14px,3vw,30px)}
.section-intro{padding-block:clamp(48px,5vw,75px)}
.services-section .service-grid{gap:clamp(12px,1.6vw,22px)}
.service-text{padding:17px 8px 15px}
.service-text h3{margin:8px 0}
.feature-section{padding-block:clamp(42px,4.5vw,66px) clamp(56px,5.5vw,88px);gap:clamp(22px,5vw,82px)}
.feature-photo{height:clamp(350px,36vw,480px)}
.home-showcase .showcase-large{height:clamp(340px,40vw,490px)}
.work-section,.material-gallery{padding-block:clamp(46px,5vw,79px)}
.material-frame:nth-child(2){margin-top:30px}
.material-frame:nth-child(3){margin-top:10px}
.profile-statement{padding-block:clamp(40px,5vw,70px)}
.statement.container{min-height:420px;padding:64px 0!important}
.inner-hero{min-height:340px}
.inner-hero-content{padding-block:clamp(46px,5vw,72px)}
.cta-band{min-height:285px;padding:65px 0}
.footer-top{gap:clamp(18px,2.5vw,36px);padding-bottom:40px}
.site-footer{padding-top:50px!important}
.hero-v1 .hero-note{margin-top:30px}
.hero-v1,.hero-v1 .hero-left{min-height:610px}
.hero-v2{padding-block:50px}
.hero-v2 .split-hero{min-height:560px}
.hero-v2 .hero-photo{min-height:530px}
.hero-v3{min-height:640px}
/* Automatic hero photo transitions: four images, unobtrusive, no player controls. */
.hero-photo .hero-slides,.hero-bg .hero-slides{position:absolute!important;inset:0;overflow:hidden;z-index:0}
.hero-slides .hero-slide{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:cover;object-position:center center;opacity:0;visibility:hidden;transform:scale(1.045);transition:opacity 1.5s ease-in-out,transform 6.8s ease-out,visibility 1.5s ease!important;animation:none!important;display:block!important;will-change:transform,opacity}
.hero-slides .hero-slide.is-active{opacity:1;visibility:visible;transform:scale(1)}
.hero-v1 .hero-photo .hero-slides img{object-position:center 53%}
.hero-v3 .hero-bg .hero-slides img{object-position:center 48%}
.hero-v3 .hero-bg:after{z-index:1;pointer-events:none}
.hero-v1 .hero-photo:after{z-index:1;pointer-events:none}
.hero-photo .image-tag,.hero-photo .image-corner{z-index:2}
/* Reduce staggered voids while retaining V1/V3 editorial treatment */
.service-card:nth-child(2){margin-top:15px}
.service-card:nth-child(5){margin-top:10px}
@media(max-width:1000px){
 .section{padding-block:58px}
 .feature-section{padding-block:40px 63px}
 .hero-v1,.hero-v1 .hero-left{min-height:570px}
 .hero-v2 .hero-photo{min-height:490px}
 .hero-v3{min-height:560px}
 .statement.container{min-height:350px;padding:54px 0!important}
}
@media(max-width:768px){
 .section{padding-block:45px}
 .section-intro{padding-block:42px}
 .feature-section{padding-block:38px 52px}
 .feature-photo{height:360px}
 .home-showcase .showcase-large{height:310px}
 .hero-v1,.hero-v1 .hero-left{min-height:510px}
 .hero-v1 .hero-left{padding-top:66px;padding-bottom:56px}
 .hero-v2{padding-block:26px}
 .hero-v2 .hero-photo{min-height:380px}
 .hero-v3{min-height:540px}
 .hero-v3 .hero-front{padding-block:78px 92px}
 .statement.container{min-height:0;padding:45px 0 26px!important}
 .cta-band{padding:45px 0 0!important}
 .site-footer{padding-top:42px!important}
 .service-card:nth-child(n){margin-top:0}
}
@media(max-width:430px){
 .section{padding-block:36px}
 .section-heading{margin-bottom:17px}
 .feature-section{padding-block:34px 44px}
 .feature-photo{height:285px}
 .showcase-stack{gap:12px}
 .hero-v1 .hero-left{padding-top:50px;padding-bottom:44px}
 .hero-v1,.hero-v1 .hero-left{min-height:495px}
 .hero-v3{min-height:510px}
 .hero-v2 .hero-photo{min-height:310px}
 .hero-v2 .hero-copy{padding-block:26px}
 .inner-hero{min-height:300px}
}
@media(prefers-reduced-motion:reduce){
 .hero-slides .hero-slide{transition:none!important;transform:none!important;animation:none!important}
 .hero-slides .hero-slide:not(:first-child){display:none!important}
}


/* 2026-11-02: remove the awkward void beside the homepage gallery/photo collage.
   Its two column boxes have EXACTLY the same grid height; no image pushes the sibling down. */
.home-showcase{height:clamp(370px,39vw,510px)!important;min-height:0!important;
 grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);align-items:stretch!important;gap:clamp(12px,1.6vw,20px)!important}
.home-showcase>.showcase-large{height:100%!important;min-height:0!important;align-self:stretch!important}
.home-showcase>.showcase-stack{display:grid!important;min-height:0!important;height:100%!important;
 grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,.8fr)!important;
 align-content:stretch;gap:clamp(12px,1.6vw,18px)!important}
.home-showcase>.showcase-stack>div:first-child{height:100%!important;min-height:0!important;overflow:hidden}
.home-showcase .showcase-large img,.home-showcase .showcase-stack>div:first-child img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}
.home-showcase .showcase-caption{min-height:0!important;overflow:hidden;justify-content:center;padding:clamp(18px,2.4vw,34px)!important}
.home-showcase .showcase-caption h3{font-size:clamp(18px,1.9vw,27px);line-height:1.18}
/* Across all content pages: tighter section rhythm without deleting content or changing structure. */
.section{padding-block:clamp(36px,4.3vw,65px)!important}
.section-intro{padding-block:clamp(39px,4.5vw,64px)!important}
.section-heading{margin-bottom:clamp(16px,2.1vw,27px)!important}
.feature-section{padding-block:clamp(40px,4.4vw,66px)!important}
.work-section,.material-gallery{padding-block:clamp(35px,4.6vw,68px)!important}
.statement.container{min-height:0!important;padding-block:clamp(37px,4.5vw,64px)!important}
.profile-statement{padding-block:clamp(35px,4.4vw,65px)!important}
.inner-hero{min-height:300px!important}
.inner-hero-content{padding-block:clamp(42px,4vw,62px)!important}
.detail-layout{gap:clamp(28px,4.5vw,65px)!important}
.footer-top{padding-bottom:clamp(25px,3vw,40px)!important}
.site-footer{padding-top:clamp(35px,4vw,55px)!important}
/* Respect available original resolution: gallery items remain contained, not stretched. */
.gallery-item img,.gallery-item:nth-child(3n) img{object-fit:contain!important;image-rendering:auto!important}
@media(max-width:1000px){
 .home-showcase{height:clamp(320px,44vw,450px)!important}
}
@media(max-width:768px){
 .home-showcase{height:auto!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
 .home-showcase>.showcase-large{height:clamp(260px,65vw,385px)!important}
 .home-showcase>.showcase-stack{height:clamp(185px,40vw,255px)!important;
   grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important}
 .home-showcase .showcase-caption{padding:clamp(12px,2.8vw,20px)!important}
 .home-showcase .showcase-caption h3{font-size:clamp(15px,3vw,21px)!important}
 .section{padding-block:clamp(34px,5vw,48px)!important}
 .statement.container{padding-block:clamp(32px,5vw,46px)!important}
 .inner-hero{min-height:clamp(240px,51vw,310px)!important}
 .inner-hero-content{padding-block:35px!important}
}
@media(max-width:430px){
 .home-showcase>.showcase-large{height:275px!important}
 .home-showcase>.showcase-stack{height:180px!important;gap:10px!important}
 .home-showcase .showcase-caption h3{font-size:15px!important;margin:7px 0!important}
 .home-showcase .showcase-caption span{font-size:9px!important}
 .home-showcase .showcase-caption .text-link{font-size:10px!important}
 .section{padding-block:34px!important}
}

/* Keep floating contact off footer copy on all screens; footer itself has WhatsApp CTA. */
.floating-wa.is-hidden-over-footer{opacity:0!important;visibility:hidden!important;transform:translateY(120%)!important;pointer-events:none!important;transition:opacity .25s ease,transform .25s ease,visibility .25s ease!important}
