:root{--bg:#f7f5f0;--surface:#fff;--text:#1c1c1c;--muted:#66615a;--accent:#b08d57;--line:#d9d4ca;--tonal:#eeebe4;--button:#262b24;--button-text:#fff;--serif:Georgia, "Times New Roman", serif;--sans:Arial, Helvetica, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#151515;--surface:#202020;--text:#f5f2eb;--muted:#b8b2a8;--accent:#c5a46d;--line:#393831;--tonal:#202020;--button:#c5a46d;--button-text:#151515;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:100px}body{background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.75}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}p{color:var(--muted);margin:0 0 1.5rem}h1,h2,h3{font-family:var(--serif);letter-spacing:-.035em;margin:0 0 1.4rem;font-weight:400;line-height:1.12}h1{white-space:pre-line;font-size:clamp(3rem,5.5vw,5.8rem)}h2{white-space:pre-line;font-size:clamp(2.25rem,3.4vw,3.7rem)}h3{letter-spacing:-.025em;font-size:1.65rem}img,video{max-width:100%;display:block}figure{margin:0}ul{padding-left:1.2rem}svg{flex-shrink:0;width:20px;height:20px}::selection{background:var(--accent);color:#151515}:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.container{width:min(1280px,100% - 112px);margin-inline:auto}.section{padding-block:100px}.compact{padding-top:20px}.tonal{background:var(--tonal)}.eyebrow{font:10px/1.6 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:25px;font-weight:600}.section-heading{max-width:650px;margin-bottom:45px}.section-heading>p:last-child:not(.eyebrow){max-width:510px}.section-top{justify-content:space-between;align-items:center;gap:30px;display:flex}.section-top>.button{flex-shrink:0}.actions{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.button{text-align:center;border:1px solid #0000;border-radius:0;justify-content:center;align-items:center;gap:24px;min-height:48px;padding:12px 22px;font-size:12px;font-weight:500;line-height:1.5;transition:background .2s,color .2s;display:inline-flex}.button--primary{background:var(--button);color:var(--button-text)}.button--primary:hover{background:var(--text);color:var(--bg)}.button--outline,.button--secondary{border-color:var(--line);color:var(--text);background:0 0}.button--outline:hover,.button--secondary:hover{border-color:var(--accent);background:var(--tonal)}.button--text{color:var(--text);border-bottom-color:var(--accent);background:0 0;min-height:40px;padding-inline:0}.button:disabled{opacity:.6;cursor:wait}.icon-button{border:1px solid var(--line);width:44px;height:44px;color:var(--text);background:0 0;justify-content:center;align-items:center;padding:10px;display:inline-flex}.icon-button:hover{border-color:var(--accent)}.contact-action{display:inline-flex;position:relative}.contact-notice{z-index:100;background:var(--surface);border:1px solid var(--line);width:220px;max-width:80vw;color:var(--text);padding:14px;font-size:12px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 25px #0001}.contact-notice button{float:right;color:inherit;background:0 0;border:0}.social-links{gap:10px;display:flex}.skip-link{background:var(--text);color:var(--bg);z-index:500;padding:12px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:12px}
.header{background:var(--bg);border-bottom:1px solid var(--line);z-index:50;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:28px;max-width:1440px;margin:auto;padding:20px 56px;display:flex}.logo{flex-direction:column;flex-shrink:0;line-height:1;display:inline-flex}.logo-sub{letter-spacing:.25em;margin-top:7px;font-size:7px}.logo img{object-fit:contain;width:150px;height:48px}.logo-dark,[data-theme=dark] .logo-light{display:none}[data-theme=dark] .logo-dark{display:block}.desktop-nav{align-items:center;gap:30px;font-size:12px;display:flex}.desktop-nav a[aria-current=page]{border-bottom:1px solid var(--accent);padding-bottom:6px}.nav-service{align-items:center;display:flex;position:relative}.nav-service>button{color:var(--text);background:0 0;border:0;width:30px;height:44px}.dropdown{background:var(--surface);border:1px solid var(--line);width:270px;padding:16px 20px;display:grid;position:absolute;top:100%;left:-20px;box-shadow:0 15px 30px #0001}.dropdown a{padding:8px 0}.dropdown a:hover{color:var(--accent)}.header-actions{align-items:center;gap:12px;display:flex}.header-actions>.contact-action>.button{min-height:42px;padding:10px 22px}.header-actions>.icon-button{border:0}.menu-button{display:none}.mobile-drawer{background:var(--bg);width:min(440px,100%);max-width:100%;height:100dvh;max-height:100dvh;color:var(--text);border:0;margin:0;padding:28px;position:fixed;inset:0 0 0 auto}.mobile-drawer::backdrop{background:#0008}.drawer-head{justify-content:space-between;align-items:center;padding-bottom:32px;display:flex}.mobile-drawer nav>a,.mobile-drawer summary{border-bottom:1px solid var(--line);font-family:var(--serif);padding:14px 0;font-size:28px;display:block}.mobile-drawer details>a{padding:9px 15px;font-size:14px;display:block}.drawer-bottom{gap:30px;margin-top:35px;display:grid}.hero{grid-template-columns:1fr 1.1fr;align-items:center;gap:50px;padding-top:58px;padding-bottom:70px;display:grid}.hero-copy{padding:25px 0 0}.hero-copy h1{max-width:600px}.hero-copy>p:not(.eyebrow){max-width:420px;font-size:14px}.hero-copy .actions{margin-top:30px}.hero-foot{border-top:1px solid var(--line);letter-spacing:.1em;color:var(--muted);justify-content:space-between;gap:15px;margin-top:70px;padding-top:20px;font-size:9px;display:flex}.hero-visual{padding-right:22px;position:relative}.hero-visual .media img{object-fit:cover;object-position:55%;height:620px}.vertical-note{writing-mode:vertical-rl;letter-spacing:.06em;color:var(--muted);font-size:10px;position:absolute;top:0;right:-12px}.media{background:var(--tonal);position:relative;overflow:hidden}.media img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto}.media figcaption{color:#fff;letter-spacing:.06em;background:#151515c9;padding:4px 8px;font-size:9px;position:absolute;bottom:14px;left:14px}.intro,.split{grid-template-columns:1fr 1fr;align-items:center;gap:90px;display:grid}.intro{border-top:1px solid var(--line)}.intro>.section-heading{margin-bottom:0}.intro>div>p{max-width:510px}.split .media img{aspect-ratio:1/1.05}.split .section-heading{margin-bottom:26px}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 28px;display:grid}.service-card .media img{aspect-ratio:4/3;transition:transform .5s}.service-card:hover img,.project-card:hover img{transform:scale(1.025)}.card-heading{justify-content:space-between;align-items:center;gap:12px;padding-top:22px;display:flex}.card-heading h3{margin-bottom:0;font-size:24px}.card-heading svg{width:18px}.service-card p{margin-top:10px;margin-bottom:0;font-size:13px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:50px 35px;display:grid}.project-image{position:relative;overflow:hidden}.project-image img{aspect-ratio:1.35;transition:transform .5s}.project-card .eyebrow{margin:25px 0 8px;font-size:9px}.project-card h3{margin-bottom:10px;font-size:30px}.project-card>p:last-child{margin:0;font-size:13px}.reference-tag{color:#333;letter-spacing:.06em;background:#f7f5f0e8;padding:4px 10px;font-size:9px;position:absolute;top:15px;left:15px}.project-arrow{background:var(--bg);place-items:center;width:40px;height:40px;display:grid;position:absolute;bottom:18px;right:18px}.values-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;display:grid}.values-grid article{border-top:1px solid var(--line);padding-top:26px}.values-grid h3{font-size:25px}.values-grid p{max-width:310px;font-size:13px}.values-grid h2{font-size:32px}.values-grid .eyebrow{color:var(--accent);margin-bottom:18px}.process-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:35px;display:grid}.number{font-family:var(--serif);color:var(--accent);margin-bottom:30px;font-size:40px;display:block}.process-grid article{border-top:1px solid var(--line);padding-top:22px}.process-grid h3{font-size:24px}.process-grid p{font-size:13px}.detail-list{border-top:1px solid var(--line);margin-block:30px;padding:0;list-style:none}.detail-list li{border-bottom:1px solid var(--line);padding:10px 0;font-size:13px}.detail-list li:before{content:"↗";color:var(--accent);margin-right:15px}.testimonial{text-align:center;border-top:1px solid var(--line);max-width:780px}.cta{background:var(--tonal);border-block:1px solid var(--line);padding:85px 0}.cta h2{max-width:850px;font-size:clamp(2.7rem,4.6vw,4.6rem)}.cta p:not(.eyebrow){max-width:570px}.cta .actions{margin-top:30px}.footer{padding:70px 0 0}.footer-grid{grid-template-columns:1.4fr .7fr 1fr 1fr;gap:50px;display:grid}.footer h2{font:12px var(--sans);letter-spacing:.04em;margin-bottom:25px}.footer p,.footer li{font-size:12px}.footer ul{margin:0;padding:0;list-style:none}.footer li{margin-bottom:10px}.footer-brand>p{max-width:250px;margin-top:25px}.footer a:hover{color:var(--accent)}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:20px;margin-top:65px;padding-block:25px;font-size:10px;display:flex}.page-intro{max-width:1280px;padding-block:80px 65px}.page-intro h1{max-width:950px}.page-intro>p:not(.eyebrow){max-width:640px}.page-intro>.button{margin-bottom:40px}.team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;display:grid}.portrait-placeholder{background:var(--tonal);border:1px solid var(--line);height:320px;color:var(--muted);place-items:center;font-size:12px;display:grid}.team-grid .eyebrow{margin:25px 0 10px}.team-grid h3{font-size:24px}.team-grid article>p:last-child{font-size:13px}.portfolio-controls{border-top:1px solid var(--line);padding-top:30px}.search-label{max-width:450px;font-size:12px;display:block}.search-label input{width:100%;margin-top:8px;display:block}.filters{flex-wrap:wrap;gap:10px;margin:30px 0 15px;display:flex}.filters button{border:1px solid var(--line);color:var(--muted);background:0 0;min-height:44px;padding:10px 16px;font-size:12px}.filters button[aria-pressed=true]{background:var(--button);color:var(--button-text);border-color:var(--button)}.result-count{margin-bottom:25px;font-size:11px}.empty-state{text-align:center;padding:75px 0}.project-hero img{aspect-ratio:2}.reference-label{color:var(--accent);font-size:12px}.video-empty{border:1px solid var(--line);text-align:center;margin-top:35px;padding:45px}.video-empty span{color:var(--accent);font-size:35px}.video-empty p{margin:0;font-size:13px}video{background:#151515;width:100%;height:auto;margin-top:35px}.contact-grid{grid-template-columns:.8fr 1.2fr;gap:100px;display:grid}.contact-grid h2{font-size:35px}.contact-details{margin-top:35px}.contact-details>div{border-top:1px solid var(--line);padding:20px 0}.contact-details .eyebrow{margin:0}.contact-details p{margin:8px 0;font-size:13px}.contact-grid .social-links{margin-top:20px}.enquiry-form{margin-top:35px}.enquiry-form label{margin-bottom:24px;font-size:12px;display:block}.form-grid{grid-template-columns:1fr 1fr;gap:0 22px;display:grid}input,select,textarea{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--text);border-radius:0;min-height:48px;margin-top:8px;padding:12px 14px;display:block}textarea{resize:vertical}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:#b65a40}.error{color:#a33d28;margin-top:6px;font-size:12px;display:block}[data-theme=dark] .error{color:#ffa58f}.form-note,.form-status{font-size:12px}.form-status{margin-top:20px}.map-placeholder{text-align:center;border:1px solid var(--line);background:var(--tonal);flex-direction:column;justify-content:center;align-items:center;min-height:280px;padding:50px 25px;display:flex}.map-placeholder h2{max-width:550px;font-size:28px}
@media (min-width:1600px){.hero{padding-top:75px;padding-bottom:90px}.hero-visual .media img{height:690px}}@media (max-width:1100px){.container{width:calc(100% - 64px)}.header-inner{gap:20px;padding:18px 32px}.desktop-nav{gap:20px}.hero{gap:28px}.hero-visual .media img{height:550px}.hero-foot{flex-direction:column;gap:6px;margin-top:40px}.intro,.split{gap:50px}.contact-grid{gap:55px}.footer-grid{gap:30px}.process-grid{gap:24px}.section{padding-block:75px}.compact{padding-top:20px}}@media (max-width:900px){.desktop-nav{display:none}.menu-button{display:inline-flex}.hero h1{font-size:58px}.hero-visual .media img{height:560px}.hero .actions{gap:14px}.hero .button{padding-inline:16px}.values-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1.2fr 1fr}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-grid{gap:35px 20px}.card-heading h3{font-size:22px}.team-grid{gap:20px}.portrait-placeholder{height:240px}}@media (max-width:700px){.container{width:calc(100% - 40px)}.header-inner{gap:15px;padding:15px 20px}.header-actions{gap:5px}.header-actions>.contact-action{display:none}.hero{grid-template-columns:1fr;gap:35px;padding-top:40px;padding-bottom:45px}.hero-copy{padding:0}.hero h1{max-width:520px;font-size:clamp(44px,9.5vw,65px)}.hero-copy>p:not(.eyebrow){max-width:480px}.hero-visual{padding-right:18px}.hero-visual .media img{aspect-ratio:1.2;height:auto}.hero-foot{flex-direction:row;margin-top:30px;font-size:8px}.vertical-note{font-size:8px;right:-7px}.section{padding-block:60px}.compact{padding-top:15px}.intro,.split,.contact-grid{grid-template-columns:1fr;gap:30px}.intro{padding-top:45px}.section-heading{margin-bottom:30px}.section-top{margin-bottom:35px;display:block}.section-top .section-heading{margin-bottom:20px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 18px}.card-heading h3{font-size:22px}.card-heading svg{display:none}.service-card p{font-size:12px}.project-grid{gap:35px 18px}.project-card h3{font-size:24px}.project-card .eyebrow{margin-top:16px;font-size:8px}.project-card>p:last-child{font-size:12px}.reference-tag{padding:3px 6px;font-size:8px;top:8px;left:8px}.project-arrow{width:32px;height:32px;bottom:10px;right:10px}.values-grid{gap:25px}.values-grid h3{font-size:23px}.process-grid{gap:30px 25px}.process-grid h3{font-size:23px}.number{margin-bottom:20px;font-size:35px}.split .media img{aspect-ratio:1.25}.cta{padding:55px 0}.cta .actions{gap:12px}.footer{padding-top:50px}.footer-grid{gap:40px 25px}.footer-bottom{flex-wrap:wrap;margin-top:40px;font-size:9px}.footer-bottom>span:nth-child(2){display:none}.page-intro{padding-block:50px 40px}.page-intro h1{font-size:clamp(42px,9vw,62px)}.team-grid{grid-template-columns:1fr}.portrait-placeholder{height:260px}.team-grid article{max-width:420px}.project-hero img{aspect-ratio:1.25}.form-grid{gap:0 15px}.contact-grid{gap:45px}.filters{gap:8px}.filters button{padding:9px 12px;font-size:11px}.contact-notice{left:0;right:auto}}@media (max-width:390px){.hero-foot{flex-direction:column}.project-grid{grid-template-columns:1fr}.service-grid{gap:25px 14px}.card-heading h3{font-size:20px}.values-grid,.process-grid,.form-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand,.footer-grid>div:last-child{grid-column:1/-1}.button{gap:12px;padding-inline:16px}.hero-copy .actions{gap:20px}.hero h1{font-size:43px}.eyebrow{font-size:9px}.header-inner{padding-inline:20px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
.logo-desktop{flex-direction:column;display:flex}.logo-main{letter-spacing:-.07em;font:40px/1 Georgia,serif}.logo-dot{color:var(--accent)}.logo-mobile{display:none}.header-actions .button{min-height:42px;padding:10px 22px}.portrait-placeholder,.portrait{aspect-ratio:1;border-radius:50%;width:100%;max-width:300px;height:auto;margin-inline:auto}.portrait img{aspect-ratio:1;object-fit:cover}.team-grid article{text-align:center}.testimonial-card{border-top:1px solid var(--line);padding:30px 0}.testimonial-card blockquote{font:26px/1.5 var(--serif);margin:0 0 20px}.testimonial-card figcaption{font-size:12px}.testimonial-card figcaption span{color:var(--muted);display:block}body,.header,.tonal,.cta,input,select,textarea{transition:background-color .2s,color .2s,border-color .2s}@media (max-width:700px){.logo-main{font-size:32px}.has-mobile-logo .logo-desktop{display:none}.has-mobile-logo .logo-mobile{width:100px;height:38px;display:block}.process-grid{grid-template-columns:1fr}.process-grid article{border-top:0;border-left:1px solid var(--line);padding:0 0 0 24px}.process-grid p{max-width:420px}.header-actions{gap:0}.header-inner{gap:8px}.header-actions .icon-button{width:40px}.team-grid article{width:100%;margin-inline:auto}}.number,.reference-label,.values-grid .eyebrow{color:var(--muted)}
.header{border:1px solid var(--line);background:var(--surface);border-radius:4px;width:min(1360px,100% - 40px);margin:14px auto 0;top:14px;box-shadow:0 8px 32px #00000008}.header-inner{gap:24px;padding:15px 28px}.desktop-nav{letter-spacing:.015em;gap:25px;font-size:13px}.desktop-nav>a{padding-block:12px}.desktop-nav a[aria-current=page]{padding-bottom:12px}.header-actions{gap:6px}.header-actions .icon-button{border:0;border-radius:50%;width:42px;height:42px}.header-actions>.contact-action{display:inline-flex}.header-actions>.contact-action .icon-button{background:var(--tonal)}.logo-main{letter-spacing:-.06em;font-size:38px}.logo-sub{letter-spacing:.22em;font-size:8px}.service-trigger{color:var(--text);white-space:nowrap;background:0 0;border:0;align-items:center;gap:7px;padding:12px 0;font-size:13px;display:flex}.service-trigger svg{width:14px;height:14px;transition:transform .2s}.service-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.service-trigger.is-active{box-shadow:0 1px var(--accent)}.nav-service{position:relative}.nav-service>.service-trigger{width:auto;height:44px}.dropdown{border-top:2px solid var(--accent);width:560px;max-height:75vh;padding:20px 24px;top:100%;left:50%;overflow:auto;transform:translate(-40%);box-shadow:0 18px 50px #00000012}.dropdown[hidden]{display:none}.dropdown-all{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:10px;font-size:12px;display:flex;padding:4px 0 14px!important}.dropdown-grid{grid-template-columns:1fr 1fr;gap:3px 18px;display:grid}.dropdown-grid a{align-items:center;gap:10px;min-height:44px;padding:11px 0;font-size:12px;display:flex}.dropdown-grid svg{width:16px;height:16px;color:var(--muted)}.social-links{flex-wrap:wrap;gap:7px}.social-links .icon-button{border-radius:50%;width:38px;height:38px}.hero{padding-top:65px}.hero h1{letter-spacing:-.045em;font-size:clamp(3rem,5.1vw,5.4rem);line-height:1.08}.hero-copy>p:not(.eyebrow){font-size:15px;line-height:1.9}.feature-icon{width:42px;height:42px;color:var(--muted);border:1px solid var(--line);justify-content:center;align-items:center;margin-bottom:24px;display:inline-flex}.process-icon{color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:25px;display:flex}.process-icon span{font:30px var(--serif)}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;display:grid}.gallery-item{min-width:0}.gallery-item .media img{aspect-ratio:4/5;transition:transform .7s}.gallery-item:hover img{transform:scale(1.025)}.gallery-item>figcaption{color:var(--muted);align-items:center;gap:10px;margin-top:16px;font-size:12px;display:flex}.gallery-item>figcaption svg{width:16px;height:16px}.gallery-note{max-width:650px;font-size:12px}.faq-list{border-top:1px solid var(--line);max-width:900px;margin:55px auto 0}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-size:15px;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary svg{width:16px}.faq-list details[open] summary svg{transform:rotate(180deg)}.faq-list p{max-width:740px;padding-right:25px;font-size:14px}.reveal{opacity:0;transition:opacity .28s,transform .28s;transform:translateY(8px)}.reveal.is-visible{opacity:1;transform:none}.button:active,.icon-button:active{transform:translateY(1px)}@media (max-width:1150px){.desktop-nav{gap:17px}.header-inner{gap:18px;padding:13px 22px}.desktop-nav,.service-trigger{font-size:12px}}@media (max-width:1000px){.desktop-nav{display:none}.menu-button{display:inline-flex}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid>.gallery-item:last-child:nth-child(odd){grid-column:1/-1}.gallery-grid>.gallery-item:last-child:nth-child(odd) .media img{aspect-ratio:1.7}}@media (max-width:700px){.header{width:calc(100% - 24px);margin-top:8px;top:8px}.header-inner{gap:12px;padding:12px 14px}.logo-main{font-size:31px}.logo-sub{font-size:6.5px}.header-actions{gap:0}.header-actions .icon-button{width:38px;height:40px}.hero{padding-top:38px}.hero h1{font-size:clamp(42px,9.8vw,62px)}.gallery-grid{grid-template-columns:1fr;gap:30px}.gallery-grid>.gallery-item:last-child:nth-child(odd){grid-column:auto}.gallery-grid>.gallery-item:last-child:nth-child(odd) .media img,.gallery-item .media img{aspect-ratio:1.2}.faq-list summary{font-size:14px}.social-links .icon-button{width:40px;height:40px}.header-actions>.contact-action{display:inline-flex}.hero-copy .actions>.contact-action .icon-button,.cta .actions>.contact-action .icon-button{width:48px;height:48px}.contact-notice{left:auto;right:0}}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.gallery-item img{transition:none}}.gallery-category{border-top:1px solid var(--line);padding-block:30px 45px}.gallery-category>h3{font-size:32px}.category-films{margin-top:35px}.category-films h4{align-items:center;gap:10px;font-size:14px;font-weight:500;display:flex}.gallery-category .gallery-grid>.gallery-item:last-child:nth-child(odd){grid-column:auto}.gallery-category .gallery-item .media img{aspect-ratio:4/3}.social-toggle{flex-shrink:0;position:relative}.social-toggle-trigger[aria-expanded=true]{background:var(--tonal)}.social-panel{background:var(--surface);border:1px solid var(--surface-edge);width:272px;padding:20px;position:absolute;top:calc(100% + 14px);right:0;box-shadow:0 12px 30px #00000012}.social-panel .eyebrow{margin-bottom:14px}.social-panel-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.social-panel-links .contact-action{min-width:0}.button--social{background:var(--bg);width:100%;min-height:48px;color:var(--text);border-color:var(--line);justify-content:flex-start;gap:9px;padding:10px;font-size:12px}.button--social:hover{border-color:var(--accent)}.social-panel .contact-notice{width:220px;left:auto;right:0}.header .social-toggle-trigger{background:var(--tonal)}@media (max-width:700px){.header-inner{gap:8px;padding:10px}.header-actions{gap:0}.header-actions .icon-button{width:44px;height:44px}.social-panel{top:calc(84px + env(safe-area-inset-top));width:min(288px,100vw - 40px);padding:18px;position:fixed;right:20px}.social-panel .contact-notice{width:auto;position:fixed;left:16px;right:16px}.header .logo-sub{white-space:nowrap}.header .logo-main{font-size:29px}.social-panel-links{gap:10px}}.header-actions .social-panel .button--social{white-space:nowrap;overflow-wrap:normal;gap:7px;padding:10px 8px;font-size:12px}.social-panel .button--social svg{width:18px;height:18px}
:root{--surface-edge:color-mix(in srgb, var(--accent) 24%, var(--line));--hover-shadow:0 10px 28px #00000008}main,section,article,aside,.header-inner>*,.split>*,.intro>*,.contact-grid>*,.footer-grid>*,.form-grid>*{min-width:0}h1,h2,h3,h4,h5,p,a,button,label{overflow-wrap:anywhere}input,select,textarea{min-width:0;max-width:100%}.media{border:1px solid var(--surface-edge)}.service-card,.project-card{outline-offset:6px;display:block}.card-heading{border-top:1px solid #0000;transition:border-color .25s}.service-card:focus-visible .card-heading,.service-card:hover .card-heading{border-color:var(--accent)}.gallery-item{border:1px solid var(--surface-edge);background:var(--surface);padding:8px 8px 16px;transition:border-color .3s,box-shadow .3s}.gallery-item>figcaption{padding-inline:6px}.gallery-category{scroll-margin-top:115px}.icon-button{transition:background .2s,border-color .2s,transform .2s}.faq-list details[open]{background:var(--surface);padding-inline:18px}.faq-list details{transition:background .2s}.button{transition:background .2s,color .2s,border-color .2s,transform .2s;position:relative}.button svg{transition:transform .25s}.button:hover svg{transform:translate(3px)}.video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;display:grid}.video-card{background:var(--surface);border:1px solid var(--surface-edge);min-width:0;overflow:hidden}.video-frame{aspect-ratio:16/9;background:#151515;position:relative}.video-frame video{object-fit:contain;width:100%;max-width:100%;height:100%;margin:0;display:block}.video-launch{background:var(--tonal);color:#fff;cursor:pointer;border:0;width:100%;height:100%;padding:0;display:block;position:relative}.video-launch>img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.play-badge{background:#15151566;border:1px solid #ffffffb3;border-radius:50%;place-items:center;width:60px;height:60px;transition:background .25s;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.play-badge svg{width:30px;height:30px}.video-play-label{letter-spacing:.1em;text-transform:uppercase;font-size:11px;position:absolute;bottom:16px;left:18px}.video-card-caption{justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.video-card-caption .eyebrow{margin:0 0 7px;font-size:9px;display:block}.video-card-caption h3{font-family:var(--serif);margin:0;font-size:23px;font-weight:400;line-height:1.3}.video-card-caption .icon-button{flex:0 0 44px}.video-error{margin:0;padding:0 20px 18px;font-size:13px}.video-launch:focus-visible{outline-offset:-5px;outline-color:#fff}@media (hover:hover) and (pointer:fine){.gallery-item:hover{border-color:var(--accent);box-shadow:var(--hover-shadow)}.video-launch:hover>img{transform:scale(1.035)}.video-launch:hover .play-badge{background:#151515aa}.service-card:hover .media img{transform:scale(1.035)}}@media (max-width:700px){.video-grid{grid-template-columns:minmax(0,1fr);gap:22px}.video-card-caption{padding:16px}.video-card-caption h3{font-size:21px}.header-inner{gap:8px;padding:11px 12px}.header-actions .icon-button{width:44px;height:44px}.header .logo{min-width:0}.header .logo-main{font-size:29px}.header .logo-sub{letter-spacing:.15em;font-size:6px}.header .logo img{width:96px;height:40px}.header-actions{flex-shrink:0}.mobile-drawer{padding:24px max(20px, env(safe-area-inset-right)) max(30px, env(safe-area-inset-bottom));overscroll-behavior:contain;overflow-y:auto}.service-grid,.project-grid{grid-template-columns:minmax(0,1fr)}.service-card .media img{aspect-ratio:4/3}.form-grid{grid-template-columns:minmax(0,1fr)}input,select,textarea{font-size:16px}.social-links .icon-button{width:44px;height:44px}.button--text{min-height:44px}.hero-foot{flex-wrap:wrap}.hero-visual{padding-right:0}.vertical-note{writing-mode:horizontal-tb;margin-top:10px;font-size:10px;display:block;position:static}.contact-notice{z-index:200;width:auto;max-width:none;position:fixed;inset:auto 16px 20px}.contact-notice button{min-width:32px;min-height:32px}.video-frame{aspect-ratio:16/9}.gallery-item{padding:6px 6px 14px}.cta .actions{align-items:stretch}.section-heading{max-width:100%}}@media (prefers-reduced-motion:reduce){.video-launch>img,.play-badge,.gallery-item,.card-heading,.button,.button svg,.icon-button{transition:none}.video-launch:hover>img,.button:hover svg{transform:none}}@supports (content-visibility:auto){.gallery-item{content-visibility:auto;contain-intrinsic-block-size:auto 340px}}.video-launch:after{content:"";pointer-events:none;background:#0003;position:absolute;inset:0}.video-launch .play-badge,.video-launch .video-play-label{z-index:1}@media (max-width:1000px),(hover:none),(pointer:coarse){.header{box-shadow:none}.gallery-item,.service-card .media img,.project-image img,.gallery-item .media img{transition:none}.service-card:hover img,.project-card:hover img,.gallery-item:hover img{transform:none}.reveal{opacity:1;transition:none;transform:none}}
.site-loader{z-index:400;background:var(--bg);opacity:0;visibility:hidden;pointer-events:none;place-items:center;transition:opacity .24s,visibility .24s;display:grid;position:fixed;inset:0}html[data-loading=true] .site-loader{opacity:1;visibility:visible}.loader-composition{text-align:center;width:min(260px,76vw);color:var(--text);padding:48px 24px 38px;position:relative}.loader-frame{border:1px solid var(--line);clip-path:polygon(0 0,100% 0,100% 34%,99.5% 34%,99.5% .5%,.5% .5%,.5% 99.5%,34% 99.5%,34% 100%,0 100%);position:absolute;inset:0 16px 28px}.loader-wordmark{font-family:var(--serif);letter-spacing:-.065em;font-size:64px;line-height:1.1;display:block}.loader-wordmark>span{color:var(--accent)}.loader-brand-line{letter-spacing:.25em;margin-top:10px;font-size:9px;display:block}.loader-track{background:var(--line);width:84px;height:1px;margin:32px auto 20px;display:block;position:relative;overflow:hidden}.loader-track>span{background:var(--accent);animation:1.35s ease-in-out infinite loader-sweep;position:absolute;inset:0;transform:translate(-100%)}.loader-caption{letter-spacing:.075em;color:var(--muted);font-size:10px;display:block}.route-loader{place-items:center;min-height:60svh;padding:45px 20px;display:grid}@keyframes loader-sweep{0%{transform:translate(-105%)}to{transform:translate(105%)}}@media (prefers-reduced-motion:reduce){.site-loader{transition:none}.loader-track>span{opacity:.65;animation:none;transform:none}}
.section{padding-block:64px}.section.compact{padding-top:20px}.page-intro{text-align:center;padding-block:48px 36px}.page-intro h1,.page-intro>p,.section-heading,.section-heading>p{margin-inline:auto}.section-heading{text-align:center;margin-bottom:28px}.section-heading h2,.page-intro h1{text-wrap:balance}.section-top{text-align:center;flex-direction:column;justify-content:center;gap:0;margin-bottom:28px}.section-top .section-heading{margin-bottom:12px}.cta{text-align:center;padding-block:48px}.cta h2,.cta p{margin-inline:auto}.cta h2{font-size:clamp(2rem,4vw,3.4rem)}.cta .actions{justify-content:center;margin-top:20px}.team-grid article{text-align:center}.gallery-category>h3,.category-films>h4{text-align:center;justify-content:center}.home-minimal .hero{gap:36px;padding-block:36px}.home-minimal .hero-copy{text-align:center;padding:0}.home-minimal .hero-copy h1{text-wrap:balance;margin-inline:auto;font-size:clamp(2.5rem,4.4vw,4.5rem)}.home-minimal .hero-copy>p{margin-inline:auto}.home-minimal .actions{justify-content:center;margin-top:22px}.home-minimal .hero-visual{padding:0}.home-minimal .hero-visual .media img{aspect-ratio:1.25;height:auto;max-height:460px}.home-minimal .section{padding-block:40px}.home-services{border-block:1px solid var(--line);text-align:center}.service-shortcuts{flex-wrap:wrap;justify-content:center;gap:10px;max-width:960px;margin:0 auto 16px;display:flex}.service-shortcuts a{border:1px solid var(--line);background:var(--surface);border-radius:6px;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:10px 16px;font-size:13px;display:inline-flex}.service-shortcuts a:hover{border-color:var(--accent)}.service-shortcuts svg{width:14px;height:14px}.explore-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.explore-card{border:1px solid var(--line);border-radius:10px;min-width:0;overflow:hidden}.explore-card .media img{aspect-ratio:2.5}.explore-card>div{text-align:center;padding:22px}.explore-card h3{margin-bottom:8px}.explore-card p{margin-bottom:12px;font-size:13px}.explore-card span{align-items:center;gap:12px;min-height:32px;font-size:12px;display:inline-flex}.home-contact{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;padding-block:32px;display:flex}.home-contact h2{text-align:center;margin:0;font-size:clamp(1.8rem,3vw,2.6rem)}.contact-minimal{max-width:840px;padding-bottom:48px}.contact-minimal .page-intro{max-width:none;padding-bottom:24px}.contact-minimal h1{white-space:nowrap;font-size:clamp(2.5rem,5vw,4rem)}.contact-inline{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 24px;display:flex}.contact-inline .button{gap:8px;min-height:44px;font-size:13px}.contact-inline .contact-notice{position:fixed;inset:auto auto 20px 50%;transform:translate(-50%)}.contact-location{overflow-wrap:anywhere;margin-top:20px}.contact-location .contact-action{margin-left:12px}.enquiry-disclosure{border-block:1px solid var(--line);max-width:680px;margin-inline:auto}.enquiry-disclosure summary{cursor:pointer;text-align:center;min-height:48px;padding:18px 10px;font-size:14px}.enquiry-disclosure .enquiry-form{text-align:left;margin-top:12px}@media (min-width:701px){.split>div>p:not(.eyebrow),.intro>div>p{text-align:justify;text-justify:inter-word;-webkit-hyphens:auto;hyphens:auto}}@media (max-width:800px){.home-minimal .hero{grid-template-columns:1fr;gap:24px;padding-block:28px}.home-minimal .hero-visual .media img{aspect-ratio:2;max-height:280px}}@media (max-width:600px){.section{padding-block:40px}.page-intro{padding-block:32px 24px}.home-minimal .section{padding-block:28px}.home-minimal .hero-copy h1{font-size:clamp(2.25rem,9vw,3rem)}.service-shortcuts{gap:8px}.service-shortcuts a{gap:8px;padding:8px 10px;font-size:12px}.explore-grid{grid-template-columns:1fr;gap:16px}.explore-card .media img{aspect-ratio:3}.explore-card>div{padding:16px}.contact-inline{gap:8px 14px}.contact-inline .button{gap:5px;font-size:12px}.contact-inline svg{width:16px;height:16px}}.section-top{align-items:center}@media (max-width:700px){.footer-minimal .footer-bottom{text-align:center;flex-flow:wrap;justify-content:center;gap:8px 20px}.contact-inline{gap:8px}.contact-inline .button{white-space:nowrap}}
.media{border:1px solid var(--line);border-radius:12px;box-shadow:0 3px 12px #00000006}.media img{border-radius:inherit}.portrait{border-radius:50%}.media-pending{aspect-ratio:4/3;min-height:140px;color:var(--muted);text-align:center;place-items:center;padding:16px;font-size:12px;display:grid}.hero-visual .media-pending{aspect-ratio:1.25}.explore-card .media{box-shadow:none;border:0;border-radius:0}.explore-card .media-pending{aspect-ratio:2.5}main p{font-size:1.05em}main .eyebrow{font-size:10px}.hero-copy>p:not(.eyebrow){font-size:14.7px}.service-card p,.project-card>p:last-child,.values-grid p,.process-grid p,.team-grid article>p:last-child,.explore-card p{font-size:13.65px}strong{color:var(--text);font-weight:600}.detail-note,.locations-section{text-align:center}.detail-note h2,.locations-section h2{text-wrap:balance;font-size:clamp(1.65rem,2.6vw,2.5rem)}.detail-note p,.locations-section>p{max-width:720px;margin-inline:auto}.detail-note{padding-block:32px}.detail-note .key-points{margin-bottom:0;font-size:13.65px}.contact-minimal>.detail-note{width:100%;padding-block:16px 28px}.location-chips{flex-wrap:wrap;justify-content:center;gap:10px;max-width:860px;margin:20px auto 0;padding:0;list-style:none;display:flex}.location-chips li{border:1px solid var(--line);background:var(--surface);border-radius:30px;padding:8px 14px;font-size:13px}#work-locations{scroll-margin-top:110px}.instagram-banner{border:1px solid var(--line);border-left:3px solid var(--accent);background:var(--tonal);border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin-block:24px;padding:24px 28px;display:flex}.instagram-banner h2{margin-bottom:8px;font-size:1.65rem}.instagram-banner p{margin-bottom:0;font-size:14px}.instagram-banner .button{gap:10px}.floating-whatsapp{left:max(16px, env(safe-area-inset-left));bottom:max(16px, env(safe-area-inset-bottom));z-index:40;position:fixed}.floating-whatsapp .contact-notice{inset:auto auto calc(100% + 10px) 0}.footer{padding-bottom:70px}.gallery-controls{background:var(--tonal);border:1px solid var(--line);border-radius:12px;grid-template-columns:auto minmax(180px,320px);justify-content:center;align-items:end;gap:24px;padding:20px;display:grid}.gallery-controls fieldset{border:0;min-width:0;margin:0;padding:0}.gallery-controls legend,.gallery-controls label{color:var(--text);font-size:13px}.gallery-controls .filters{margin:8px 0 0}.gallery-controls select{margin-top:8px}.gallery-section>.result-count{text-align:center;margin-top:16px}.gallery-category>h2{text-align:center;font-size:1.9rem}.gallery-empty{text-align:center;padding:36px 16px}.gallery-empty h2{font-size:1.8rem}.gallery-empty p{max-width:620px;margin-inline:auto}@media (max-width:600px){.gallery-controls{grid-template-columns:1fr;gap:16px;padding:16px}.instagram-banner{text-align:center;flex-direction:column;gap:14px;padding:20px}.instagram-banner .contact-notice{right:0}.location-chips{gap:8px}.location-chips li{padding:6px 10px;font-size:12px}.explore-card .media-pending{aspect-ratio:3}.hero-visual .media-pending{aspect-ratio:2}}
.site-footer{background:var(--tonal);border-top:1px solid var(--line);margin-top:40px;padding:52px 0 76px}.footer-columns{grid-template-columns:1.25fr .75fr 1fr 1.15fr;align-items:start;gap:36px;display:grid}.footer-columns>*{min-width:0}.site-footer h2{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--text);margin-bottom:18px;font-size:11px;font-weight:600}.footer-identity>p{max-width:270px;margin:20px 0;font-size:13px;line-height:1.8}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:0}.site-footer nav a{min-height:38px;color:var(--muted);align-items:center;font-size:13px;display:inline-flex}.site-footer nav a:hover{color:var(--text)}.footer-conversation>p{margin-bottom:12px;font-size:13px}.footer-contact-links{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.footer-contact-links .contact-action{max-width:100%}.footer-contact-links .button{text-align:left;overflow-wrap:anywhere;justify-content:flex-start;gap:8px;min-height:40px;font-size:13px}.footer-conversation .footer-region{margin:20px 0 0;font-size:11px;line-height:1.8}.site-footer .footer-bottom{flex-wrap:wrap;align-items:center;margin-top:32px;padding-block:20px 0}.site-footer .contact-notice{top:auto;bottom:calc(100% + 8px)}.footer-identity .contact-notice{left:0;right:auto}@media (max-width:1000px){.footer-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 40px}}@media (max-width:600px){.site-footer{margin-top:28px;padding-top:32px}.footer-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 20px}.footer-identity,.footer-conversation{grid-column:1/-1}.footer-identity{border-bottom:1px solid var(--line);padding-bottom:22px}.footer-identity>p{max-width:360px;margin:16px 0}.site-footer nav a{min-height:44px}.footer-conversation{border-top:1px solid var(--line);padding-top:24px}.footer-contact-links{flex-flow:wrap;gap:12px 24px}.site-footer .footer-bottom{text-align:left;flex-direction:column;align-items:flex-start;gap:8px;margin-top:24px}.site-footer .footer-bottom a{align-items:center;min-height:44px;display:inline-flex}.footer-conversation .contact-notice{position:fixed;bottom:80px;left:20px;right:auto}}
.header-direct{align-items:center;gap:6px;display:flex}.header-direct .contact-action{display:inline-flex}.header-direct .icon-button{background:var(--tonal);border:1px solid var(--line);border-radius:50%;width:44px;height:44px}.header-theme{display:inline-flex}.drawer-theme{justify-content:space-between;align-items:center;font-size:13px;display:flex}.header-direct .contact-notice{position:fixed;top:95px;left:auto;right:20px}main .section{border-top:1px solid var(--line)}main .page-intro{border-bottom:1px solid var(--line);background:linear-gradient(180deg, transparent, var(--tonal));border-radius:0 0 16px 16px;margin-bottom:28px}main .page-intro+.section{border-top:0}.section-heading .eyebrow:before,.location-band .eyebrow:before{content:"";background:var(--accent);width:32px;height:2px;margin:0 auto 14px;display:block}.home-minimal .home-services{background:var(--tonal);border:1px solid var(--line);border-radius:14px;margin-block:12px 32px;padding:32px 24px}.home-minimal .home-explore{border-top:0;padding-top:8px;padding-bottom:40px}main .detail-note{background:var(--tonal);border:1px solid var(--line);border-radius:12px;margin-block:28px;padding:28px 24px}.contact-minimal>.detail-note{padding:24px 18px}.home-contact{border-bottom:1px solid var(--line);margin-block:28px}.cta{border-block:1px solid var(--line);margin-top:32px}.location-band{background:var(--tonal);border-block:1px solid var(--line);text-align:center;margin-block:28px;padding:44px 0}.location-band .section-heading{max-width:700px}.location-band .section-heading p{max-width:600px}.region-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.region-card{text-align:left;background:var(--bg);border:1px solid var(--line);border-radius:12px;flex-direction:column;min-width:0;padding:24px;transition:border-color .2s;display:flex}.region-card:hover{border-color:var(--accent)}.region-card-top{color:var(--accent);justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.region-card-top>span{letter-spacing:.15em;font-size:11px}.region-card h3{margin-bottom:20px;font-size:clamp(1.35rem,2.3vw,1.9rem)}.map-link{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;font-size:12px;display:flex}.neighbourhoods{border-top:1px solid var(--line);margin-top:30px;padding-top:28px}.neighbourhoods h3{margin-bottom:10px}.neighbourhoods>p{font-size:13px}.neighbourhoods ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0;padding:0;list-style:none;display:grid}.neighbourhoods a{text-align:left;border:1px solid var(--line);background:var(--bg);border-radius:8px;align-items:center;gap:10px;min-height:52px;padding:12px 16px;font-size:13px;display:flex}.neighbourhoods a span{overflow-wrap:anywhere;flex:1}.neighbourhoods a svg{width:16px;height:16px;color:var(--accent)}.neighbourhoods a:hover{border-color:var(--accent)}.neighbourhoods .map-note{margin-bottom:0;font-size:11px}.location-more{gap:12px;margin-top:22px}@media (max-width:1100px){.header .desktop-nav{display:none}.header .menu-button{display:inline-flex}}@media (max-width:700px){.header-theme{display:none}.header-direct,.header-actions{gap:2px}.region-grid{grid-template-columns:1fr;gap:12px}.region-card{grid-template-columns:1fr auto;align-items:center;gap:10px;padding:18px;display:grid}.region-card-top{grid-area:1/2;margin:0}.region-card-top>span{display:none}.region-card h3{grid-area:1/1;margin:0}.map-link{grid-column:1/-1}.neighbourhoods ul{grid-template-columns:repeat(2,minmax(0,1fr))}.neighbourhoods a{height:100%;padding:12px}.location-band{padding:32px 0}.home-minimal .home-services{padding:26px 16px}}@media (max-width:400px){.neighbourhoods ul{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.region-card{transition:none}}.region-areas{flex-wrap:wrap;gap:6px;margin:0 0 16px;padding:0;list-style:none;display:flex}.region-areas li{min-width:0}.region-areas a{border:1px solid var(--line);background:var(--tonal);border-radius:6px;align-items:center;gap:6px;min-height:44px;padding:6px 10px;font-size:12px;display:inline-flex}.region-areas a svg{width:13px;height:13px}.region-areas a:hover{border-color:var(--accent);color:var(--text)}.region-card>.map-link{min-height:44px}@media (max-width:700px){.region-areas{grid-column:1/-1;margin:0}}
.service-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:32px;display:grid}.service-photo-grid .media{aspect-ratio:4/5;min-width:0}.service-photo-grid .media img{aspect-ratio:4/5;object-fit:cover;width:100%;height:100%}.service-detail-section>div:not(.service-photo-grid){max-width:840px;margin-inline:auto}.service-detail-section .actions{justify-content:center}.location-band h2{color:var(--text);font-weight:600}@media (max-width:600px){.service-photo-grid{grid-template-columns:1fr;gap:16px}.service-photo-grid .media,.service-photo-grid .media img{aspect-ratio:4/3}}.service-photo-grid{border:1px solid var(--line);background:var(--tonal);border-radius:16px;padding:12px}.service-photo-grid .media,.gallery-item{border:1px solid var(--line);border-radius:12px;overflow:hidden}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.service-photo-grid .media,.gallery-item{transition:transform .25s,border-color .25s}.service-photo-grid .media img{transition:transform .35s}.service-photo-grid .media:hover,.gallery-item:hover{border-color:var(--accent);transform:translateY(-3px)}.service-photo-grid .media:hover img{transform:scale(1.025)}}.floating-whatsapp .icon-button{background:var(--button);width:52px;height:52px;color:var(--button-text);border:1px solid var(--accent);border-radius:50%;padding:14px;box-shadow:0 3px 14px #0002}.floating-whatsapp .icon-button svg{width:23px;height:23px}.floating-whatsapp .icon-button:hover{background:var(--text);color:var(--bg)}@media (max-width:600px){.service-photo-grid{padding:8px}.floating-whatsapp .icon-button{width:48px;height:48px;padding:12px}}
:root{--control-hover:var(--text);--control-hover-text:var(--bg)}.button:hover,.icon-button:hover{border-color:var(--accent)}.button--primary:hover,.button--outline:hover,.button--secondary:hover,.icon-button:hover{background:var(--control-hover);color:var(--control-hover-text)}.button--text:hover{color:var(--text);border-bottom-color:var(--text);background:0 0}.header-direct .icon-button:hover{background:var(--control-hover);color:var(--control-hover-text)}.desktop-nav>a,.service-trigger{position:relative}.desktop-nav>a:after,.service-trigger:after{content:"";background:var(--accent);transform-origin:0;height:2px;transition:transform .22s;position:absolute;bottom:5px;left:0;right:0;transform:scaleX(0)}.desktop-nav>a:hover:after,.desktop-nav>a:focus-visible:after,.desktop-nav>a[aria-current=page]:after,.service-trigger:hover:after,.service-trigger:focus-visible:after,.service-trigger.is-active:after{transform:scaleX(1)}.desktop-nav a[aria-current=page]{border-bottom:0}.dropdown a,.mobile-drawer nav>a{transition:background .18s,color .18s}.dropdown a:hover,.mobile-drawer nav>a:hover{background:var(--tonal);color:var(--text)}.instagram-banner{border:1px solid var(--accent);background:linear-gradient(110deg, var(--tonal), var(--surface));text-align:left;border-left-width:4px;flex-direction:row;align-items:center;gap:16px;margin-block:20px;padding:18px 22px;display:flex;box-shadow:0 3px 14px #00000005}.instagram-emblem{border:1px solid var(--line);width:44px;height:44px;color:var(--accent);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.instagram-copy{flex:1;min-width:0}.instagram-banner h2{margin-bottom:5px;font-size:clamp(1.2rem,2vw,1.65rem)}.instagram-banner p{margin:0;font-size:13px;line-height:1.6}.instagram-banner>.contact-action{flex-shrink:0}.instagram-banner .icon-button{border-color:var(--accent);border-radius:50%}.contact-minimal>.instagram-banner{width:100%}.instagram-banner .contact-notice{top:auto;bottom:calc(100% + 10px)}main .page-intro{margin-bottom:18px;padding-block:36px 28px}main .section-heading{margin-bottom:24px}main .section{padding-block:44px}main .section.compact{padding-top:16px}main .detail-note{margin-block:20px;padding:24px}.cta{margin-top:24px;padding-block:36px}.cta .eyebrow{margin-bottom:14px}.cta p{margin-bottom:16px}.actions,.cta .actions{flex-flow:wrap;justify-content:center;align-items:center;gap:12px}.actions>.contact-action{width:auto}.actions .icon-button{border-radius:50%}.footer-contact-links{flex-direction:row;align-items:center;gap:10px}.footer-contact-links .icon-button{border-radius:50%}.site-footer{margin-top:28px}.site-footer .footer-bottom{gap:12px 22px}.designer-credit{border-inline:1px solid var(--line);align-items:center;gap:10px;padding-inline:18px;font-size:11px;display:inline-flex}.designer-credit>span{line-height:1.5}.designer-role{color:var(--muted);font-size:10px;display:block}.designer-credit .icon-button{width:44px;height:44px;color:var(--text);border-radius:50%}.designer-credit .icon-button:hover{color:var(--control-hover-text)}.service-detail-section>div>p strong,.split p strong{font-weight:600}@media (min-width:701px){.cta .actions{flex-direction:row}}@media (max-width:700px){main .section{padding-block:32px}main .page-intro{padding-block:28px 22px}.instagram-banner{gap:12px;padding:16px}.instagram-emblem{display:none}.instagram-banner h2{font-size:1.25rem}.instagram-banner .contact-notice{width:auto;max-width:none;position:fixed;bottom:80px;left:20px;right:20px}.cta .actions{flex-direction:row;align-items:center}.cta .actions>.button{width:auto}.designer-credit{border-inline:0;padding-inline:0}.site-footer .footer-bottom{align-items:flex-start}.contact-minimal>.page-media{width:100%}}@media (prefers-reduced-motion:reduce){.desktop-nav>a:after,.service-trigger:after,.dropdown a,.mobile-drawer nav>a{transition:none}}
.media.media--natural{box-sizing:border-box;border:1px solid var(--line);background:var(--tonal);isolation:isolate;border-radius:12px;width:100%;min-width:0;margin:0;padding:0;position:relative;overflow:hidden;aspect-ratio:4/3!important;height:auto!important}.media.media--natural img{object-position:center;border-radius:0;max-width:100%;transition:none;display:block;position:absolute;inset:6px;aspect-ratio:auto!important;object-fit:scale-down!important;width:calc(100% - 12px)!important;height:calc(100% - 12px)!important;max-height:none!important;transform:none!important}.photo-card{align-self:start;width:100%;min-width:0;max-width:100%;height:auto}.service-photo-grid,.gallery-grid,.service-grid,.project-grid,.explore-grid{align-items:start}:is(.service-card,.project-card,.explore-card,.gallery-item,.project-image){min-width:0;max-width:100%}:is(.service-card,.project-card,.explore-card,.gallery-item) :is(h2,h3,p,figcaption){overflow-wrap:anywhere;min-width:0}.gallery-item{background:var(--surface);padding:0}.explore-card>div{padding:18px}
.work-controls{grid-template-columns:2fr 1fr 1fr;align-items:end;gap:18px;display:grid}.work-controls label{gap:8px;min-width:0;display:grid}.work-controls input,.work-controls select{border:1px solid var(--line);background:var(--surface);width:100%;min-width:0;color:var(--text);font:inherit;border-radius:8px;padding:12px}.work-controls fieldset{border:0;grid-column:1/-1;margin:0;padding:0}.work-controls legend{margin-bottom:8px}.work-category{border-top:1px solid var(--line);padding-block:30px}.work-more{text-align:center;margin-top:22px}.work-more p{color:var(--muted);font-size:14px}.subcategory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.subcategory-grid article,.service-grid .service-card{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:24px}.service-subcategories{color:var(--muted)}@media (max-width:700px){.work-controls,.subcategory-grid{grid-template-columns:1fr}.subcategory-grid article,.service-grid .service-card{padding:18px}}.work-sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
.location-band.locations-compact{margin-block:18px;padding:24px 0}.locations-compact .section-heading{margin-bottom:14px}.locations-compact .section-heading h2{margin-bottom:6px}.locations-compact .section-heading p{margin-bottom:0;font-size:14px}.location-chips{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:8px;display:flex}.location-chips a{border:1px solid var(--line);background:var(--bg);text-align:left;overflow-wrap:anywhere;border-radius:8px;align-items:center;gap:7px;max-width:100%;min-height:40px;padding:8px 12px;font-size:13px;display:inline-flex}.location-chips svg{flex-shrink:0;width:14px;height:14px}.location-chips a:hover,.location-chips a:focus-visible{border-color:var(--accent)}.location-projects{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.location-projects h3{margin-bottom:10px;font-size:16px}.location-links{flex-wrap:wrap;justify-content:center;gap:8px 20px;margin-top:14px;display:flex}.location-links a{align-items:center;gap:6px;min-height:36px;font-size:13px;display:inline-flex}.location-links svg{width:14px;height:14px}@media (max-width:600px){.location-band.locations-compact{padding:20px 0}.location-chips a{min-height:44px;padding:8px 10px}}
.photo-card.photo-card--balanced{width:100%}.media.media--natural.media--balanced{isolation:isolate;width:100%;max-height:none;padding:0;aspect-ratio:4/3!important}.media--balanced .photo-blur{filter:blur(16px);opacity:.38;z-index:-1;pointer-events:none;background-position:50%;background-size:cover;position:absolute;inset:-18px}.media.media--balanced img{border-radius:0;position:absolute;inset:6px;object-fit:scale-down!important;width:calc(100% - 12px)!important;height:calc(100% - 12px)!important}.gallery-item.photo-card--balanced{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding-bottom:0;overflow:hidden}.gallery-item.photo-card--balanced figcaption{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:5px;margin:0;padding:14px 10px;display:flex}.work-caption-category{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:10px}.work-caption-detail{color:var(--muted);font-size:11px}.gallery-item figcaption strong{color:var(--text);font-size:17px;font-weight:600}.split-intro{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(24px,4vw,60px);display:grid}.split-intro .split-intro-copy{text-align:left;min-width:0}.split-intro .split-intro-copy p{max-width:none;margin-inline:0;font-size:15px}.split-intro .split-intro-copy .eyebrow{font-size:11px}.split-intro .split-intro-copy h1{font-size:clamp(32px,4vw,54px)}.split-intro .actions,.split-intro .contact-inline{justify-content:flex-start}.split-intro-visual{min-width:0}.service-bullets{text-align:left;gap:10px;margin:18px 0;padding:0;list-style:none;display:grid}.service-bullets li{align-items:flex-start;gap:10px;font-size:14px;display:flex}.service-bullets svg,.subcategory-title svg,.service-card-title svg{width:18px;height:18px;color:var(--accent);flex-shrink:0}.service-subcategories li{background:var(--tonal);border-radius:6px;padding:8px 10px}.subcategory-title,.service-card-title{align-items:center;gap:10px;display:flex}.intro-art{aspect-ratio:1.15;border:1px solid var(--line);background:linear-gradient(135deg,var(--tonal),var(--surface));border-radius:16px;position:relative;overflow:hidden}.intro-art-window{border:10px solid var(--line);background:linear-gradient(135deg,var(--bg),var(--tonal));border-radius:50% 50% 0 0;width:43%;height:54%;position:absolute;top:12%;left:12%}.intro-art-panel{background:repeating-linear-gradient(90deg,var(--line) 0 3px,transparent 3px 14px);width:26%;height:75%;position:absolute;top:10%;right:8%}.intro-art-console{background:var(--accent);opacity:.75;border-radius:4px;width:62%;height:21%;position:absolute;bottom:15%;left:8%}.intro-art>span{color:var(--bg);position:absolute;bottom:22%;left:15%}.intro-art svg{width:28px;height:28px}.locations-compact .location-split{grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:center;gap:24px;display:grid}.location-split .section-heading{text-align:left;margin:0}.location-split .location-chips,.location-split .location-links{justify-content:flex-start}.location-split .location-projects{text-align:left}@media (max-width:800px){.split-intro,.locations-compact .location-split{grid-template-columns:1fr;gap:22px}.split-intro-visual{width:100%;max-width:520px;margin-inline:auto}.intro-art{aspect-ratio:1.6}.media--balanced .photo-blur{filter:blur(10px)}.location-split .section-heading{text-align:center}.location-split .location-chips,.location-split .location-links{justify-content:center}}
.contact-page{padding-bottom:32px}.contact-heading{text-align:center;max-width:700px;margin-inline:auto;padding:40px 0 28px}.contact-heading h1{margin:8px 0 12px;font-size:clamp(36px,5vw,60px)}.contact-heading>p:last-child{color:var(--muted);margin:0}.contact-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:32px;display:grid}.contact-info{min-width:0;padding:24px 8px 24px 0}.contact-symbol{border:1px solid var(--line);background:var(--tonal);color:var(--accent);border-radius:12px;margin-bottom:18px;padding:12px;display:inline-flex}.contact-symbol svg{width:25px;height:25px}.contact-info h2{margin-bottom:12px;font-size:clamp(25px,3vw,36px)}.contact-info>p{color:var(--muted);max-width:460px}.contact-primary-actions{flex-wrap:wrap;gap:10px;margin:22px 0;display:flex}.contact-primary-actions .button{min-height:46px;padding:13px 16px;font-size:14px}.contact-area{border-block:1px solid var(--line);gap:12px;margin-bottom:20px;padding:18px 0;display:flex}.contact-area>svg{width:20px;height:20px;color:var(--accent);flex-shrink:0}.contact-area p{color:var(--muted);margin:7px 0 0;font-size:14px}.contact-tip{margin-top:20px;font-size:14px}.contact-form-panel{border:1px solid var(--line);background:var(--surface);border-radius:18px;min-width:0;padding:clamp(20px,3vw,32px);box-shadow:0 8px 30px #00000005}.contact-form-heading{align-items:flex-start;gap:12px;margin-bottom:22px;display:flex}.contact-form-heading>svg{width:24px;height:24px;color:var(--accent);flex-shrink:0;margin-top:4px}.contact-form-heading h2{margin:0 0 6px;font-size:24px}.contact-form-heading p{color:var(--muted);margin:0;font-size:14px}.contact-form-panel .enquiry-form{background:0 0;border:0;margin:0;padding:0}.contact-form-panel :is(input,select,textarea){border:1px solid var(--line);background:var(--bg);width:100%;min-width:0;max-width:100%;color:var(--text);border-radius:8px;padding:12px;font-size:16px}.contact-form-panel textarea{resize:vertical;min-height:96px}.contact-form-panel .form-grid{gap:14px}.contact-form-panel label{font-size:13px}.contact-form-panel .form-note{font-size:12px;line-height:1.6}.contact-form-panel button[type=submit],.contact-form-panel .button--primary{justify-content:center;width:100%}.contact-form-panel .form-status:empty{display:none}.contact-page .follow-instagram{margin-top:30px}.work-controls{border:1px solid var(--line);background:var(--surface);border-radius:14px;gap:14px;padding:20px}.work-controls label{font-size:13px;font-weight:600}.work-controls :is(input,select){background:var(--bg);font-size:16px;font-weight:400}.work-controls .filters{gap:8px}.work-controls .filters button{border-radius:7px;min-height:42px}.work-results-bar{justify-content:space-between;align-items:center;gap:12px;padding:12px 2px;display:flex}.work-results-bar p{margin:0;font-size:13px}.work-results-bar .button{min-height:40px;padding:8px;font-size:13px}.work-category .section-heading{margin-bottom:20px}.work-category .section-heading h2{margin-bottom:8px;font-size:clamp(25px,3vw,34px)}.work-category .gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.work-category .gallery-item{transition:border-color .2s}.work-category .gallery-item:hover{border-color:var(--accent);transform:none}.work-category .media{border:0;border-radius:0}.gallery-item.photo-card--balanced figcaption{min-height:74px;padding:12px}.work-more .button{min-width:160px}@media (max-width:900px){.work-category .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-layout{gap:22px}}@media (max-width:800px){.contact-layout{grid-template-columns:1fr}.contact-info{padding:0}.contact-heading{padding:30px 0 22px}.contact-form-panel{padding:20px}.contact-info h2{font-size:26px}}@media (max-width:540px){.work-category .gallery-grid{grid-template-columns:1fr}.work-controls{padding:16px}.contact-primary-actions{grid-template-columns:1fr;display:grid}.contact-primary-actions .button{justify-content:center;width:100%}.contact-form-panel .form-grid{grid-template-columns:1fr}}.contact-form-panel .form-grid>label:last-child{grid-column:1/-1}
@media (prefers-reduced-motion:no-preference){.button,.icon-button,.service-card,.subcategory-grid>article,.explore-card{transition:transform .22s,border-color .22s,background-color .22s,color .22s}.button>svg,.location-links svg,.location-chips svg:last-child{transition:transform .22s}.button:active,.icon-button:active{transform:translateY(1px)}@media (hover:hover) and (pointer:fine){.button:hover,.icon-button:hover{transform:translateY(-2px)}.service-card:hover,.subcategory-grid>article:hover,.explore-card:hover{border-color:var(--accent);transform:translateY(-3px)}.button:hover>svg,.location-links a:hover svg,.location-chips a:hover svg:last-child{transform:translate(2px)}}}@media (prefers-reduced-motion:reduce){.button,.icon-button,.service-card,.subcategory-grid>article,.explore-card,.button>svg,.location-links svg,.location-chips svg{transition:none!important;transform:none!important}}@keyframes section-entrance{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:no-preference){[data-entrance=visible]{animation:section-entrance .7s cubic-bezier(.22,1,.36,1) var(--entrance-delay,0s) backwards}}@media (max-width:800px) and (prefers-reduced-motion:no-preference){[data-entrance=visible]{animation-duration:.55s}}@media (prefers-reduced-motion:reduce){[data-entrance]{animation:none!important}}
.choice-group{border:0;min-width:0;margin:16px 0;padding:0}.choice-group legend{margin-bottom:10px;font-weight:600}.choice-chips{flex-wrap:wrap;gap:8px;display:flex}.choice-chips button{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer;border-radius:24px;min-height:44px;padding:9px 14px;font-size:.88rem;transition:background-color .2s,border-color .2s}.choice-chips button[aria-pressed=true]{background:var(--text);color:var(--bg);border-color:var(--text)}.choice-chips button:hover{border-color:var(--accent)}.choice-chips button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.work-controls{display:block}.work-controls>label{max-width:640px}.work-controls .choice-group{border-bottom:1px solid var(--line);padding-bottom:14px}.experience-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.experience-stats article{text-align:center;border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:22px 16px}.experience-stats strong{font-family:var(--serif);color:var(--accent);font-size:clamp(1.8rem,4vw,2.7rem)}.experience-stats h3{margin:8px 0;font-size:1rem}.experience-stats p{color:var(--muted);margin:0;font-size:.9rem}.trade-list{flex-wrap:wrap;justify-content:center;gap:12px 24px;margin:22px 0;padding:0;font-size:.9rem;list-style:none;display:flex}.trade-list span{color:var(--accent)}.quotation-strip{border-block:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding:24px;display:flex}.quotation-strip h3{margin:0 0 8px}.quotation-strip p{max-width:650px;margin:0}.quotation-strip .button{flex-shrink:0}@media (max-width:650px){.experience-stats{grid-template-columns:1fr;gap:8px}.experience-stats article{padding:14px}.experience-stats strong{font-size:1.8rem}.quotation-strip{text-align:center;flex-direction:column;padding:20px 0}.choice-chips{gap:7px}.choice-chips button{padding:8px 12px;font-size:.82rem}.trade-list{gap:10px 16px}}.experience-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.choice-group--compact{background:var(--surface);border-radius:12px;border:1px solid var(--line)!important;padding:12px 14px!important}.choice-group--compact legend{color:var(--accent);padding:0 6px}.choice-chips .choice-expand{color:var(--accent);border-style:dashed;font-weight:600}.progress-media-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:18px;display:grid}.progress-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:0;list-style:none;display:grid}.progress-steps li{border-top:1px solid var(--line);padding:18px}.progress-steps span{color:var(--accent);margin-bottom:10px;font-size:.8rem;display:block}.progress-steps p{color:var(--muted);margin-bottom:0;font-size:.9rem}.work-in-progress{scroll-margin-top:100px}@media (max-width:850px){.experience-stats,.progress-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:550px){.progress-media-grid,.progress-steps{grid-template-columns:1fr}.progress-steps{gap:0}.experience-stats h3{font-size:.9rem}.experience-stats strong{font-size:1.6rem}}.quality-note{border:1px solid var(--line);border-inline-start:3px solid var(--accent);background:var(--surface);text-align:left;border-radius:12px;align-items:flex-start;gap:14px;margin:20px 0;padding:18px 20px;display:flex}.quality-note-icon{border:1px solid var(--line);width:36px;height:36px;color:var(--accent);border-radius:50%;flex:0 0 36px;place-items:center;display:grid}.quality-note-icon svg{width:20px;height:20px}.quality-note>div>strong{color:var(--text);font-size:1.05rem;display:block}.quality-note p{color:var(--muted);margin:6px 0 0;font-size:.95rem;line-height:1.65}.quality-note p strong{color:var(--text);font-weight:600}@media (max-width:600px){.quality-note{gap:10px;padding:14px}.quality-note>div>strong{font-size:1rem}}
.photo-preview-trigger{z-index:2;cursor:zoom-in;border-radius:inherit;background:0 0;border:0;width:100%;height:100%;position:absolute;inset:0}.photo-preview-trigger:focus-visible{outline:3px solid var(--accent);outline-offset:-4px}@media (hover:hover) and (pointer:fine){.photo-preview-trigger:hover{box-shadow:inset 0 0 0 2px var(--accent)}}.photo-preview{border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:16px;width:min(1120px,94vw);max-width:94vw;max-height:94dvh;padding:0;overflow:hidden}.photo-preview::backdrop{background:#0c0e0dd9}.photo-preview-panel{flex-direction:column;max-height:92dvh;display:flex}.photo-preview-toolbar,.photo-preview-footer{justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.photo-preview-toolbar>div{gap:8px;display:flex}.photo-preview button{font:inherit;border:1px solid var(--line);min-width:44px;min-height:44px;color:var(--text);background:var(--surface);cursor:pointer;border-radius:8px;padding:8px 12px}.photo-preview button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.photo-preview button:disabled{opacity:.35;cursor:default}.photo-preview-stage{background:var(--tonal);overscroll-behavior:contain;justify-content:center;align-items:center;height:70dvh;min-height:0;display:flex;overflow:auto}.photo-preview-stage img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.photo-preview-stage.is-zoomed{display:block}.photo-preview-stage.is-zoomed img{width:150%;max-width:none;height:auto;max-height:none;margin:auto}.photo-preview-footer p{text-align:center;max-height:4em;margin:0;font-size:.9rem;line-height:1.4;overflow:auto}@media (prefers-reduced-motion:no-preference){.photo-preview[open]{animation:.2s ease-out preview-enter}@keyframes preview-enter{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}}@media (max-width:600px){.photo-preview-toolbar,.photo-preview-footer{padding:10px}.photo-preview-stage{height:65dvh}.photo-preview-footer p{font-size:.8rem}}
.slider-controls,.slider-controls>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.slider-controls{flex-wrap:wrap;margin-bottom:18px}.slider-controls button{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--text);cursor:pointer;font:inherit;border-radius:8px;padding:8px 14px;font-size:.85rem}.testimonial-track{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;gap:20px;padding-bottom:14px;display:flex;overflow-x:auto}.testimonial-card{border:1px solid var(--line);background:var(--surface);scroll-snap-align:start;border-radius:14px;flex:0 0 calc(33.3333% - 13.3333px);min-width:0;overflow:hidden}.region-copy{padding:20px}.testimonial-copy{padding:14px 16px}.testimonial-copy h2{margin:8px 0 5px;font-size:1.08rem}.testimonial-copy p{margin-block:7px;font-size:.86rem;line-height:1.55}.testimonial-card .media.media--natural{border:0;border-radius:0;aspect-ratio:2!important}.testimonial-copy .project-rating{font-size:.9rem}.project-area{color:var(--muted);margin:0}.project-rating{color:var(--accent);font-weight:600}.project-rating small{color:var(--muted);font-size:.75rem;font-weight:400;display:block}.testimonial-art{background:linear-gradient(135deg,var(--tonal),var(--surface));height:76px;color:var(--accent);place-items:center;display:grid}.testimonial-art svg{width:32px;height:32px}.region-showcase{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px;display:grid}.region-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;overflow:hidden}.region-art{background:linear-gradient(135deg,var(--tonal),var(--surface));height:160px;color:var(--accent);font-family:var(--serif);justify-content:center;align-items:center;gap:20px;font-size:1.8rem;display:flex}.region-art svg{width:46px;height:46px}.region-art--kerala,.region-art--assam{background:linear-gradient(135deg,#e4eddf,var(--surface))}.region-art--delhi,.region-art--haryana{background:linear-gradient(135deg,#eee1d0,var(--surface))}.region-copy h2{margin-top:0;font-size:1.5rem}.region-copy p{font-size:.95rem}.community-list{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.community-list summary{cursor:pointer;font-weight:600}.community-list ul{columns:2;padding:0;font-size:.85rem;list-style:none}.community-list li{break-inside:avoid;padding:5px 0}.home-trust-links{grid-template-columns:1fr 1fr;gap:16px;padding-block:24px;display:grid}.home-trust-links>a{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:16px;padding:20px;display:flex}.home-trust-links span{flex:1}.home-trust-links small{color:var(--muted);margin-top:5px;display:block}.home-trust-links svg{width:24px;height:24px;color:var(--accent);flex-shrink:0}.desktop-nav{gap:16px}@media (min-width:1001px) and (max-width:1200px){.desktop-nav{display:none!important}.menu-button{display:inline-flex!important}}@media (max-width:950px){.testimonial-card{flex-basis:calc(50% - 10px)}}@media (max-width:650px){.testimonial-card{flex-basis:88%}.region-showcase,.home-trust-links{grid-template-columns:1fr}.slider-controls{align-items:flex-start}.slider-controls button{padding:8px 10px}.region-copy,.testimonial-copy{padding:16px}.community-list ul{columns:1}}.region-jump-links{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.region-jump-links a{border:1px solid var(--line);background:var(--surface);border-radius:24px;padding:10px 14px;font-size:.85rem}.region-card,#project-communities{scroll-margin-top:115px}.region-photo-credit{color:var(--muted);margin:0;padding:8px 14px;font-size:.7rem;line-height:1.5}.region-photo-credit a{text-decoration:underline}.location-context{color:var(--muted);font-size:.85rem!important}.location-context a{text-decoration:underline}.community-groups{grid-template-columns:1fr 1fr;gap:20px;display:grid}.community-groups article{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:22px}.community-groups h3{margin-top:0}.community-groups p{color:var(--muted);font-size:.9rem}.community-list .location-chips{margin-top:14px}@media (max-width:650px){.community-groups{grid-template-columns:1fr}.community-groups article{padding:16px}}.region-city-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.region-city{border:1px solid var(--line);border-radius:10px;padding:12px}.region-city h3{margin:0 0 8px;font-size:.95rem}.region-city>a{color:var(--accent);align-items:center;gap:6px;min-height:30px;font-size:.8rem;display:inline-flex}.region-city svg{width:14px;height:14px}.region-city p{color:var(--muted);margin:8px 0 0;font-size:.8rem}.pan-india-note{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 16px;padding-block:16px;display:flex}.pan-india-note p{max-width:630px;margin:0;font-size:.9rem}.pan-india-note>a{color:var(--accent);font-size:.9rem;font-weight:600}.region-jump-links{padding-top:18px}@media (max-width:380px){.region-city-list{grid-template-columns:1fr}}
.region-showcase{grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:16px}.region-card.region-card--compact{border-radius:14px;flex-direction:column;align-items:stretch;gap:0;padding:0;transition:border-color .2s,box-shadow .2s;display:flex}.region-card--compact .media.media--natural{border:0;border-radius:12px 12px 0 0;aspect-ratio:16/10!important}.region-card--compact .region-copy{padding:14px}.region-card--compact h2{margin:0 0 5px;font-size:1.15rem}.region-card--compact .region-teaser{color:var(--muted);margin:0 0 12px;font-size:.78rem}.region-disclosure>summary{cursor:pointer;align-items:center;gap:9px;min-height:44px;font-size:.8rem;font-weight:600;list-style:none;display:flex}.region-disclosure>summary::-webkit-details-marker{display:none}.region-disclosure>summary>svg{width:14px;height:14px;margin-left:auto;transition:transform .2s}.location-circle{background:var(--tonal);width:40px;height:40px;color:var(--accent);border:1px solid var(--line);border-radius:50%;flex:0 0 40px;place-items:center;transition:background .2s,color .2s;display:grid}.location-circle svg{width:19px;height:19px}.region-disclosure[open] .location-circle{background:var(--accent);color:var(--bg)}.region-disclosure[open]>summary>svg{transform:rotate(180deg)}.region-stack{gap:9px;padding-top:12px;display:grid}.region-stack>p{color:var(--muted);margin:0 0 3px;font-size:.8rem}.region-stack .region-city{background:var(--bg);padding:10px}.region-stack .region-city h3{font-size:.85rem}.region-societies{border-top:1px solid var(--line);margin-top:8px;padding-top:8px}.region-societies summary{cursor:pointer;color:var(--accent);font-size:.75rem}.region-societies ul{overscroll-behavior:contain;max-height:220px;margin:8px 0;padding:0;list-style:none;overflow:auto}.region-societies li a{border-bottom:1px solid var(--line);padding:9px 4px;font-size:.78rem;display:block}.region-credit-details{color:var(--muted);margin-top:12px;font-size:.65rem}.region-credit-details summary{cursor:pointer}.region-credit-details p{margin:5px 0;font-size:.65rem}.region-disclosure>summary:focus-visible,.region-credit-details summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.region-card--compact:has(.region-disclosure[open]){border-color:var(--accent);box-shadow:0 8px 24px #00000008}.region-card--compact .region-art{height:140px}@media (prefers-reduced-motion:no-preference){.region-disclosure[open] .region-stack{animation:.28s ease-out location-reveal}@keyframes location-reveal{0%{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}}@media (max-width:1200px){.region-showcase{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:1000px){.region-showcase{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:700px){.region-showcase{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.region-card--compact .region-copy{padding:11px}.region-card--compact h2{font-size:1rem}.region-disclosure>summary{gap:6px;font-size:.72rem}.location-circle{flex-basis:34px;width:34px;height:34px}}@media (max-width:360px){.region-showcase{grid-template-columns:1fr}}
main :is(h1,h2,h3){text-wrap:balance;letter-spacing:-.025em}main :is(.page-intro,.section-heading,.contact-heading)>p{text-wrap:pretty}main :is(.section-heading,.contact-heading) h2:after,.contact-heading h1:after{content:"";background:var(--accent);border-radius:2px;width:48px;height:2px;margin:14px auto 0;display:block}main .section{background-image:linear-gradient(90deg,transparent,var(--line) 18%,var(--accent) 50%,var(--line) 82%,transparent);background-position:top;background-repeat:no-repeat;background-size:100% 1px;border-top-color:#0000}main .page-intro{border-bottom-color:var(--line)}main :is(.section-heading,.page-intro,.contact-info,.detail-note) p strong{color:var(--text);font-weight:600}.text-highlight{background:linear-gradient(transparent 72%,var(--tonal) 72%);padding-inline:2px}main :is(.page-intro,.detail-note) p a,main p.contact-tip a,main .page-intro>p a{text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:4px;text-decoration-thickness:1px}.contact-service-notes{gap:10px;margin:20px 0;padding:0;list-style:none;display:grid}.contact-service-notes li{color:var(--text);align-items:center;gap:10px;font-size:.86rem;line-height:1.5;display:flex}.contact-service-notes svg{width:19px;height:19px;color:var(--accent);flex:0 0 19px}.contact-form-heading{border-bottom:1px solid var(--line);padding-bottom:18px}.contact-tip{border-left:2px solid var(--accent);background:var(--tonal);border-radius:0 8px 8px 0;padding:14px 16px}.contact-info .text-highlight{text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:4px}main .eyebrow{font-weight:600}@media (hover:hover) and (pointer:fine){main :is(.page-intro,.detail-note) p a:hover{text-decoration-thickness:2px}}@media (prefers-reduced-motion:no-preference){.contact-service-notes svg{transition:transform .2s}.contact-service-notes li:hover svg{transform:translateY(-2px)}}.seo-breadcrumbs ol{color:var(--muted);flex-wrap:wrap;gap:8px;margin:0;padding:16px 0 0;font-size:.78rem;list-style:none;display:flex}.seo-breadcrumbs li+li:before{content:"/";color:var(--accent);margin-right:8px}.seo-breadcrumbs a{text-underline-offset:3px}.seo-breadcrumbs a:hover{text-decoration:underline}
.project-guide{grid-template-columns:1fr 1.15fr;gap:clamp(24px,5vw,64px);display:grid}.project-guide h2{margin:0 0 18px;font-size:clamp(1.6rem,3vw,2.2rem)}.project-steps{gap:16px;margin:0;padding:0;list-style:none;display:grid}.project-steps li{align-items:flex-start;gap:14px;display:flex}.step-number{border:1px solid var(--line);background:var(--tonal);height:34px;color:var(--accent);border-radius:50%;flex:0 0 34px;place-items:center;font-size:.75rem;font-weight:600;display:grid}.project-steps h3{margin:0 0 4px;font-family:inherit;font-size:.95rem}.project-steps p,.project-faqs p{color:var(--muted);margin:0;font-size:.88rem;line-height:1.65}.project-faqs details{border-bottom:1px solid var(--line)}.project-faqs summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:12px 0;font-size:.9rem;font-weight:600;list-style:none;display:flex}.project-faqs summary::-webkit-details-marker{display:none}.project-faqs summary svg{width:16px;height:16px;color:var(--accent);flex:0 0 16px}.project-faqs details[open] summary svg{transform:rotate(180deg)}.project-faqs summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.project-faqs p{padding:0 20px 16px 0}.before-after-pair{grid-template-columns:1fr 1fr;gap:16px;display:grid}.before-after-project+.before-after-project{margin-top:24px}.before-after-project>h3{text-transform:capitalize;font-size:1.1rem}.comparison-frame{border:1px solid var(--line);background:var(--surface);border-radius:12px;min-width:0;overflow:hidden}.comparison-label{letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid var(--line);color:var(--text);padding:9px 14px;font-size:.75rem;font-weight:600;display:block}.comparison-frame .media{border:0;border-radius:0;margin:0}.comparison-placeholder{background:linear-gradient(135deg,var(--tonal),var(--surface));text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:180px;padding:20px;display:flex}.comparison-placeholder svg{width:28px;height:28px;color:var(--accent);margin-bottom:12px}.comparison-placeholder p{margin:0 0 6px;font-size:.95rem}.comparison-placeholder small{color:var(--muted);font-size:.75rem}@media (max-width:750px){.project-guide{grid-template-columns:1fr;gap:28px}}@media (max-width:600px){.before-after-pair{grid-template-columns:1fr;gap:12px}.comparison-placeholder{min-height:140px}}@media (prefers-reduced-motion:no-preference){.project-faqs summary svg{transition:transform .2s}}

