:root{--ink:#202322;--paper:#f7f7f3;--white:#fff;--muted:#626764;--line:#d9dcd6;--accent:#b8242c;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #bd5d4e;outline-offset:5px}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3{margin:0}p+p{margin-top:20px}h1,h2,h3{font-weight:500;line-height:1.12}h1,h2{letter-spacing:-.055em}h2{font-size:clamp(36px,4.3vw,66px)}h2 em,h1 em{font:italic 1.04em/1.12 var(--serif);letter-spacing:-.06em}h3{font-size:24px;letter-spacing:-.035em}.skip-link{position:fixed;top:-100px;left:10px;padding:12px;background:white;z-index:100}.skip-link:focus{top:10px}.site-header{padding:17px 4%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:20}.brand{display:flex;align-items:center;gap:13px;flex-shrink:0}.brand img{width:64px;height:64px;object-fit:contain}.brand>span{font-size:21px;font-weight:700;letter-spacing:.06em;line-height:1.25}.brand small{display:block;font-size:12px;letter-spacing:.12em;margin-top:7px;font-weight:400}.site-header nav{display:flex;align-items:center;gap:32px;font-size:14px}.site-header nav>a{padding:10px 0;transition:color .2s}.site-header nav>a:hover{color:var(--accent)}.site-header nav .nav-contact{padding:14px 20px;border:1px solid #9fa5a0;display:flex;gap:25px;align-items:center}.nav-contact span{font-size:22px}.menu-toggle{display:none}.eyebrow{font-size:12px;font-weight:500;line-height:1.5;letter-spacing:.14em;margin-bottom:30px;display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';width:24px;height:1px;background:var(--accent)}.eyebrow.light{color:#daddd8}.hero{display:grid;grid-template-columns:46% 54%;min-height:650px;background:var(--ink);color:var(--white)}.hero-copy{padding:70px 7% 40px 9%;display:flex;flex-direction:column;align-items:flex-start;position:relative}.hero h1{font-size:clamp(56px,6.15vw,96px);line-height:1.02;letter-spacing:-.065em;margin:5px 0 27px}.hero h1 em{color:#e3d6c6}.hero-description{font-size:17px;line-height:1.8;color:#c8ceca;max-width:400px}.button{min-height:58px;display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:15px 23px;font-size:15px;font-weight:500;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:24px;line-height:1}.button-white{background:var(--white);color:var(--ink);margin-top:33px}.button-white:hover{background:#eaece5}.button-red{background:var(--accent);color:white}.button-red:hover{background:#981c23}.hero-secondary{font-size:14px;margin:19px 0 40px;display:flex;gap:15px;align-items:center;border-bottom:1px solid #606760;padding-bottom:5px}.hero-note{font-size:12px;color:#aeb5ad;display:flex;align-items:center;gap:14px;margin-top:auto}.line{width:35px;height:1px;background:#818980}.hero-image{position:relative;min-width:0;overflow:hidden}.hero-image>img{height:100%;width:100%;object-fit:cover;object-position:54% center}.hero-image:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(17,25,18,.7));pointer-events:none}.hero-image figcaption{position:absolute;z-index:1;bottom:41px;left:37px;color:white}.hero-image figcaption span:first-child{display:block;font-size:12px;letter-spacing:.17em;margin-bottom:14px}.hero-image figcaption span:last-child{display:block;font-size:23px;line-height:1.4;letter-spacing:-.02em}.image-link{position:absolute;z-index:2;right:30px;bottom:44px;border:1px solid #ffffff80;border-radius:50%;width:52px;height:52px;display:grid;place-items:center;font-size:26px}.facts{display:grid;grid-template-columns:1fr 1fr 1.2fr;padding:33px 6%;border-bottom:1px solid var(--line);background:#eeefe9}.facts>div{display:flex;align-items:center;gap:28px;padding:0 38px;border-left:1px solid #cbd0c7}.facts>div:first-child{padding-left:0;border:0}.facts strong{font-size:58px;font-weight:400;letter-spacing:-.07em;line-height:1}.facts strong>span{color:var(--accent)}.facts .fact-word{font-size:29px;letter-spacing:-.045em;line-height:1.12}.facts>div>span{color:var(--muted);font-size:13px;line-height:1.55}.section-wrap{padding:105px 6%}.intro{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:start}.intro-copy{max-width:550px}.lead{font-size:23px;line-height:1.5;letter-spacing:-.02em;margin-bottom:26px}.intro-copy>p:not(.lead){color:var(--muted)}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:5px 0 8px;font-size:14px;font-weight:500}.text-link span{font-size:21px}.intro-copy .text-link{margin-top:27px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-bottom:50px}.section-heading>p{color:var(--muted);font-size:15px;max-width:350px}.services{background:#eeefe9}.service-layout{display:grid;grid-template-columns:.8fr 1fr;gap:8%;align-items:start}.service-photo{position:relative;height:540px}.service-photo img{height:100%;object-fit:cover;object-position:50% 44%}.service-photo figcaption{position:absolute;left:0;right:0;bottom:0;padding:45px 24px 23px;background:linear-gradient(transparent,#0009);color:white;font-size:14px}.service-list{border-top:1px solid #bac1b6}.service-list details{border-bottom:1px solid #c9cfc5}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.service-list summary{display:flex;align-items:center;gap:22px;padding:30px 0}.service-list summary h3{font-size:28px}.service-no{font-size:12px;color:var(--accent);min-width:21px}.plus{width:15px;height:15px;position:relative;margin-left:auto;flex:0 0 15px}.plus:before,.plus:after{content:'';position:absolute;top:7px;left:0;width:15px;height:1px;background:var(--ink)}.plus:after{transform:rotate(90deg);transition:transform .2s}details[open] .plus:after{transform:rotate(0)}.service-body{padding:0 30px 30px 43px;color:var(--muted);max-width:520px}.service-body .text-link{margin-top:18px;color:var(--ink)}.project-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:32px}.gallery-open{padding:0;border:0;background:transparent;color:inherit;text-align:left;display:block;position:relative;width:100%;overflow:hidden}.project .gallery-open{height:475px}.gallery-open img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.gallery-open:hover img{transform:scale(1.035)}.photo-enlarge{position:absolute;right:20px;bottom:20px;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#fff;font-size:22px}.project figcaption{display:flex;justify-content:space-between;gap:20px;align-items:end;padding:23px 0}.category{display:block;font-size:12px;letter-spacing:.1em;color:var(--muted);margin-bottom:9px}.project h3{font-size:25px}.project-index{font-size:13px;color:#777}.gallery-heading{display:flex;justify-content:space-between;align-items:center;margin:48px 0 22px;border-top:1px solid var(--line);padding-top:27px}.gallery-heading h3{font-size:23px}.gallery-heading>span{font-size:14px;color:var(--muted)}.work-gallery{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.work-gallery .gallery-open{overflow:visible}.work-gallery img{height:205px;object-fit:cover}.work-gallery .gallery-open:hover img{transform:none;filter:brightness(.92)}.work-gallery .gallery-open>span{display:flex;justify-content:space-between;gap:4px;font-size:13px;margin-top:11px}.work-gallery i{font-style:normal}.film-section{display:grid;grid-template-columns:1.3fr .7fr;gap:6%;padding:80px 12%;background:var(--ink);color:white;align-items:center;overflow:hidden}.film-copy{max-width:660px}.film-copy h2{font-size:clamp(42px,4.7vw,72px);margin-bottom:30px}.film-copy h2 em{color:#e3d6c6}.film-copy>p:not(.eyebrow){color:#b6bfb7}.film-copy .film-note{font-size:12px;margin-top:55px}.film-frame{display:flex;justify-content:center}.film-frame video{display:block;max-height:510px;width:auto;max-width:100%;background:black;border:1px solid #51584f;object-fit:contain}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}.process-grid article{padding-top:22px;border-top:1px solid #b8c0b5}.process-grid article>span{font-size:12px;letter-spacing:.06em;color:var(--accent)}.process-grid h3{font-size:25px;margin:25px 0 18px}.process-grid p{font-size:15px;color:var(--muted)}.contact{background:#e9ece5;display:grid;grid-template-columns:.8fr 1.2fr;gap:10%}.contact-copy h2{font-size:clamp(45px,5.2vw,78px)}.contact-copy>p:not(.eyebrow){max-width:340px;color:var(--muted);margin-top:30px}.contact-location{margin-top:55px;display:flex;flex-direction:column;gap:12px;padding-top:27px;border-top:1px solid #c0c8bc;max-width:320px}.contact-location>span{font-size:13px;color:var(--muted)}.contact-location>span:first-child{font-size:12px;letter-spacing:.1em}.contact-location strong{font-size:27px;font-weight:500;letter-spacing:-.03em}.direct-contacts{margin-top:24px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;overflow-wrap:anywhere}fieldset{margin:0;padding:0;border:0;min-width:0}legend{padding:0;font-size:16px;margin-bottom:15px}.service-choices{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.service-choices label{position:relative;cursor:pointer}.service-choices input{position:absolute;opacity:0;width:1px;height:1px}.service-choices span{display:block;padding:9px 13px;border:1px solid #afb9a9;font-size:13px;transition:.2s}.service-choices input:checked+span{background:var(--ink);border-color:var(--ink);color:white}.service-choices input:focus-visible+span{outline:3px solid var(--accent);outline-offset:2px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px 20px}.form-grid label,.message-label{display:block;font-size:13px}.form-grid input,.message-label textarea{display:block;margin-top:7px;width:100%;background:#ffffff50;border:0;border-bottom:1px solid #aeb9a7;border-radius:0;padding:13px 12px;color:var(--ink);font-size:16px;min-height:48px}.form-grid input::placeholder,.message-label textarea::placeholder{font-size:14px;color:#636d5e;opacity:1}.optional{color:var(--muted);font-size:12px}.message-label{margin-top:25px}.message-label textarea{resize:vertical;min-height:110px}.form-note{font-size:12px;color:#5b6556;margin-top:18px;line-height:1.6}.submit-button{width:100%;margin-top:20px}.form-result{padding:22px 0 0}.form-result>p{font-size:14px;margin:10px 0}.form-result textarea{display:block;width:100%;background:white;border:1px solid #bdc7b6;padding:14px;font-size:14px;line-height:1.5}.form-result .text-link{margin-top:15px}#copy-status{font-size:13px;margin-left:15px}.privacy-consent{font-size:13px;display:flex;gap:10px;align-items:flex-start;margin-top:20px}.privacy-consent input{margin-top:5px}.privacy-consent a{text-decoration:underline}.honey-field{position:absolute;left:-9999px}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;padding-top:80px;padding-bottom:90px}.faq .eyebrow{max-width:250px}.faq details{border-bottom:1px solid var(--line)}.faq summary{font-size:17px;display:flex;align-items:center;gap:20px;padding:21px 0}.faq details:first-child summary{padding-top:0}.faq details>p{font-size:15px;color:var(--muted);padding:0 30px 23px 0;line-height:1.75}.footer{padding:50px 6% 22px;background:var(--ink);color:white}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:43px}.footer .brand img{width:80px;height:80px}.footer-top>p{font-size:28px;line-height:1.2;letter-spacing:-.04em}.footer-top>p em{font-family:var(--serif);font-weight:400;color:#bfc6b9}.back-top{font-size:13px;display:flex;gap:30px}.back-top span{font-size:21px}.footer-bottom{border-top:1px solid #495044;padding-top:20px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;color:#b5beb0;font-size:12px}.footer-bottom a{text-decoration:underline}.mobile-contact{display:none}dialog{border:0;padding:62px 35px 24px;color:white;background:#202322;width:min(1120px,94vw);height:min(94dvh,1000px);max-width:94vw;max-height:94dvh}dialog::backdrop{background:#0b100ded;backdrop-filter:blur(5px)}.dialog-close{position:absolute;top:14px;right:23px;border:0;background:transparent;color:white;font-size:14px;display:flex;align-items:center;gap:12px;min-height:40px}.dialog-close span{font-size:29px}.dialog-image-wrap{height:calc(100% - 60px);display:flex;align-items:center;justify-content:center;gap:18px}.dialog-image-wrap img{width:calc(100% - 100px);height:100%;object-fit:contain}.gallery-prev,.gallery-next{width:40px;height:50px;flex-shrink:0;background:transparent;border:1px solid #ffffff50;color:white;font-size:28px}.dialog-caption{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;font-size:14px}.dialog-caption>span{white-space:nowrap;color:#bcc3b8}.wp-body{padding:60px 6%;max-width:1000px;margin:auto;min-height:60vh}.wp-body h1{font-size:50px;margin-bottom:30px}.wp-body p{margin-top:18px}.wp-body a{text-decoration:underline}.admin-bar .site-header{top:32px}
@media(min-width:1600px){.hero-copy{padding-top:100px;padding-bottom:55px}.hero{min-height:780px}.hero h1{font-size:104px}.section-wrap{padding-left:max(6%,calc((100vw - 1500px)/2));padding-right:max(6%,calc((100vw - 1500px)/2))}}
@media(max-width:1150px){.site-header nav{gap:20px}.brand>span{font-size:18px}.brand small{font-size:9px}.site-header nav .nav-contact{gap:13px;padding:12px}.hero-copy{padding-top:55px}.hero h1{font-size:70px}.hero{min-height:620px}.facts>div{gap:18px;padding:0 25px}.facts .fact-word{font-size:24px}.facts>div>span{font-size:12px}.section-wrap{padding:85px 5%}.service-layout{gap:5%}.service-list summary h3{font-size:25px}.project .gallery-open{height:410px}.work-gallery{grid-template-columns:repeat(3,1fr);gap:26px 18px}.work-gallery img{height:270px}.film-section{padding:70px 8%}.contact,.faq{gap:6%}.intro{gap:6%}}
@media(max-width:900px){.site-header{padding:12px 5%;min-height:88px}.brand img{width:57px;height:57px}.menu-toggle{display:flex;gap:10px;align-items:center;border:0;background:none;font-size:14px;padding:12px 0 12px 12px}.menu-lines{width:22px;height:12px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:24px 5%;box-shadow:0 15px 20px #0001;border-top:1px solid var(--line)}.site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:12px}.site-header nav .nav-contact{justify-content:space-between}.hero{grid-template-columns:1fr 1fr;min-height:585px}.hero h1{font-size:58px}.hero-copy{padding:45px 9% 30px}.hero-description{font-size:15px}.hero .button{font-size:13px;gap:12px;padding:13px 15px}.hero-note{font-size:12px}.hero-note .line{width:15px}.hero-image figcaption{left:24px;bottom:30px}.hero-image figcaption span:last-child{font-size:20px}.image-link{right:18px;bottom:33px;width:38px;height:38px;font-size:21px}.facts{padding:28px 5%;grid-template-columns:1fr 1fr 1fr}.facts>div{align-items:flex-start;flex-direction:column;gap:12px;padding:0 20px}.facts strong{font-size:44px}.facts .fact-word{font-size:26px;min-height:44px}.intro{grid-template-columns:1fr;gap:35px}.intro-copy{max-width:none}.service-layout{grid-template-columns:.65fr 1fr}.service-photo{height:510px}.service-list summary{gap:12px;padding:25px 0}.service-list summary h3{font-size:22px}.service-body{padding-left:33px;padding-right:10px;font-size:15px}.project-grid{gap:22px}.project h3{font-size:21px}.project .gallery-open{height:350px}.film-section{padding:60px 6%;gap:30px;grid-template-columns:1fr .7fr}.film-copy h2{font-size:45px}.film-frame video{max-height:430px}.process-grid{gap:28px}.process-grid h3{font-size:22px}.contact{grid-template-columns:1fr;gap:50px}.contact-copy{display:grid;grid-template-columns:1fr 1fr;gap:15px 30px}.contact-copy .eyebrow{grid-column:1/-1;margin-bottom:5px}.contact-copy h2{grid-row:2/4}.contact-copy>p:not(.eyebrow){margin-top:0;max-width:none}.contact-location{margin-top:12px;max-width:none;gap:7px;padding-top:16px}.faq{grid-template-columns:1fr;gap:20px}.faq .eyebrow{max-width:none}.footer-top>p{font-size:24px}.footer .brand>span{font-size:16px}.footer .brand small{font-size:8px}}
@media(max-width:600px){html{scroll-padding-top:22px}.site-header{padding:10px 5%;min-height:78px}.brand img{width:52px;height:52px}.brand{gap:10px}.brand>span{font-size:18px}.brand small{font-size:8px;letter-spacing:.1em}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:40px 6% 32px}.hero .eyebrow{margin-bottom:23px;font-size:12px}.hero h1{font-size:clamp(53px,12.7vw,77px);margin:0 0 23px}.hero-description{font-size:16px;line-height:1.65}.hero .button{font-size:14px;gap:28px;padding:14px 19px;margin-top:27px}.hero-secondary{font-size:13px;margin:18px 0 0}.hero-note{display:none}.hero-image{height:345px}.hero-image>img{object-position:center 58%}.hero-image figcaption{left:24px;bottom:23px}.hero-image figcaption span:first-child{font-size:12px;margin-bottom:9px}.hero-image figcaption span:last-child{font-size:20px}.image-link{bottom:26px;right:24px;width:42px;height:42px}.facts{padding:24px 6%;grid-template-columns:.75fr 1fr}.facts>div{padding:0 22px;gap:9px}.facts strong{font-size:45px}.facts .fact-word{font-size:29px;min-height:45px;display:flex;align-items:center}.facts>div:last-child{display:none}.facts>div>span{font-size:12px}.section-wrap{padding:65px 6%}.eyebrow{font-size:12px;margin-bottom:21px;letter-spacing:.1em}h2{font-size:39px;letter-spacing:-.055em}.intro{gap:30px}.lead{font-size:21px;margin-bottom:20px}.intro-copy>p:not(.lead){font-size:15px}.intro-copy .text-link{margin-top:23px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:24px;font-size:14px}.section-heading>.text-link{margin-top:24px}.desktop-only{display:none}.service-layout{display:flex;flex-direction:column;gap:30px}.service-photo{height:290px;width:100%;overflow:hidden}.service-photo img{object-position:center 48%}.service-list{width:100%}.service-list summary{padding:23px 0;gap:13px}.service-list summary h3{font-size:24px}.service-body{padding-left:34px;font-size:15px}.project-grid{grid-template-columns:1fr;gap:25px}.project .gallery-open{height:auto;aspect-ratio:1.18}.project:nth-child(2) .gallery-open{aspect-ratio:1.2}.project:nth-child(2) img{object-position:center 62%}.project figcaption{padding:18px 0}.project h3{font-size:24px}.category{font-size:12px;margin-bottom:8px}.gallery-heading{margin-top:22px;padding-top:24px}.gallery-heading h3{font-size:21px}.gallery-heading>span{font-size:12px}.work-gallery{grid-template-columns:1fr 1fr;gap:23px 14px}.work-gallery img{height:210px}.work-gallery .gallery-open>span{font-size:12px;line-height:1.5}.film-section{grid-template-columns:1fr;padding:55px 6%;gap:33px}.film-copy h2{font-size:41px;margin-bottom:22px}.film-copy>p:not(.eyebrow){font-size:15px}.film-copy .film-note{margin-top:24px;font-size:12px}.film-frame video{width:auto;max-height:460px;max-width:100%}.process-grid{grid-template-columns:1fr;gap:30px}.process-grid article{padding-top:20px}.process-grid h3{margin:16px 0 12px;font-size:25px}.process-grid p{font-size:15px}.contact{gap:36px}.contact-copy{display:block}.contact-copy .eyebrow{margin-bottom:20px}.contact-copy h2{font-size:53px}.contact-copy>p:not(.eyebrow){margin-top:24px;font-size:15px}.contact-location{margin-top:25px;padding-top:20px}.contact-location>span:last-child{display:none}.contact-location strong{font-size:24px}.form-grid{gap:20px 15px}.form-grid input{padding:12px 7px}.form-grid input::placeholder{font-size:12px}.form-grid label,.message-label{font-size:12px}.service-choices{gap:8px}.service-choices span{font-size:12px;padding:9px 11px}.optional{font-size:12px}.faq{padding-top:55px;padding-bottom:65px}.faq summary{font-size:16px;line-height:1.5;padding:21px 0}.faq details>p{font-size:14px}.footer{padding:38px 6% 94px}.footer-top{flex-wrap:wrap;gap:27px;padding-bottom:30px}.footer .brand img{width:64px;height:64px}.footer .brand>span{font-size:18px}.footer-top>p{font-size:25px}.back-top{width:100%;justify-content:space-between;border-top:1px solid #495044;padding-top:20px}.footer-bottom{gap:12px;font-size:12px}.mobile-contact{position:fixed;bottom:0;left:0;right:0;background:var(--accent);color:white;z-index:15;display:flex;justify-content:space-between;align-items:center;padding:14px 6% calc(14px + env(safe-area-inset-bottom));font-size:14px;box-shadow:0 -4px 18px #0001}.mobile-contact span{font-size:23px;line-height:1}.mobile-contact.is-hidden{display:none}dialog{padding:60px 10px 20px;max-width:100vw;width:100vw;max-height:100dvh;height:100dvh}.dialog-image-wrap{gap:4px}.dialog-image-wrap img{width:calc(100% - 64px)}.gallery-prev,.gallery-next{width:28px;height:44px;font-size:23px}.dialog-caption{font-size:12px;padding:0 12px}.dialog-close{right:17px}.wp-body h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.form-notice{padding:18px;border-left:3px solid var(--accent);background:white;font-size:15px;margin-bottom:24px}.hero-copy h1{overflow-wrap:normal}.wp-body img{max-width:100%;height:auto}

/* The villa takes centre stage. No decorative arrows. */
.hero{grid-template-columns:43% 57%;min-height:700px}.hero-copy{padding-left:11%;padding-right:7%}.hero h1{font-size:clamp(54px,5.9vw,88px)}.hero .button{justify-content:center}.nav-contact{justify-content:center}.house-panel{background:#e8e6e0;color:var(--ink);position:relative;display:flex;flex-direction:column;min-width:0;padding:29px 28px 22px;overflow:hidden}.house-heading{display:flex;gap:20px;justify-content:space-between;align-items:center;font-size:12px;line-height:1.5}.house-heading>span:first-child{letter-spacing:.11em}.house-heading>span:last-child{color:#71736c;font-size:12px}.house-panel #house-scene{position:relative;min-width:0;flex:1;min-height:400px;width:100%;height:430px;cursor:grab}.house-panel #house-scene:active{cursor:grabbing}.house-panel canvas{display:block;width:100%;height:100%}#house-fallback{position:absolute;inset:22px 0;width:100%;height:calc(100% - 44px);object-fit:cover;border-radius:2px}#house-fallback[hidden]{display:none}#house-scene[data-state=fallback] canvas{display:none}.house-status{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px}.house-status strong{font-weight:500;font-size:17px}.house-drag{font-size:12px;color:#72736b}.house-range-label{position:absolute;clip-path:inset(50%);height:1px;width:1px;overflow:hidden}#house-progress{display:block;appearance:none;width:100%;height:3px;background:linear-gradient(to right,#a9272c 0 var(--progress,0%),#c7c8bf var(--progress,0%) 100%);margin:20px 0 18px;cursor:pointer;accent-color:var(--accent)}#house-progress::-webkit-slider-thumb{appearance:none;background:var(--accent);height:13px;width:13px;border:3px solid #e8e6e0;outline:1px solid var(--accent);border-radius:50%}#house-progress::-moz-range-thumb{background:var(--accent);height:8px;width:8px;border:3px solid #e8e6e0;border-radius:50%}.house-stages{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.house-stages button{border:0;padding:8px 0;background:none;text-align:left;color:#6e7369;font-size:13px;line-height:1.4;min-height:42px}.house-stages button>span{display:block;font-size:12px;margin-bottom:3px;color:#8a8d81}.house-stages button[aria-pressed=true]{color:var(--ink);font-weight:600}.house-stages button[aria-pressed=true]>span{color:var(--accent)}.house-actions{margin-top:17px;padding-top:15px;border-top:1px solid #caccc2;display:flex;justify-content:space-between;gap:13px}.house-actions button{border:0;border-bottom:1px solid #858c7e;background:none;padding:4px 0;color:#414a3b;font-size:12px;min-height:33px}.house-actions button:hover{color:var(--accent);border-color:var(--accent)}.house-panel [hidden]{display:none!important}.service-cards{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid #c6cbc0;border-left:1px solid #c6cbc0}.service-cards article{padding:38px 38px 34px;border-right:1px solid #c6cbc0;border-bottom:1px solid #c6cbc0;background:#f8f9f4;display:flex;flex-direction:column;align-items:flex-start}.service-card-number{font-size:13px;color:var(--accent);margin-bottom:24px}.service-cards h3{font-size:31px;margin-bottom:21px}.service-cards article>p{color:var(--muted);font-size:16px;line-height:1.8}.service-scope{border-top:1px solid #d8dcd1;margin:25px 0;padding-top:20px;width:100%}.service-scope>span{font-size:12px;letter-spacing:.08em;color:#5f6959}.service-scope p{font-size:14px;line-height:1.75;margin-top:9px;color:#68715f}.service-cards .text-link{margin-top:auto;line-height:1.5}.section-heading{margin-bottom:42px}.text-link{gap:0}.submit-button{justify-content:center}.project figcaption{align-items:center}.gallery-prev,.gallery-next{width:78px;font-size:12px}.dialog-image-wrap img{width:calc(100% - 195px)}.mobile-contact{justify-content:center}
@media(max-width:1150px){.hero{grid-template-columns:42% 58%}.hero-copy{padding-left:10%;padding-right:6%}.hero h1{font-size:62px}.house-panel{padding:24px 23px 20px}.house-panel #house-scene{height:380px;min-height:350px}.house-heading{font-size:12px}.house-heading>span:last-child{font-size:12px}.service-cards article{padding:30px}.service-cards h3{font-size:28px}}
@media(max-width:900px){.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:45px 6% 38px}.hero h1{font-size:76px}.hero-description{max-width:480px}.hero .button{font-size:15px;padding:15px 24px}.hero-secondary{margin-bottom:0}.hero-note{display:none}.house-panel{padding:27px 6% 24px}.house-panel #house-scene{min-height:440px;height:440px}.house-heading{font-size:12px}.house-heading>span:last-child{font-size:12px}.house-stages button{font-size:14px}.service-cards h3{font-size:26px}.service-cards article{padding:26px}.service-cards article>p{font-size:15px}}
@media(max-width:600px){.hero-copy{padding:36px 6% 32px}.hero h1{font-size:clamp(53px,12.7vw,77px)}.hero-description{font-size:16px}.hero .button{margin-top:24px}.house-panel{padding:22px 6% 19px}.house-heading{gap:14px;font-size:12px}.house-heading>span:last-child{font-size:12px;max-width:105px;text-align:right}.house-panel #house-scene{height:355px;min-height:355px}.house-status strong{font-size:15px}.house-drag{font-size:12px}.house-stages{gap:6px}.house-stages button{font-size:12px;min-height:48px}.house-stages button>span{font-size:12px}.house-actions{gap:12px;margin-top:8px;padding-top:10px}.house-actions button{font-size:12px;min-height:40px}.service-cards{grid-template-columns:1fr}.service-cards article{padding:28px 24px}.service-cards h3{font-size:28px}.service-card-number{margin-bottom:18px}.service-cards article>p{font-size:16px}.service-scope p{font-size:14px}.gallery-prev,.gallery-next{width:53px;font-size:12px;border:0}.dialog-image-wrap img{width:calc(100% - 120px)}.house-panel #house-controls{padding-bottom:3px}}

.form-notice{padding:18px;border-left:3px solid var(--accent);background:white;font-size:15px;margin-bottom:24px}.hero-copy h1{overflow-wrap:normal}.wp-body img{max-width:100%;height:auto}

/* Separate pages, a clear navigation grid and a new editorial home. */
.site-header{position:sticky;top:0;background:#f7f7f3f5;backdrop-filter:blur(12px);padding-top:12px;padding-bottom:12px}.site-header nav{gap:5px}.site-header nav>a{padding:13px 20px;border-bottom:2px solid transparent;font-size:14px}.site-header nav>a[aria-current=page]{border-color:var(--accent);color:var(--accent)}.site-header nav>a:hover{background:#e9ece4}.home-intro{padding:54px 6% 40px;display:grid;grid-template-columns:1.3fr 1fr;align-items:end;gap:8%}.home-intro h1{font-size:clamp(49px,5.7vw,85px);line-height:1.05;letter-spacing:-.055em}.home-intro h1 em{color:#923238}.home-intro .eyebrow{margin-bottom:22px}.home-intro-copy>p{font-size:17px;color:#60665b;line-height:1.75;max-width:470px}.home-buttons{display:flex;gap:23px;align-items:center;flex-wrap:wrap;margin-top:23px}.home-buttons .button{font-size:14px;min-height:51px;padding:12px 20px}.home-buttons .text-link{font-size:13px}.home-model{padding:0 6% 45px}.home-model .house-panel{display:grid;grid-template-columns:minmax(0,1fr) 265px;align-items:center;padding:25px 30px 25px 20px;gap:10px 32px;border-top:1px solid #d7dbd0;border-bottom:1px solid #d7dbd0;background:#eae9e3}.home-model .house-heading{grid-column:1/-1;padding-left:14px}.home-model #house-scene{height:400px;min-height:400px;grid-column:1;grid-row:2}.home-model #house-controls{grid-column:2;grid-row:2;padding:0 2px}.home-model .house-status{flex-direction:column;align-items:flex-start;gap:8px}.home-model .house-status strong{font-size:19px}.home-model .house-stages{grid-template-columns:1fr 1fr;gap:16px 20px}.home-model .house-stages button{font-size:14px}.home-model .house-actions{flex-wrap:wrap;gap:14px 20px}.home-model .house-actions button{font-size:12px}.home-destinations{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:0 6% 70px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.home-destinations>a{padding:32px 30px;display:flex;flex-direction:column;border-right:1px solid var(--line);transition:background .2s}.home-destinations>a:first-child{padding-left:0}.home-destinations>a:last-child{border-right:0}.home-destinations>a:hover{background:#eeefe9}.home-destinations>a>span{font-size:12px;letter-spacing:.09em;color:#737969;margin-bottom:20px}.home-destinations h2{font-size:32px;letter-spacing:-.04em;line-height:1.12}.home-destinations p{font-size:14px;line-height:1.7;color:#676e5d;margin:17px 0 20px}.home-destinations strong{font-size:13px;font-weight:500;margin-top:auto;text-decoration:underline;text-underline-offset:5px}.page-title{padding-top:65px;padding-bottom:47px}.page-title h1,.intro h1{font-size:clamp(43px,5.2vw,76px);line-height:1.1}.page-description{max-width:730px;font-size:18px;line-height:1.8;color:var(--muted);margin-top:29px}.page-cta{padding:50px 6%;background:#e9ece4;display:flex;align-items:center;justify-content:space-between;gap:30px}.page-cta h2{font-size:37px}.page-cta .eyebrow{margin-bottom:14px}.page-cta .button{white-space:nowrap}.inner-page .intro{padding-top:70px;padding-bottom:65px}.company-image{position:relative;margin:0 6%}.company-image img{height:470px;object-fit:cover;object-position:center 50%}.company-image>p{position:absolute;left:0;bottom:0;right:0;padding:60px 30px 24px;background:linear-gradient(transparent,#202322bd);color:white;font-size:24px}.service-overview{padding-top:0;padding-bottom:70px}.breadcrumb{display:flex;gap:12px;padding:30px 6% 0;font-size:13px;color:#68715f}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}.breadcrumb+.page-title{padding-top:35px}.service-detail{padding:0 6% 70px;display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start}.service-detail figure img{width:100%;height:480px;object-fit:cover}.service-detail figcaption{font-size:12px;color:var(--muted);margin-top:10px}.service-detail h2{font-size:35px;line-height:1.15;margin-bottom:23px}.service-detail p{font-size:16px;line-height:1.8;color:var(--muted)}.service-detail ul{padding-left:19px;line-height:1.8;margin:23px 0;color:#46503f}.service-detail li{padding:4px 0}.service-detail .button{margin-top:27px}.gallery-categories{display:flex;flex-wrap:wrap;gap:10px;padding:0 6% 25px}.gallery-categories a{padding:10px 18px;border:1px solid #bfc7b7;font-size:14px;background:#eeefe9}.gallery-categories a:hover{background:var(--ink);color:white}.gallery-section{padding-top:36px;padding-bottom:30px;scroll-margin-top:100px}.gallery-section-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid var(--line);padding:28px 0}.gallery-section-heading h2{font-size:34px}.gallery-section-heading>span{font-size:13px;color:var(--muted)}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 24px}.portfolio-grid .gallery-open{aspect-ratio:4/3}.portfolio-grid img{height:100%;width:100%;object-fit:cover}.portfolio-grid figcaption{font-size:14px;color:#535d49;margin-top:12px}.open-photo{position:absolute;right:12px;bottom:12px;padding:6px 11px;background:#ffffffed;color:#202322;font-size:12px}.gallery-section:last-of-type{padding-bottom:65px}.inner-page .film-section{margin-top:35px}.contact h1{font-size:clamp(45px,5.2vw,78px);line-height:1.1}.inner-page .contact{padding-top:68px;padding-bottom:65px}.inner-page .faq{padding-top:55px;padding-bottom:65px}.footer-top{padding-bottom:30px}.footer{padding-top:35px}.footer .back-top{font-size:14px}.footer-bottom{padding-top:18px}
@media(max-width:1050px){.site-header nav>a{padding:12px 15px}.home-intro{gap:6%;grid-template-columns:1.25fr 1fr}.home-intro h1{font-size:58px}.home-intro-copy>p{font-size:15px}.home-buttons{gap:17px}.home-model .house-panel{grid-template-columns:minmax(0,1fr) 225px;gap:10px 15px}.home-model #house-scene{height:350px;min-height:350px}.home-destinations h2{font-size:29px}.home-destinations>a{padding:28px 22px}.service-detail{gap:5%}.service-detail h2{font-size:31px}}
@media(max-width:900px){.site-header{display:flex;flex-wrap:wrap;gap:12px}.site-header nav{display:flex;position:static;box-shadow:none;border:0;gap:0;padding:0;background:transparent}.site-header nav>a{padding:12px 13px;font-size:13px}.home-intro{grid-template-columns:1fr;gap:23px;padding-top:40px}.home-intro h1{font-size:65px}.home-intro-copy{display:flex;justify-content:space-between;align-items:flex-start;gap:25px}.home-intro-copy>p{max-width:420px}.home-buttons{margin-top:0;gap:13px;max-width:235px;flex-shrink:0}.home-model .house-panel{grid-template-columns:minmax(0,1fr) 190px;padding:20px 20px 20px 5px}.home-model .house-actions{gap:8px 15px}.home-model .house-status strong{font-size:17px}.home-model .house-drag{font-size:11px}.home-model .house-stages button{font-size:12px}.home-destinations{margin-bottom:55px}.home-destinations h2{font-size:26px}.home-destinations>a{padding:24px 18px}.portfolio-grid{grid-template-columns:1fr 1fr}.service-detail{grid-template-columns:1fr;gap:38px}.service-detail figure img{height:420px}.service-detail>div{max-width:690px}.page-cta h2{font-size:30px}.company-image img{height:370px}}
@media(max-width:600px){html{scroll-padding-top:135px}.site-header{padding:10px 5% 0;display:block}.site-header .brand{width:max-content;margin:0 auto 8px}.site-header .brand img{width:45px;height:45px}.site-header .brand>span{font-size:17px}.site-header .brand small{font-size:8px}.site-header nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:100%;position:static;padding:0;gap:0}.site-header nav>a{text-align:center;padding:12px 3px;font-size:12px;line-height:1.4;min-height:43px}.home-intro{padding:28px 6% 26px;gap:20px}.home-intro .eyebrow{margin-bottom:18px;font-size:10px}.home-intro h1{font-size:clamp(39px,9.8vw,58px);line-height:1.07}.home-intro-copy{display:block}.home-intro-copy>p{font-size:14px;line-height:1.65}.home-buttons{max-width:none;flex-wrap:wrap;gap:12px 20px;margin-top:19px}.home-buttons .button{min-height:45px;font-size:12px;padding:10px 15px}.home-buttons .text-link{font-size:12px;padding:4px 0}.home-model{padding:0 0 30px}.home-model .house-panel{display:flex;padding:18px 6% 20px;gap:0}.home-model .house-heading{width:100%;padding:0;font-size:10px}.home-model .house-heading>span:last-child{font-size:10px}.home-model #house-scene{height:330px;min-height:330px}.home-model #house-controls{width:100%;padding:0}.home-model .house-status{flex-direction:row;align-items:center}.home-model .house-status strong{font-size:15px}.home-model .house-stages{grid-template-columns:repeat(4,1fr);gap:6px}.home-model .house-actions{gap:15px;margin-top:8px;justify-content:space-between;flex-wrap:nowrap}.home-model .house-actions button{font-size:11px}.home-destinations{grid-template-columns:1fr;margin:0 6% 40px}.home-destinations>a,.home-destinations>a:first-child{padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}.home-destinations>a:last-child{border-bottom:0}.home-destinations h2{font-size:28px}.home-destinations h2 br{display:none}.home-destinations>a>span{margin-bottom:13px;font-size:11px}.home-destinations p{margin:13px 0}.page-title{padding:36px 6% 30px}.page-title h1,.intro h1{font-size:41px;line-height:1.12}.page-description{font-size:16px;margin-top:23px}.page-cta{display:block;padding:35px 6%}.page-cta h2{font-size:29px}.page-cta .button{margin-top:22px;font-size:14px;min-height:49px}.inner-page .intro{padding-top:38px;padding-bottom:40px}.company-image img{height:260px}.company-image>p{font-size:19px;padding:50px 20px 20px}.inner-page .process{padding-top:45px;padding-bottom:45px}.service-overview{padding-bottom:40px}.breadcrumb{padding-top:22px;font-size:12px}.breadcrumb+.page-title{padding-top:25px}.service-detail{padding-bottom:40px;gap:30px}.service-detail figure img{height:300px}.service-detail h2{font-size:31px}.gallery-categories{gap:8px;padding-bottom:12px}.gallery-categories a{font-size:12px;padding:9px 12px}.gallery-section{padding-top:20px;padding-bottom:18px;scroll-margin-top:130px}.gallery-section-heading{padding:22px 0}.gallery-section-heading h2{font-size:28px}.gallery-section-heading>span{font-size:11px}.portfolio-grid{gap:22px 12px}.portfolio-grid figcaption{font-size:12px;line-height:1.5}.portfolio-grid .gallery-open{aspect-ratio:1}.open-photo{font-size:10px;padding:4px 7px;right:7px;bottom:7px}.inner-page .contact{padding-top:38px;padding-bottom:42px}.contact h1{font-size:47px}.inner-page .faq{padding-top:40px;padding-bottom:40px}.footer{padding-bottom:88px}.gallery-section:last-of-type{padding-bottom:40px}}

/* Direct contact actions */
.house-heading>span:only-child{color:var(--ink);font-size:14px}
.direct-contacts{display:grid;grid-template-columns:1fr;gap:10px;margin-top:24px}
.contact-action{display:flex;flex-direction:column;gap:4px;border:1px solid #b6bcb3;padding:16px 18px;min-height:72px;background:var(--paper);transition:border-color .2s,background .2s}
.contact-action:hover{border-color:var(--accent);background:white}
.contact-action strong{font-size:17px;font-weight:500}.contact-action small{font-size:14px;color:var(--muted);overflow-wrap:anywhere}
@media(max-width:700px){.mobile-contact{padding:0 0 env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(3,1fr);gap:0}.mobile-contact a{display:flex;align-items:center;justify-content:center;min-height:58px;padding:12px 8px;font-size:15px;border-right:1px solid #ffffff45}.mobile-contact a:last-child{border-right:0}.mobile-contact a:active{background:#981c23}.form-grid{grid-template-columns:1fr}.form-grid label,.message-label,.service-choices span{font-size:14px}.form-grid input::placeholder{font-size:14px}}

.service-area{border-top:1px solid var(--line);background:#eeefe9}.service-area h2{margin-bottom:24px}.service-area>p:not(.eyebrow){max-width:780px;font-size:17px;color:var(--muted)}

/* EDIL MENGA — architectural editorial identity */
:root{--ink:#171b1a;--paper:#f2f3ef;--muted:#5c635f;--line:#c7cdc6;--accent:#bf202b;--sans:Arial,Helvetica,sans-serif}
body{font-size:17px}h1,h2,h3{font-family:var(--sans);font-weight:600;letter-spacing:-.065em}h1 em,h2 em{font-family:var(--sans);font-style:normal;font-weight:400;letter-spacing:-.06em;color:var(--accent)}
.site-header{position:relative;padding:22px 4%;background:var(--ink);color:#fff;border-bottom:1px solid #ffffff26;gap:24px}.site-header .brand img{width:56px;height:56px}.site-header .brand>span{font-size:23px;letter-spacing:.025em}.site-header .brand small{font-size:10px;letter-spacing:.1em;color:#b9bfba}.site-header nav{counter-reset:pages;gap:6px;background:transparent}.site-header nav>a{font-size:14px;padding:18px 18px;border:0;position:relative}.site-header nav>a:before{counter-increment:pages;content:'0' counter(pages);font-size:10px;color:#a5aba6;display:block;line-height:1.3;margin-bottom:5px}.site-header nav>a[aria-current=page]{color:white;background:#ffffff0c;border-bottom:2px solid #ed3a43}.site-header nav>a:hover{color:#ff7c84}
.eyebrow{font-size:12px;letter-spacing:.1em;font-weight:500}.eyebrow:before{width:12px;height:12px;background:var(--accent)}.button{font-size:15px;min-height:54px;padding:16px 24px;justify-content:center;gap:12px}.button-red{background:var(--accent);color:#fff}.text-link{font-size:15px}.signature-opening{display:grid;grid-template-columns:43% 57%;min-height:650px;background:var(--ink)}.signature-copy{padding:64px 9% 35px;color:white;display:flex;flex-direction:column;align-items:flex-start}.signature-copy .eyebrow{color:#ccd0c9;margin-bottom:32px}.signature-copy h1{font-size:clamp(64px,6.5vw,108px);line-height:.98;letter-spacing:-.072em;font-weight:500}.signature-copy h1 em{color:#ed424a}.signature-description{font-size:18px;line-height:1.6;color:#d1d5cf;margin:32px 0 26px}.signature-location{font-size:11px;letter-spacing:.12em;color:#a8b0a9;margin:38px 0 0}.signature-model{background:#e8e6e0;min-width:0}.signature-model .house-panel{height:100%;padding:32px 7% 26px;overflow:hidden}.signature-model .house-heading{font-size:12px;color:#4d534d;border-bottom:1px solid #bfc4ba;padding-bottom:17px}.signature-model #house-scene{min-height:370px;height:440px;flex:1}.signature-model #house-controls{width:100%;margin-top:auto}.signature-model .house-stages button{font-size:14px}.signature-model .house-actions button{font-size:13px}.house-status strong{font-size:16px}.house-drag{font-size:12px}.house-heading>span:only-child{font-size:12px;letter-spacing:.12em}
.work-editorial{padding:100px 6% 110px}.editorial-heading{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:end;margin-bottom:50px}.editorial-heading .eyebrow{grid-column:1/-1;margin:0 0 12px}.editorial-heading h2{font-size:clamp(38px,4.5vw,70px);max-width:650px}.editorial-heading .text-link{justify-self:end}.editorial-photos{display:grid;grid-template-columns:1.4fr 1fr;align-items:start;gap:6%}.editorial-photo-large img{height:540px;object-fit:cover;object-position:48% center}.editorial-photo-small{margin-top:140px}.editorial-photo-small img{height:450px;object-fit:cover}.editorial-photos figcaption{padding:20px 0;border-top:3px solid var(--ink);margin-top:14px;display:flex;flex-direction:column;gap:10px}.editorial-photos figcaption span{font-size:12px;letter-spacing:.08em;color:var(--muted)}.editorial-photos figcaption strong{font-size:22px;font-weight:500;letter-spacing:-.035em}.editorial-photos a:hover img{filter:brightness(1.06)}
.signature-index{padding:60px 6% 90px;background:var(--ink);color:white}.signature-index>.eyebrow{color:#b7bfb6}.signature-index>a{display:grid;grid-template-columns:70px 1fr 35%;gap:25px;align-items:center;padding:36px 0;border-top:1px solid #ffffff35}.signature-index>a:last-child{border-bottom:1px solid #ffffff35}.signature-index>a>span{font-size:14px;color:#e04a53}.signature-index h2{font-size:clamp(35px,4vw,61px);font-weight:400}.signature-index p{font-size:16px;color:#b9c1b8}.signature-index a:hover h2{color:#f5666e}
.page-title{padding:65px 6% 55px;border-bottom:1px solid var(--line);margin-bottom:40px}.page-title h1,.intro h1,.contact h1{font-size:clamp(48px,6.5vw,94px);line-height:1.03;font-weight:500}.page-description{font-size:19px;max-width:760px}.page-cta{background:var(--accent);color:white;padding:60px 6%}.page-cta .eyebrow{color:#fff}.page-cta .eyebrow:before{background:white}.page-cta .button{background:white;color:var(--ink)}.page-cta h2{font-size:44px}.service-cards{display:block;border:0;counter-reset:services}.service-cards article{display:grid;grid-template-columns:55px 1fr 1.1fr;column-gap:28px;row-gap:18px;padding:36px 0;border:0;border-top:1px solid var(--line);background:transparent;align-items:start}.service-card-number{grid-column:1;grid-row:1/3;margin:7px 0;color:var(--accent)}.service-cards h3{grid-column:2;font-size:35px;margin:0}.service-cards article>p{grid-column:3;grid-row:1/3;font-size:17px}.service-cards .text-link{grid-column:2;justify-self:start;margin-top:6px}.service-detail figure img{height:570px}.service-detail h2{font-size:40px}.service-detail figcaption{font-size:13px}.service-area{background:#e4e7df}.intro{gap:8%}.intro-copy .lead{font-size:26px}.process-grid{border-top:1px solid var(--line)}.process-grid article{border-top:0;padding-top:26px}.process-grid h3{font-size:30px}.company-image{margin:0}.company-image img{height:560px}.company-image>p{padding-left:6%}
.gallery-categories{gap:0;padding-bottom:30px}.gallery-categories a{background:transparent;border:0;border-bottom:1px solid var(--line);padding:12px 24px;font-size:15px}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 4%}.portfolio-grid figure:nth-child(3n+1){grid-column:1/-1}.portfolio-grid figure:nth-child(3n+1) .gallery-open{aspect-ratio:1.9}.portfolio-grid .gallery-open{aspect-ratio:1.1}.portfolio-grid figcaption{font-size:15px;border-bottom:1px solid var(--line);padding-bottom:13px}.gallery-section-heading h2{font-size:44px}.open-photo{font-size:12px;background:var(--ink);color:white;padding:9px 15px;right:14px;bottom:14px}.film-section{background:var(--ink)}
.contact{background:var(--paper);grid-template-columns:1fr 1fr;gap:7%}.contact-copy>p:not(.eyebrow){font-size:18px}.contact-location{border-top:1px solid var(--line)}.direct-contacts{gap:0}.contact-action{background:transparent;border:0;border-top:1px solid var(--line);padding:16px 0;flex-direction:row;align-items:center;justify-content:space-between;gap:18px}.contact-action:last-child{border-bottom:1px solid var(--line)}.contact-action strong{font-size:21px}.contact-action:hover{background:transparent;color:var(--accent)}.contact-action small{font-size:14px}.service-choices span{border:1px solid var(--line);font-size:14px}.form-grid label,.message-label{font-size:14px}.form-grid input,.message-label textarea{background:#fff;border:1px solid var(--line);font-size:16px;padding:14px}.form-grid input::placeholder{font-size:15px}.form-note{font-size:13px}.form-result{border-left:3px solid var(--accent);padding:20px;background:#e5e9e0}.form-result .button{margin:15px 15px 5px 0}.faq{background:#e4e7df}.faq summary{font-size:19px}.footer{padding:55px 6% 28px;background:var(--ink);color:white}.footer-top>p{font-family:var(--sans);font-size:36px;letter-spacing:-.04em}.footer-top>p em{font-style:normal;color:#d05d64}.footer-bottom{font-size:13px;color:#b6bfb4;border-top:1px solid #ffffff30}.mobile-contact{background:#171b1a}
@media(min-width:1450px){.signature-opening{min-height:760px}.signature-model #house-scene{height:530px}.signature-copy{padding-top:80px}}
@media(max-width:1000px){.site-header nav>a{padding:12px}.signature-copy{padding:45px 8% 30px}.signature-copy h1{font-size:68px}.signature-description{font-size:16px}.signature-model .house-panel{padding:24px 6%}.signature-model #house-scene{height:340px;min-height:340px}.signature-model .house-stages button{font-size:12px}.editorial-photo-large img{height:430px}.editorial-photo-small img{height:370px}.editorial-photo-small{margin-top:95px}.contact{grid-template-columns:1fr}.contact-copy{display:block}.service-cards article{grid-template-columns:40px 1fr 1fr;column-gap:20px}.service-cards h3{font-size:30px}}
@media(max-width:700px){.site-header{padding:15px 5% 0;display:block}.site-header .brand{margin:0 0 14px;width:max-content}.site-header .brand img{width:43px;height:43px}.site-header .brand>span{font-size:20px}.site-header .brand small{font-size:9px}.site-header nav{display:grid;grid-template-columns:repeat(5,1fr);width:100%;gap:0}.site-header nav>a{padding:10px 2px 12px;font-size:13px;text-align:center;min-height:48px}.site-header nav>a:before{display:none}.signature-opening{display:flex;flex-direction:column;min-height:0}.signature-copy{padding:36px 6% 30px}.signature-copy .eyebrow{font-size:11px;margin-bottom:24px}.signature-copy h1{font-size:clamp(62px,15.2vw,96px);line-height:.98}.signature-description{font-size:16px;margin:24px 0 20px}.signature-location{margin-top:25px;font-size:10px}.signature-copy .button{min-height:50px;font-size:14px}.signature-model .house-panel{padding:20px 6% 25px}.signature-model #house-scene{height:330px;min-height:330px}.signature-model .house-status{gap:12px}.signature-model .house-status strong{font-size:14px;max-width:65%}.signature-model .house-drag{font-size:11px}.signature-model .house-stages button{font-size:12px}.signature-model .house-actions button{font-size:12px}.house-actions{gap:12px}.work-editorial{padding:50px 6%}.editorial-heading{display:block;margin-bottom:30px}.editorial-heading .eyebrow{margin-bottom:20px;font-size:11px}.editorial-heading h2{font-size:39px}.editorial-heading .text-link{margin-top:22px}.editorial-photos{grid-template-columns:1fr;gap:35px}.editorial-photo-large img{height:330px}.editorial-photo-small{margin:0 0 0 14%}.editorial-photo-small img{height:320px}.editorial-photos figcaption{padding:15px 0}.editorial-photos figcaption strong{font-size:19px}.signature-index{padding:40px 6% 50px}.signature-index>a{grid-template-columns:28px 1fr;gap:12px;padding:25px 0}.signature-index h2{font-size:37px}.signature-index p{grid-column:2;font-size:15px}.page-title{padding:36px 6%;margin-bottom:28px}.page-title h1,.intro h1,.contact h1{font-size:clamp(42px,11vw,64px)}.page-description{font-size:17px;line-height:1.65}.section-wrap{padding-left:6%;padding-right:6%}.service-cards article{grid-template-columns:30px 1fr;padding:26px 0;gap:14px}.service-cards h3{font-size:30px}.service-cards article>p{grid-column:2;grid-row:auto;font-size:16px}.service-cards .text-link{grid-column:2;font-size:14px}.service-card-number{grid-row:1/4}.service-detail figure img{height:330px}.service-detail h2{font-size:34px}.company-image img{height:330px}.company-image>p{font-size:20px}.intro-copy .lead{font-size:23px}.page-cta{padding:38px 6%}.page-cta h2{font-size:34px}.portfolio-grid{gap:28px 14px}.portfolio-grid figure:nth-child(3n+1) .gallery-open{aspect-ratio:1.15}.portfolio-grid figcaption{font-size:13px;line-height:1.5}.gallery-section-heading h2{font-size:34px}.gallery-categories a{font-size:13px;padding:10px 12px}.open-photo{font-size:11px;padding:6px 8px;right:8px;bottom:8px}.contact-action strong{font-size:19px}.contact-action small{font-size:13px}.contact-copy>p:not(.eyebrow){font-size:17px}.form-grid{grid-template-columns:1fr;gap:20px}.faq summary{font-size:17px}.footer{padding:38px 6% 105px}.footer-top>p{font-size:30px}.footer-bottom{font-size:12px}.mobile-contact{display:grid;grid-template-columns:repeat(3,1fr);background:#171b1a;padding-bottom:env(safe-area-inset-bottom)}.mobile-contact a{font-size:14px;min-height:56px}.mobile-contact a:nth-child(2){background:var(--accent)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Cinematic architecture: full-screen spaces, quiet typography and soft transitions. */
body:has(.cinema-hero){background:#eeeae2}body:has(.cinema-hero) .site-header{position:absolute;top:0;left:0;right:0;z-index:30;background:transparent;border-bottom:1px solid #ffffff30;padding:25px 5%;color:white}body:has(.cinema-hero) .site-header nav>a:before{display:none}body:has(.cinema-hero) .site-header nav>a{font-size:13px;letter-spacing:.04em;padding:12px 16px}body:has(.cinema-hero) .site-header nav>a[aria-current=page]{background:transparent;border-bottom:1px solid white}body:has(.cinema-hero) .site-header .brand img{width:45px;height:45px}body:has(.cinema-hero) .site-header .brand small{color:#eee9df}
.cinema-hero{height:100svh;min-height:650px;max-height:1200px;position:relative;isolation:isolate;overflow:hidden;background:#252621;color:#fff8e9}.cinema-scenes,.cinema-scene,.cinema-shade{position:absolute;inset:0}.cinema-scene{opacity:0;transition:opacity 1.8s ease;pointer-events:none}.cinema-scene.is-active{opacity:1}.cinema-scene img,.cinema-scene video{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.02)}.cinema-scene.is-active img{animation:cinema-approach 11s linear both}.cinema-hero.is-paused .cinema-scene img{animation-play-state:paused}.cinema-scene:nth-child(1) img{object-position:50% 50%}.cinema-scene:nth-child(2) img{object-position:50% 45%}.cinema-scene video{object-position:center 40%}.cinema-shade{background:linear-gradient(180deg,#111a17ad 0%,#1420191a 32%,#121b174a 65%,#111a17b8 100%);z-index:1}.cinema-copy{position:absolute;z-index:2;inset:24% 7% 19%;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.cinema-kicker{font-size:11px;letter-spacing:.18em;margin-bottom:27px;line-height:1.6}.cinema-copy h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(66px,8.8vw,142px);font-weight:400;letter-spacing:-.065em;line-height:1.02;text-shadow:0 2px 24px #0003}.cinema-copy h1 em{font:italic 1em/1.02 Georgia,'Times New Roman',serif;color:inherit;letter-spacing:-.065em}.cinema-copy>p:not(.cinema-kicker){margin-top:23px;font-size:17px;letter-spacing:.01em}.cinema-contact{border:1px solid #fff9;border-radius:100px;padding:13px 24px;font-size:14px;margin-top:30px;background:#ffffff0d;backdrop-filter:blur(6px)}.cinema-contact:hover{background:#fff8e9;color:#202822}.cinema-bottom{position:absolute;z-index:2;bottom:38px;left:6%;right:6%;display:flex;align-items:center;justify-content:space-between;gap:25px}.cinema-explore{font-size:13px;letter-spacing:.03em;border-bottom:1px solid #fff7;padding:10px 0}.cinema-navigation{display:flex;align-items:center;gap:15px}.cinema-navigation button{border:0;border-bottom:1px solid #fff4;background:none;color:#eee6d7;padding:10px 4px;min-width:35px;min-height:44px;font-size:13px}.cinema-navigation button[aria-pressed=true]{border-bottom-color:white;color:white}.cinema-navigation #cinema-pause{margin-left:8px;min-width:65px}.cinema-introduction{padding:95px 9%;display:grid;grid-template-columns:1.1fr 1fr;column-gap:12%;row-gap:25px;background:#eeeae2}.cinema-introduction>.eyebrow{grid-column:1/-1;font-size:11px;margin-bottom:5px}.cinema-introduction h2,.cinema-construction h2,.work-editorial h2{font:400 clamp(42px,5vw,72px)/1.06 Georgia,'Times New Roman',serif;letter-spacing:-.055em}.cinema-introduction h2 em,.work-editorial h2 em{font-family:Georgia,'Times New Roman',serif;font-style:italic;color:#565e4f}.cinema-introduction>div>p{font-size:17px;line-height:1.8;color:#53594e}.cinema-introduction .text-link{margin-top:25px}.cinema-construction{background:#e8e6e0;padding:45px 6% 30px}.cinema-construction-title{display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #bac0b4;padding:0 0 25px}.cinema-construction-title .eyebrow{margin:0}.cinema-construction h2{font-size:38px}.cinema-construction .house-heading{display:none}.cinema-construction .house-panel{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:35px;padding:0;height:auto}.cinema-construction #house-scene{height:490px;min-height:490px}.cinema-construction #house-controls{margin:auto 0}.cinema-construction .house-stages{grid-template-columns:1fr 1fr;gap:15px}.cinema-construction .house-status{display:block}.cinema-construction .house-drag{display:block;margin-top:10px}.cinema-construction .house-actions{flex-wrap:wrap}.work-editorial{background:#eeeae2}.signature-index{background:#263128}.signature-index h2{font-family:Georgia,'Times New Roman',serif;font-weight:400}.signature-index>a>span{color:#c4c7b3}.signature-index a:hover h2{color:#e3d6b8}.footer{background:#1c251e}.footer-top>p{font-family:Georgia,'Times New Roman',serif}.footer-top>p em{color:#c4c7b3}
@keyframes cinema-approach{from{transform:scale(1.02)}to{transform:scale(1.13)}}
@media(max-width:900px){body:has(.cinema-hero) .site-header{padding:16px 5%}.cinema-copy h1{font-size:88px}.cinema-introduction{gap:30px;padding:65px 6%}.cinema-construction .house-panel{grid-template-columns:minmax(0,1fr) 190px;gap:15px}.cinema-construction #house-scene{height:380px;min-height:380px}}
@media(max-width:700px){body:has(.cinema-hero) .site-header{padding:14px 5% 0;background:linear-gradient(#101b15aa,transparent)}body:has(.cinema-hero) .site-header .brand{margin:0 auto 8px}body:has(.cinema-hero) .site-header .brand img{width:38px;height:38px}body:has(.cinema-hero) .site-header .brand>span{font-size:18px}body:has(.cinema-hero) .site-header .brand small{font-size:8px}body:has(.cinema-hero) .site-header nav>a{font-size:12px;padding:12px 2px;letter-spacing:0}.cinema-hero{height:calc(100svh - 56px - env(safe-area-inset-bottom));min-height:620px;max-height:none}.cinema-copy{inset:25% 6% 22%}.cinema-kicker{font-size:10px;max-width:230px;letter-spacing:.14em;margin-bottom:25px}.cinema-copy h1{font-size:clamp(51px,13.4vw,84px);line-height:1.07}.cinema-copy>p:not(.cinema-kicker){font-size:16px;margin-top:20px}.cinema-contact{font-size:13px;padding:12px 20px;margin-top:25px}.cinema-bottom{bottom:22px;left:6%;right:6%;gap:10px}.cinema-explore{font-size:12px;max-width:120px}.cinema-navigation{gap:5px}.cinema-navigation button{min-width:30px;font-size:12px}.cinema-navigation #cinema-pause{min-width:53px;margin-left:3px}.cinema-scene:nth-child(1) img{object-position:45% center}.cinema-introduction{display:block;padding:52px 7%}.cinema-introduction>.eyebrow{margin-bottom:24px}.cinema-introduction h2{font-size:45px;margin-bottom:26px}.cinema-introduction>div>p{font-size:16px}.cinema-construction{padding:35px 6% 20px}.cinema-construction-title{display:block;padding-bottom:20px}.cinema-construction-title .eyebrow{font-size:10px;margin-bottom:15px}.cinema-construction h2{font-size:32px}.cinema-construction .house-panel{display:flex;gap:0}.cinema-construction #house-scene{height:340px;min-height:340px}.cinema-construction #house-controls{margin:0;width:100%}.cinema-construction .house-stages{grid-template-columns:repeat(4,1fr);gap:8px}.cinema-construction .house-status{display:flex}.cinema-construction .house-drag{margin:0}.cinema-construction .house-actions{flex-wrap:nowrap}.work-editorial h2{font-size:39px}}
@media(prefers-reduced-motion:reduce){.cinema-scene{transition:none}.cinema-scene.is-active img{animation:none}}

/* Imagined villa — original architectural atmosphere and moving entrance. */
.imagined-villa .cinema-scene.is-active img{animation:none;transform:scale(var(--villa-zoom,1));object-position:50% 50%;will-change:transform}.imagined-villa .cinema-shade{background:linear-gradient(180deg,#16130fad,transparent 34%,#16191035 60%,#131710ad)}#villa-entrance{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:1}#villa-entrance canvas{width:100%;height:100%;display:block}.imagined-villa .cinema-copy{opacity:var(--welcome-opacity,1);transition:none}.imagined-villa .cinema-copy h1{font-size:clamp(66px,8.5vw,132px)}.imagined-villa .cinema-kicker{max-width:450px}.imagined-villa .cinema-navigation button{padding:10px 8px}.imagined-villa .cinema-navigation #cinema-replay{min-width:115px}.imagined-villa .cinema-copy>p:not(.cinema-kicker){max-width:480px}
@media(max-width:700px){.imagined-villa .cinema-copy h1{font-size:clamp(51px,13vw,82px)}.imagined-villa .cinema-copy>p:not(.cinema-kicker){max-width:280px;font-size:15px}.imagined-villa .cinema-kicker{max-width:230px}.imagined-villa .cinema-navigation{gap:3px}.imagined-villa .cinema-navigation #cinema-replay{min-width:100px;font-size:11px}.imagined-villa .cinema-explore{max-width:100px}.imagined-villa .cinema-navigation #cinema-pause{min-width:55px}}

.walkthrough-ready .cinema-scenes{visibility:hidden}.walkthrough-ready .cinema-shade{z-index:2;pointer-events:none;background:linear-gradient(180deg,#111b23b0,transparent 30%,transparent 72%,#111b2399)}.walkthrough-ready .cinema-copy,.walkthrough-ready .cinema-bottom{z-index:3}.walkthrough-ready.is-travelling .cinema-copy{visibility:hidden;pointer-events:none}

/* Full-screen photographic home. Separate routes carry the company content. */
body:has(.real-cinema){background:#171b1a;padding:0;min-height:100svh}
body:has(.real-cinema) .footer{display:none}
.real-cinema{height:100svh;min-height:540px;max-height:none;background:#28382d}
.real-scenes,.real-scene,.real-shade{position:absolute;inset:0;width:100%;height:100%}
.real-scene{object-fit:cover;object-position:50% 48%;opacity:0;transition:opacity 1s ease;visibility:hidden}
.real-scene.is-active{opacity:1;visibility:visible}
.real-shade{background:linear-gradient(180deg,#0a171ad9 0%,#0a171a08 40%,#091311c7 100%),linear-gradient(90deg,#0a171a9c 0%,#0a171a15 75%);pointer-events:none}
.real-caption{position:absolute;top:135px;left:5%;right:5%;display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.15em;color:#ffffffe0}
.real-copy{position:absolute;left:6%;bottom:155px;max-width:720px;color:#fff9ed}
.real-eyebrow{font-size:11px;letter-spacing:.26em;margin-bottom:21px}
.real-copy h1{font:400 clamp(64px,7.8vw,124px)/.99 Georgia,serif;letter-spacing:-.055em;text-shadow:0 2px 28px #0002}
.real-copy h1 em{font:italic 1em/.99 Georgia,serif;letter-spacing:-.055em;color:inherit}
.real-copy>p:not(.real-eyebrow){font-size:16px;line-height:1.5;margin-top:24px;max-width:380px}
.real-actions{display:flex;align-items:center;gap:25px;margin-top:28px;flex-wrap:wrap}
.real-actions a,.real-actions button{background:transparent;color:inherit;border:0;border-bottom:1px solid #fff9;padding:10px 0;font-size:13px;min-height:44px;cursor:pointer}
.real-actions a:hover,.real-actions button:hover{border-color:#fff;color:#fff}
.real-bottom{position:absolute;bottom:28px;left:6%;right:6%;display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #ffffff50;padding-top:18px}
.real-chapters{display:flex;gap:35px}
.real-chapters button{border:0;background:transparent;color:#fff9;padding:8px 0;min-height:44px;font-size:14px}
.real-chapters button span{font-size:10px;vertical-align:top;margin-right:8px}
.real-chapters button[aria-pressed=true]{color:white;border-bottom:1px solid white}
.real-portfolio{font-size:13px;border-bottom:1px solid #fff8;padding:8px 0}
#real-film-dialog{position:fixed;inset:0;margin:auto;border:0;padding:64px 20px 20px;width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;background:#101310;color:white}
#real-film-dialog::backdrop{background:#101310}
#real-film-dialog video{width:100%;height:100%;object-fit:contain;display:block}
#close-real-film{position:absolute;right:24px;top:12px;min-height:44px;padding:8px 12px;border:1px solid #ffffff80;background:transparent;color:white}
@media(max-width:700px){
 .real-cinema{height:calc(100svh - 56px - env(safe-area-inset-bottom));min-height:500px}
 .real-caption{top:132px;left:6%;font-size:8px;letter-spacing:.1em;display:block}.real-caption span+span{display:none}
 .real-copy{left:6%;right:6%;bottom:125px;max-width:none}
 .real-eyebrow{display:none}.real-copy h1{font-size:clamp(52px,13.8vw,86px)}
 .real-copy>p:not(.real-eyebrow){font-size:14px;max-width:260px;margin-top:17px}
 .real-actions{gap:18px;margin-top:17px}.real-actions a,.real-actions button{font-size:11px}
 .real-bottom{bottom:18px;display:block;padding-top:10px}.real-chapters{justify-content:space-between;gap:10px}.real-chapters button{font-size:12px}.real-portfolio{display:none}
 .real-scene{object-position:55% 50%}.real-scene:nth-child(2){object-position:63% 50%}
}
@media(max-height:650px) and (min-width:701px){.real-cinema{min-height:450px}.real-copy{bottom:110px}.real-copy h1{font-size:60px}.real-copy>p:not(.real-eyebrow){margin-top:12px}.real-eyebrow{display:none}.real-actions{margin-top:10px}.real-caption{top:112px}}
@media(prefers-reduced-motion:reduce){.real-scene{transition:none}}

/* Cinematic film: preserve the full house composition on narrow screens. */
.home-film{width:100%;height:100%;object-fit:cover;display:block}
.real-cinema .real-copy{bottom:112px;max-width:650px}
.real-cinema .real-copy h1{font-size:clamp(38px,4.2vw,66px)}
.real-cinema .real-eyebrow{display:none}
.real-cinema .real-copy>p:not(.real-eyebrow){margin-top:12px}
.real-cinema .real-actions{margin-top:12px}
.real-cinema .real-shade{background:linear-gradient(180deg,#091310bb,transparent 28%,transparent 57%,#091310db)}
.film-toggle{background:transparent;border:1px solid #ffffff80;color:white;min-height:44px;padding:8px 15px;font-size:14px;cursor:pointer}
.real-cinema .real-caption{font-size:12px}
.real-cinema .real-actions a,.real-cinema .real-actions button,.real-cinema .real-portfolio{font-size:14px}
@media(max-width:700px){
 .real-cinema{min-height:560px;background:#141b18}
 .real-cinema .real-scenes{top:150px;height:calc(100% - 370px);min-height:170px}
 .home-film{object-fit:contain}
 .real-cinema .real-shade{background:linear-gradient(180deg,#09131044,transparent 45%,#09131066)}
 .real-cinema .real-caption{top:132px;font-size:10px}
 .real-cinema .real-copy{bottom:112px}
 .real-cinema .real-copy h1{font-size:38px;line-height:1.04}
 .real-cinema .real-copy h1 br{display:none}
 .real-cinema .real-copy>p:not(.real-eyebrow){font-size:14px;max-width:100%;margin-top:8px}
 .real-cinema .real-actions{gap:18px;margin-top:8px}
 .real-cinema .real-bottom{display:flex;flex-wrap:wrap;gap:6px;padding-top:8px;bottom:12px}
 .real-cinema .real-chapters{width:100%;gap:6px;justify-content:space-between}
 .real-cinema .real-chapters button{font-size:13px}
 .film-toggle{min-height:36px;padding:4px 12px;margin-left:auto}
}

/* Interior pages: architectural photography, generous typography, warm materials. */
.inner-page{background:#f4f1eb;color:#252825;--muted:#62635e;--line:#d5cfc5}
.editorial-cover{display:grid;grid-template-columns:1fr 1.1fr;min-height:540px;background:#232b28;color:#f7f3eb}
.cover-copy{padding:80px 10% 70px 12%;display:flex;flex-direction:column;justify-content:center}
.cover-copy .eyebrow{color:#d9b09a;font-size:13px;letter-spacing:.16em;margin-bottom:35px}
.cover-copy h1{font:400 clamp(44px,4.8vw,78px)/1.05 Georgia,serif;letter-spacing:-.045em}
.cover-copy h1 em{color:#e4cab7;font-weight:400}
.cover-copy>p:last-child{font-size:17px;line-height:1.65;max-width:370px;margin-top:30px;color:#d4d6d0}
.editorial-cover figure{margin:0;position:relative;min-width:0;overflow:hidden}
.editorial-cover figure img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}
.editorial-cover figcaption{position:absolute;bottom:24px;right:25px;color:white;font-size:12px;letter-spacing:.14em;background:#232b28c9;padding:12px 15px}
.inner-page .intro{padding:85px 8%;grid-template-columns:1fr 1.4fr;gap:10%;align-items:center}
.experience-mark strong{font:400 150px/.95 Georgia,serif;letter-spacing:-.09em;color:#8c3338;display:block}
.experience-mark strong span{font-size:60px;vertical-align:top;letter-spacing:0}
.experience-mark p{font-size:17px;line-height:1.6;margin:20px 0 0;max-width:280px}
.inner-page .intro-copy .lead{font:400 30px/1.35 Georgia,serif;color:#252825}
.inner-page .intro-copy p{font-size:17px;line-height:1.85}
.inner-page .company-image{margin:0 8%;overflow:hidden}
.inner-page .company-image img{height:520px;width:100%;object-fit:cover}
.inner-page .service-area{padding:65px 8%;display:grid;grid-template-columns:1fr 1fr;gap:20px 7%}
.inner-page .service-area .eyebrow{grid-column:1/-1;margin:0;color:#8c3338}
.inner-page .service-area h2{grid-row:2/4;font:400 45px/1.1 Georgia,serif;max-width:330px}
.inner-page .service-area p{line-height:1.8;font-size:17px}
.inner-page .process{background:#e8e3da;padding:65px 8%}
.inner-page .process-grid{gap:35px}
.inner-page .process-grid article{border-top:1px solid #a69887;padding-top:25px}
.inner-page .process-grid h3{font:400 28px/1.2 Georgia,serif;margin:20px 0 15px}
.inner-page .service-overview{padding:64px 7% 80px}
.inner-page .service-cards{display:grid;grid-template-columns:1fr 1fr;gap:40px;border:0;background:transparent}
.inner-page .visual-service{padding:0;border:0;background:#fffdf8;overflow:hidden}
.service-photo{display:block;overflow:hidden;aspect-ratio:1.6}
.service-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.service-photo:hover img{transform:scale(1.025)}
.service-card-copy{padding:32px 35px 38px}
.service-card-copy .service-card-number{font-size:14px;color:#943f42;margin-bottom:18px}
.inner-page .service-cards h3{font:400 34px/1.12 Georgia,serif;margin:0 0 18px}
.service-card-copy p{font-size:16px;line-height:1.8;color:#62635e}
.service-card-copy .text-link{display:inline-block;margin-top:25px;font-size:15px;border-bottom:1px solid #943f42;padding-bottom:8px}
.inner-page .service-detail{padding:55px 8% 80px;gap:7%}
.inner-page .service-detail>div{background:#fffdf8;padding:40px}
.inner-page .service-detail h2{font-family:Georgia,serif;font-weight:400}
.inner-page .service-detail ul{list-style:none;padding:0}
.inner-page .service-detail li{padding:14px 0;border-top:1px solid #ded8cf;color:#404940}
.inner-page .gallery-categories{padding:30px 7%;background:#e8e3da;gap:12px}
.inner-page .gallery-categories a{background:transparent;border:1px solid #bfb4a5;font-size:14px;padding:12px 22px}
.inner-page .gallery-section{padding:32px 7%}
.inner-page .gallery-section-heading h2{font:400 42px/1.1 Georgia,serif}
.inner-page .portfolio-grid{grid-template-columns:1fr 1fr;gap:38px 28px}
.inner-page .portfolio-grid figure:first-child{grid-column:1/-1}
.inner-page .portfolio-grid .gallery-open{aspect-ratio:1.5;display:block;width:100%;overflow:hidden}
.inner-page .portfolio-grid figure:first-child .gallery-open{aspect-ratio:2.25}
.inner-page .portfolio-grid img{transition:transform .6s}
.inner-page .portfolio-grid button:hover img{transform:scale(1.025)}
.inner-page .portfolio-grid figcaption{padding:13px 0;border-bottom:1px solid #d5cfc5;margin:0;font-size:16px;color:#333a34}
.inner-page .open-photo{background:#232b28e6;color:white;font-size:13px;padding:9px 15px}
.inner-page .contact{padding:70px 7%;gap:7%;background:#f4f1eb}
.inner-page .contact-copy>p{font-size:18px;line-height:1.75}
.inner-page .contact-copy>.eyebrow{color:#8c3338;font-size:13px}
.inner-page .contact-location{border-color:#d5cfc5;padding-top:25px}
.inner-page .contact-location strong{font:400 37px Georgia,serif}
.inner-page .contact-form-wrap{padding:35px;background:#fffdf8;box-shadow:0 16px 60px #34291c08;border-top:3px solid #8c3338}
.inner-page .contact-action{background:transparent;border:0;border-bottom:1px solid #cfc5b8;padding:20px 0;min-height:85px}
.inner-page .contact-action strong{font:400 26px Georgia,serif}.inner-page .contact-action small{font-size:15px;color:#62635e}
.inner-page .service-choices span{border-color:#d2c9bc;font-size:14px}
.inner-page input,.inner-page textarea{background:#f4f1eb;border-color:#c8bdae;font-size:16px}
.inner-page .form-grid{gap:22px}.inner-page .form-grid label{font-size:14px}
.inner-page .faq{background:#e8e3da;padding:60px 7%}.inner-page .faq summary{font-size:18px}.inner-page .faq p{font-size:16px}
.inner-page .page-cta{background:#82343a;color:#fff8ee;padding:65px 8%}
.inner-page .page-cta h2{font:400 clamp(32px,4vw,56px)/1.1 Georgia,serif}
.inner-page .page-cta .eyebrow{color:#e6c4b7;font-size:12px}
.inner-page .page-cta .button{background:#fff8ee;color:#622c30;border:0;font-size:15px}
@media(max-width:800px){
 .editorial-cover{grid-template-columns:1fr;min-height:0}.cover-copy{padding:45px 7% 38px}.cover-copy .eyebrow{margin-bottom:22px}.cover-copy h1{font-size:clamp(42px,8vw,62px)}.cover-copy>p:last-child{margin-top:20px;font-size:16px;max-width:none}
 .editorial-cover figure{height:300px}.editorial-cover figcaption{font-size:10px;bottom:14px;right:14px}
 .inner-page .intro{padding:48px 7%;grid-template-columns:1fr;gap:35px}.experience-mark strong{font-size:110px}.experience-mark p{max-width:none}.inner-page .intro-copy .lead{font-size:28px}
 .inner-page .company-image{margin:0 7%}.inner-page .company-image img{height:320px}
 .inner-page .service-area{padding:45px 7%;display:block}.inner-page .service-area h2{font-size:36px;margin:20px 0}.inner-page .service-area p{margin-top:15px}
 .inner-page .service-cards{gap:25px;grid-template-columns:1fr}.inner-page .service-overview{padding-top:35px}.service-card-copy{padding:26px}.inner-page .service-cards h3{font-size:32px}
 .inner-page .service-detail{padding:35px 7% 45px}.inner-page .service-detail>div{padding:28px}.inner-page .service-detail figure img{height:330px}
 .inner-page .gallery-section-heading h2{font-size:34px}.inner-page .gallery-categories{gap:8px;padding:22px 7%}.inner-page .gallery-categories a{padding:10px 14px}
 .inner-page .portfolio-grid{gap:25px;grid-template-columns:1fr}.inner-page .portfolio-grid figure:first-child{grid-column:auto}.inner-page .portfolio-grid figure:first-child .gallery-open,.inner-page .portfolio-grid .gallery-open{aspect-ratio:1.4}
 .inner-page .contact{padding:40px 7%;grid-template-columns:1fr;gap:35px}.inner-page .contact-form-wrap{padding:25px 20px}.inner-page .form-grid{grid-template-columns:1fr}.inner-page .contact-copy>p{font-size:17px}
 .inner-page .page-cta{padding:45px 7%}.inner-page .process{padding:45px 7%}.inner-page .process-grid{grid-template-columns:1fr;gap:28px}
}
@media(prefers-reduced-motion:reduce){.service-photo img,.inner-page .portfolio-grid img{transition:none}}

/* Object-led chapter entrances. Content stays available if WebGL or JavaScript fails. */
.object-entry{position:relative;background:#191c1e;color:#f4f0e8;min-height:calc(100svh - 126px);overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:38px 24px 32px;isolation:isolate}
.object-entry[hidden],.object-content[hidden]{display:none!important}.object-heading{position:relative;z-index:2;text-align:center;pointer-events:none}.object-heading .eyebrow{color:#bfa282;font-size:13px;letter-spacing:.19em;margin:0 0 18px}.object-heading h1{font-size:clamp(36px,4.5vw,72px);line-height:1.05;letter-spacing:-.045em;font-weight:400;margin:0}.object-heading h1 em{font-family:Georgia,serif;font-weight:400;color:#c9ac89}.object-stage{width:min(900px,100%);height:clamp(280px,43svh,480px);position:relative;flex-shrink:0}.object-stage canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0}.scene-ready canvas{opacity:1}.object-fallback{width:100%;height:100%;object-fit:cover;opacity:.75;border-radius:4px}.scene-ready .object-fallback{visibility:hidden}.object-hit{position:absolute;inset:0;border:0;background:transparent;cursor:pointer;display:none}.scene-ready .object-hit{display:block}.object-hit:focus-visible{outline:2px solid #c9ac89;outline-offset:-8px;border-radius:12px}.object-actions{display:flex;gap:24px;align-items:center;z-index:2}.object-actions button{font:inherit;min-height:48px;cursor:pointer}.object-play{border:1px solid #c5a079;background:#c5a079;color:#181a1b;padding:14px 28px;border-radius:2px;transition:background .2s}.object-play:hover{background:#e2c4a2}.object-skip{border:0;background:transparent;color:#e6dfd5;padding:10px 0;border-bottom:1px solid #777}.object-play:disabled{opacity:.6;cursor:wait}.object-caption{color:#b3b4b0;font-size:14px;margin:22px 0 0;text-align:center;max-width:550px}.object-content{outline:none}.object-content>.object-replay{display:block;margin:26px auto 0;padding:12px 22px;border:1px solid #918c81;background:transparent;color:inherit;font:inherit;cursor:pointer}.object-gated .footer,.object-gated .mobile-contact{display:none!important}.object-gated .object-entry{min-height:calc(100svh - 126px)}.object-content>.intro-section{padding-top:60px}.is-playing .object-heading{opacity:calc(1 - var(--scene-progress,0)*.6);transform:translateY(calc(var(--scene-progress,0)*-8px))}.object-entry:not(.scene-ready) .object-actions{display:none}
@media(max-width:650px){.object-entry,.object-gated .object-entry{min-height:calc(100svh - 145px);padding:26px 18px 28px}.object-heading h1{font-size:clamp(32px,8.5vw,46px)}.object-stage{height:clamp(240px,39svh,370px);width:100%}.object-heading .eyebrow{font-size:12px;margin-bottom:14px}.object-actions{gap:20px}.object-play{padding:12px 20px}.object-caption{font-size:13px;margin-top:18px}.object-content .section-wrap{padding-top:45px}}
@media(prefers-reduced-motion:reduce){.object-entry *{transition:none!important}}

/* Cinematic chapter system: object, type and content share one continuous stage. */
.chapter-world{position:relative;background:#101112;color:#f8f2e9;isolation:isolate;overflow:hidden}.chapter-film{position:absolute;inset:0;z-index:-3;overflow:hidden}.chapter-film video{width:100%;height:100%;object-fit:cover;object-position:65% 50%;transform:scale(1.04) translate(var(--look-x,0px),var(--look-y,0px));transition:transform 1.2s cubic-bezier(.2,.7,.1,1),object-position 1.2s}.chapter-vignette{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(12,12,13,.9),rgba(12,12,13,.35) 42%,transparent 70%),linear-gradient(0deg,rgba(12,12,13,.85),transparent 30%);pointer-events:none}.chapter-intro{padding:80px 6vw 130px;max-width:740px;position:relative;z-index:3;pointer-events:none}.chapter-intro .eyebrow{color:#d2aa7d;letter-spacing:.2em;font-size:13px;margin-bottom:24px}.chapter-intro h1{font-size:clamp(44px,5.6vw,86px);letter-spacing:-.055em;line-height:1.03;font-weight:450;margin:0 0 26px}.chapter-intro h1 em{font-family:Georgia,serif;font-weight:400;color:#d6b187}.chapter-subtitle{font-size:17px;line-height:1.6;max-width:370px;color:#bfbab2}.chapter-start,.chapter-skip,.chapter-back{font:inherit;cursor:pointer;pointer-events:auto}.chapter-start{margin-top:20px;padding:15px 0;background:transparent;border:0;border-bottom:1px solid #d2aa7d;color:#fff;font-size:16px}.chapter-start:after{content:' ';display:inline-block;width:7px;height:7px;border-radius:50%;background:#d2aa7d;margin-left:20px;vertical-align:middle}.chapter-object{position:absolute;inset:0 0 0 45%;background:none;border:0;cursor:pointer;z-index:2}.chapter-object:focus-visible{outline:2px solid #d2aa7d;outline-offset:-20px}.chapter-toolbar{position:absolute;bottom:30px;left:6vw;right:6vw;display:flex;justify-content:space-between;align-items:center;z-index:3;gap:24px}.chapter-toolbar span{font-size:12px;letter-spacing:.15em;color:#b9b2a8}.chapter-skip{background:none;border:0;border-bottom:1px solid #928879;padding:8px 0;color:#e2d7c8}.chapter-panel{position:relative;background:#151617;padding:20px;color:#efe9df}.chapter-panel-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:14px;letter-spacing:.06em}.chapter-back{color:#ddd1c0;background:none;border:1px solid #51483e;padding:9px 15px}.chapter-contact{display:flex;gap:24px;padding:22px 6vw;border-top:1px solid #ffffff19;background:#101112}.chapter-contact a{font-size:14px;color:#d7b58c;text-decoration:none}
.cinematic-chapter{background:#101112}.cinematic-chapter .site-header{background:#101112;color:#f1ede7;border-color:#ffffff1b;min-height:86px;padding:14px 5vw;box-shadow:none}.cinematic-chapter .brand{color:#f1ede7}.cinematic-chapter .brand img{width:48px;height:48px}.cinematic-chapter .brand span{font-size:22px}.cinematic-chapter .brand small{font-size:10px;letter-spacing:.12em}.cinematic-chapter #navigazione a{color:#bbb6af;font-size:14px}.cinematic-chapter #navigazione a[aria-current=page]{color:#e5bb88;border-color:#e5bb88}.cinematic-chapter .footer,.cinematic-chapter>.mobile-contact{display:none!important}.cinematic-chapter main{padding:0;margin:0}.chapter-world.is-ready{height:calc(100svh - 86px);min-height:580px}.is-ready .chapter-intro{position:absolute;inset:50% auto auto 0;transform:translateY(-54%);width:57%;padding:0 0 0 6vw;transition:transform 1s,opacity .8s,width 1s}.is-ready .chapter-panel{position:absolute;right:0;top:0;bottom:57px;width:58%;padding:0;background:rgba(17,18,19,.94);backdrop-filter:blur(16px);transform:translateX(105%);opacity:0;visibility:hidden;transition:transform 1s cubic-bezier(.22,.8,.12,1),opacity .8s,visibility 1s;border-left:1px solid #ffffff1a;display:flex;flex-direction:column}.is-ready .chapter-panel-bar{padding:22px 28px;margin:0;border-bottom:1px solid #ffffff14;flex-shrink:0}.chapter-panel-scroll{overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#706354 transparent;padding:25px 28px 40px;scrollbar-width:thin}.is-ready .chapter-contact{position:absolute;bottom:0;right:0;width:58%;height:57px;box-sizing:border-box;z-index:5;padding:18px 28px;justify-content:flex-end;transform:translateY(100%);transition:transform .7s .25s}.is-running .chapter-intro{opacity:.25;transform:translateY(-54%) translateX(-20px)}.is-open .chapter-panel{transform:translateX(0);opacity:1;visibility:visible}.is-open .chapter-contact{transform:translateY(0)}.is-open .chapter-intro{width:38%;transform:translateY(-54%);opacity:1}.is-open .chapter-intro h1{font-size:clamp(28px,3.1vw,48px)}.is-open .chapter-intro .chapter-start,.is-open .chapter-subtitle,.is-open .chapter-toolbar{opacity:0;pointer-events:none}.is-open .chapter-film{right:48%;transition:right 1s}.is-open .chapter-film video{object-position:65% 50%;transform:scale(1.18)}.is-open .chapter-vignette{background:linear-gradient(0deg,#101112e8,transparent 65%)}.is-open .chapter-intro{top:auto;bottom:45px;transform:none;padding-left:4vw}.is-open .chapter-object{pointer-events:none}
.chapter-panel [hidden]{display:none!important}.chapter-panel .section-wrap,.chapter-panel .service-overview,.chapter-panel .gallery-section{padding:0;max-width:none;margin:0}.chapter-panel .page-cta{margin-top:32px;padding:24px 0;border-top:1px solid #ffffff21;background:transparent;display:block}.chapter-panel .page-cta h2{font-size:27px;color:#e4d9cc;margin-bottom:16px}.chapter-panel .page-cta .eyebrow{display:none}.chapter-panel .button-red{background:#b58b60;color:#151311;border:0}.chapter-panel .service-cards{display:block;gap:0}.chapter-panel .visual-service{border:0;background:transparent;color:#eee5db;overflow:hidden;animation:chapter-in .5s both}.chapter-panel .service-photo{aspect-ratio:16/9;display:block;overflow:hidden}.chapter-panel .service-photo img{height:100%;width:100%;object-fit:cover}.chapter-panel .service-card-copy{padding:22px 0}.chapter-panel .service-card-copy h3{font-size:36px;line-height:1.1;margin:10px 0 16px;color:#f1e7da}.chapter-panel p{color:#bfbab2;line-height:1.65;font-size:16px}.chapter-panel .service-number{color:#c7a27a}.chapter-panel .text-link{color:#dbb78e}.service-chapters,.company-chapters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}.service-chapters button,.company-chapters button{font:inherit;font-size:13px;padding:12px 14px;border:1px solid #ffffff29;background:transparent;color:#c6bdae;cursor:pointer}.service-chapters button[aria-pressed=true],.company-chapters button[aria-pressed=true]{background:#d0ae83;border-color:#d0ae83;color:#17130f}.chapter-panel .intro{display:block}.chapter-panel .intro-copy{max-width:none}.chapter-panel .experience-mark strong{font-size:84px;color:#d3ae83}.chapter-panel .experience-mark p{margin-top:0}.chapter-panel .company-image{margin:0;animation:chapter-in .5s both}.chapter-panel .company-image img{height:auto;max-height:420px;object-fit:cover}.chapter-panel .company-image p{font-size:30px;font-family:Georgia,serif}.chapter-panel h2{color:#f1e7da;font-size:34px;line-height:1.12}.chapter-panel .service-area{border:0;background:none}.chapter-panel .method{background:none}.chapter-panel .gallery-categories{position:static;margin:0 0 22px;padding:0;display:flex;flex-wrap:wrap;gap:8px;background:none;border:0}.chapter-panel .gallery-categories a{font-size:13px;padding:10px 14px;color:#d0c5b7;border:1px solid #ffffff29}.chapter-panel .gallery-categories a[aria-current=true]{background:#d0ae83;color:#17130f;border-color:#d0ae83}.chapter-panel .portfolio-grid{grid-template-columns:1fr 1fr;gap:16px}.chapter-panel .portfolio-grid figure:first-child{grid-column:1/-1}.chapter-panel .portfolio-grid img{aspect-ratio:4/3;object-fit:cover}.chapter-panel .portfolio-grid figcaption{font-size:14px;color:#b9b1a5;padding:9px 0}.chapter-panel .gallery-section-heading h2{font-size:32px}.chapter-panel .gallery-section-heading span{font-size:13px;color:#a69b8e}.chapter-panel .video-section{margin-top:25px;background:transparent}.chapter-panel .contact{display:block;margin:0;padding:0}.chapter-panel .contact-copy>p:first-child,.chapter-panel .contact-location{display:none}.chapter-panel .contact-copy>p{margin-top:0}.chapter-panel .direct-contacts{border:0;display:grid;gap:10px}.chapter-panel .contact-action{padding:22px;border:1px solid #ffffff20;background:#242322;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#f0e6d9}.chapter-panel .contact-action strong{font-size:23px}.chapter-panel .contact-action small{color:#c8ae8c;font-size:14px}.chapter-panel .contact-action:hover{border-color:#d0ae83;background:#302a24}.contact-project-toggle{display:block;width:100%;padding:17px 20px;margin:24px 0 0;background:#d0ae83;color:#17130f;font:inherit;border:0;text-align:left;cursor:pointer}.chapter-panel .contact-form-wrap{background:#e5e0d6;color:#242321;padding:24px;margin-top:12px}.chapter-panel .contact-form-wrap p{color:#5d5a53}.chapter-panel .contact-form-wrap label,.chapter-panel .contact-form-wrap legend{color:#242321}.chapter-panel .faq{padding:26px 0;background:none}.chapter-panel .faq summary{color:#d5c9b9}.chapter-panel .faq h2{font-size:28px}.chapter-panel .faq details{border-color:#ffffff22}
@keyframes chapter-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.cinematic-chapter .site-header{height:120px;min-height:120px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;gap:12px;padding:10px 18px}.cinematic-chapter .brand img{width:36px;height:36px}.cinematic-chapter .brand span{font-size:19px}.cinematic-chapter .brand small{font-size:8px}.cinematic-chapter #navigazione{width:100%;display:flex;justify-content:space-between;gap:5px}.cinematic-chapter #navigazione a{font-size:13px;padding:9px 5px}.chapter-world.is-ready{height:calc(100svh - 120px);min-height:540px}.is-ready .chapter-intro{top:42px;transform:none;width:90%;padding-left:7vw}.chapter-intro h1{font-size:clamp(38px,10vw,58px);max-width:450px}.chapter-intro .eyebrow{margin:0 0 18px;font-size:12px}.chapter-subtitle{max-width:270px;font-size:14px;line-height:1.5}.chapter-start{margin-top:12px;font-size:14px}.chapter-film video{object-position:67% 50%}.chapter-vignette{background:linear-gradient(180deg,#101112e8,transparent 75%),linear-gradient(0deg,#101112cc,transparent 20%)}.chapter-object{inset:35% 0 12%;z-index:2}.chapter-toolbar{bottom:25px;left:7vw;right:7vw}.chapter-toolbar span{font-size:10px;max-width:135px;line-height:1.7}.chapter-toolbar button{font-size:13px}.is-ready .chapter-panel{top:28%;bottom:54px;width:100%;border-top:1px solid #ffffff22;border-left:0;transform:translateY(110%);background:#151617f5}.is-open .chapter-panel{transform:translateY(0)}.chapter-panel-scroll{padding:20px 20px 32px}.is-ready .chapter-panel-bar{padding:14px 20px}.is-ready .chapter-contact{width:100%;height:54px;padding:17px 20px;justify-content:space-between}.is-open .chapter-film{right:0;bottom:55%;transition:bottom 1s}.is-open .chapter-film video{object-position:70% 50%;transform:scale(1.1)}.is-open .chapter-intro{top:25px;bottom:auto;width:55%;padding-left:7vw;transform:none}.is-open .chapter-intro h1{font-size:25px;margin:0}.is-open .chapter-intro .eyebrow{font-size:10px;margin-bottom:10px}.is-open .chapter-intro .chapter-subtitle{display:none}.service-chapters button,.company-chapters button{font-size:12px;padding:10px 11px}.chapter-panel .service-card-copy h3{font-size:30px}.chapter-panel .contact-action{padding:18px 16px}.chapter-panel .contact-action strong{font-size:20px}.chapter-panel .contact-action small{font-size:13px}.chapter-panel .form-grid{grid-template-columns:1fr}.chapter-panel .portfolio-grid{gap:12px}.chapter-panel .gallery-section-heading span{display:none}.chapter-panel .contact-form-wrap{padding:20px 14px}}
@media(prefers-reduced-motion:reduce){.chapter-world *{animation:none!important;transition:none!important}.chapter-film video{transform:none!important}}

/* Mobile-first cleanup: compact navigation, one primary action, uncropped home film. */
html,body{max-width:100%;overflow-x:clip}*,*::before,*::after{box-sizing:border-box}
body .site-header,body.cinematic-chapter .site-header,body:has(.cinema-hero) .site-header{height:72px;min-height:72px;max-height:none;padding:12px 24px;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:16px;background:#101112;color:#f4eee4;z-index:50}
body .site-header .brand{min-width:0;gap:10px;color:#f4eee4;flex-shrink:1}body .site-header .brand img{width:38px;height:38px;flex-shrink:0}body .site-header .brand span{font-size:19px;letter-spacing:.04em;white-space:nowrap}body .site-header .brand small{display:none}
body .site-header #navigazione{width:auto;min-width:0;flex-wrap:nowrap;gap:22px;overflow:visible}body .site-header #navigazione a{color:#d4cdc3;background:none;font-size:15px;padding:10px 0;white-space:nowrap}body .site-header .menu-toggle{display:none;color:#f4eee4;background:none;border:1px solid #ffffff40;padding:9px 12px;font:inherit;font-size:14px;min-height:44px;flex-shrink:0;align-items:center;gap:8px;cursor:pointer}body .menu-lines{display:none}
body .chapter-world.is-ready{height:calc(100svh - 72px);min-height:0}.chapter-toolbar,.chapter-contact,.chapter-subtitle,.chapter-intro>.eyebrow,.chapter-panel .page-cta{display:none!important}.chapter-intro h1{max-width:560px;font-size:clamp(38px,5vw,72px);line-height:1.08}.chapter-intro h1 em{color:inherit}.chapter-start{margin-top:12px}.chapter-start:after{display:none}.is-ready .chapter-panel{bottom:0}.chapter-panel .chapter-panel-bar{font-size:16px;letter-spacing:0}.chapter-back{border:0;background:none;padding:8px;font-size:14px;min-height:44px}.chapter-panel p,.chapter-panel .intro-copy .lead,.inner-page .chapter-panel .intro-copy .lead{color:#d4cec5;font-size:16px;line-height:1.6;letter-spacing:0}.chapter-panel .eyebrow:before{display:none}.chapter-panel .service-card-copy .service-no{display:none}.chapter-panel .service-card-copy{padding:18px 0}.chapter-panel .service-card-copy h3{font-size:30px;margin:0 0 15px}.chapter-panel .gallery-section-heading{display:none}.chapter-selector{display:block;margin:0 0 20px;color:#bfb8ae;font-size:13px}.chapter-selector select{display:block;width:100%;min-height:48px;margin-top:6px;padding:10px 38px 10px 14px;color:#f1e8dc;background:#242424;border:1px solid #5a5249;border-radius:4px;font:inherit;font-size:16px}.chapter-panel .service-chapters,.chapter-panel .gallery-categories{display:none!important}.chapter-panel .portfolio-grid{grid-template-columns:1fr;gap:20px}.chapter-panel .portfolio-grid figure{grid-column:auto!important;margin:0}.chapter-panel .portfolio-grid img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.company-simple>p{margin:0 0 18px}.company-simple .company-years{font-size:58px;line-height:1.1;color:#d4b28a;letter-spacing:-.04em;margin:0 0 24px}.company-simple .company-years span{font-size:15px;color:#c7beb2;display:block;letter-spacing:0;margin-top:8px}.company-simple>img{display:block;width:100%;height:auto;border-radius:3px;margin:24px 0}.company-simple details{border-top:1px solid #ffffff25;padding:18px 0}.company-simple summary{font-size:16px;cursor:pointer;color:#f1e8dc}.company-simple details p{margin-top:16px}.chapter-panel-scroll{min-height:0}.chapter-panel .contact-copy>p{font-size:16px}.chapter-panel .contact-action{background:transparent;border:0;border-bottom:1px solid #ffffff28;padding:19px 0}.chapter-panel .contact-action strong{font-size:20px}.chapter-panel .faq h2{font-size:25px}
body:has(.real-cinema) .mobile-contact{display:none!important}body:has(.real-cinema) .site-header{position:absolute;top:0;left:0;right:0;background:linear-gradient(#101112de,#10111200);border:0}
body .real-cinema{height:100svh;min-height:0;max-height:none;background:#101112}body .real-cinema .real-scenes{position:absolute;inset:0;width:100%;height:100%;min-height:0}body .real-cinema .home-film{width:100%;height:100%;object-fit:contain;object-position:center;transform:none}body .real-cinema .real-shade{background:linear-gradient(180deg,#10111255,transparent 22%,transparent 72%,#10111299);pointer-events:none}body .real-cinema .real-copy{position:absolute;top:auto;bottom:70px;left:5vw;right:5vw;max-width:none;pointer-events:none}body .real-cinema .real-copy h1{font-size:clamp(30px,4vw,54px);line-height:1.08;margin:0}body .real-cinema .real-copy h1 br{display:none}body .real-cinema .real-copy>p{display:none}body .real-cinema .real-actions{margin:16px 0 0;pointer-events:auto}body .real-cinema .real-actions button{border:0;border-bottom:1px solid #ffffff65;padding:9px 0;background:none;font-size:14px;color:#eee6d9}body .real-cinema .real-bottom{left:auto;right:5vw;bottom:22px;width:auto;border:0;padding:0;display:block}body .real-cinema .film-toggle{min-height:44px;padding:8px 10px;font-size:13px}
@media(max-width:1100px){
 body .site-header,body.cinematic-chapter .site-header,body:has(.cinema-hero) .site-header{padding:10px 20px;height:66px;min-height:66px;position:relative}
 body:has(.cinema-hero) .site-header{position:absolute}
 body .site-header .brand img{width:34px;height:34px}body .site-header .brand span{font-size:17px}body .site-header .menu-toggle{display:inline-flex!important}
 .has-js body .site-header #navigazione{display:none!important}.has-js body .site-header #navigazione.is-open{display:flex!important}
 body .site-header #navigazione{position:absolute;top:66px;left:0;right:0;width:100%;max-width:100%;height:auto;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:10px 24px 20px;background:#151617;border-bottom:1px solid #ffffff30;box-shadow:0 24px 30px #0008;max-height:calc(100svh - 66px);overflow-y:auto;z-index:60}
 body .site-header #navigazione a{display:block;padding:13px 2px;font-size:18px;min-height:48px;border:0;border-bottom:1px solid #ffffff15}
 body .site-header #navigazione a[aria-current=page]{color:#ddb786;background:none;border-bottom:1px solid #ffffff15}
 body .chapter-world.is-ready{height:calc(100svh - 66px);min-height:0}
 .is-ready .chapter-intro{top:34px;bottom:auto;left:0;width:100%;padding:0 24px;transform:none;max-width:100%}
 .chapter-intro h1{font-size:clamp(32px,7.5vw,46px);max-width:360px;margin-bottom:12px;letter-spacing:-.04em}.chapter-start{font-size:15px;min-height:44px;padding:10px 0}
 .chapter-object{inset:30% 0 0}.chapter-film video{object-fit:cover;object-position:64% 50%}
 .chapter-world.is-open .chapter-intro{display:none}.chapter-world.is-open .chapter-film{top:0;right:0;left:0;bottom:auto;height:145px;transition:height .8s}.chapter-world.is-open .chapter-film video{object-fit:cover;object-position:center 55%;transform:none}
 .is-ready .chapter-panel{top:145px;bottom:0;left:0;right:0;width:100%;border-left:0;border-top:1px solid #ffffff25;transform:translateY(110%);background:#151617}.chapter-world.is-open .chapter-panel{transform:translateY(0)}
 .is-ready .chapter-panel-bar{padding:8px 20px;min-height:56px;margin:0}.chapter-panel-scroll{padding:20px 20px 32px}.chapter-panel .chapter-selector{margin-bottom:18px}.chapter-panel .section-wrap{padding:0}.chapter-panel .contact-form-wrap{padding:20px 16px}.chapter-panel .form-grid{grid-template-columns:1fr}.chapter-panel .service-photo{aspect-ratio:4/3}.chapter-panel .service-card-copy h3{font-size:28px}
 body .real-cinema .real-copy{top:92px;bottom:auto;left:24px;right:24px}body .real-cinema .real-copy h1{font-size:34px;max-width:330px}body .real-cinema .real-actions{margin-top:12px}body .real-cinema .real-bottom{right:18px;bottom:max(16px,env(safe-area-inset-bottom))}
}
@media(max-width:360px){body .site-header .brand span{font-size:15px}body .site-header,body.cinematic-chapter .site-header,body:has(.cinema-hero) .site-header{padding-left:14px;padding-right:14px}.chapter-intro h1{font-size:30px}.chapter-panel-scroll{padding:18px 16px}.chapter-panel .contact-action{display:block}.chapter-panel .contact-action small{display:block;margin-top:5px}}
@media(max-height:650px) and (max-width:1100px){body .real-cinema .real-copy h1{font-size:26px}body .real-cinema .real-copy{top:78px}.real-cinema .real-actions{margin-top:5px!important}.chapter-world.is-open .chapter-film{height:90px}.chapter-world.is-open .chapter-panel{top:90px}.is-ready .chapter-intro{top:20px}.chapter-intro h1{font-size:29px}}

/* Continuous films and consistent dark contact surfaces. */
.chapter-motion{position:absolute;right:20px;top:18px;z-index:6;border:1px solid #ffffff36;border-radius:30px;background:#10111296;color:#f4eee4;font:inherit;font-size:12px;min-width:68px;min-height:44px;padding:8px 14px;cursor:pointer;backdrop-filter:blur(8px)}
.chapter-world.is-open .chapter-motion{right:auto;left:20px;top:18px}
body .inner-page .chapter-panel{--paper:#151617;--ink:#f1eae0;--muted:#c7c1b8;--line:#ffffff26;--accent:#d2ae82;color:#f1eae0;background:#151617}
body .chapter-panel #contatti,body .chapter-panel #contatti .contact-copy,body .chapter-panel #contatti .direct-contacts{background:transparent!important;color:#f1eae0;box-shadow:none;border:0}
body .chapter-panel #contatti{padding:0;margin:0;display:block}
body .chapter-panel #contatti .contact-copy>p:not(.eyebrow){font:400 16px/1.6 var(--sans);color:#c7c1b8!important;margin:0 0 22px;max-width:none;background:transparent}
body .chapter-panel #contatti .direct-contacts{display:block;gap:0}
body .chapter-panel #contatti .contact-action,body .chapter-panel #contatti .contact-action:hover{background:transparent!important;color:#f2e9dd!important;border:0;border-bottom:1px solid #ffffff25;padding:22px 0;min-height:80px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:20px}
body .chapter-panel #contatti .contact-action strong{font:500 19px/1.3 var(--sans);color:#f2e9dd!important}
body .chapter-panel #contatti .contact-action small{font:400 14px/1.4 var(--sans);color:#cbb08e!important;overflow-wrap:anywhere;text-align:right}
body .chapter-panel .contact-project-toggle{background:#c6a47c;color:#17130f;margin:25px 0 0;border-radius:4px;font-size:15px;padding:16px 18px}
body .chapter-panel .contact-form-wrap{background:#202122;color:#ece5da;border:1px solid #ffffff24;border-radius:4px;margin-top:16px;padding:22px}
body .chapter-panel .contact-form-wrap label,body .chapter-panel .contact-form-wrap legend{color:#ece5da}
body .chapter-panel .contact-form-wrap input,body .chapter-panel .contact-form-wrap textarea{background:#2a2b2c;color:#f3ede4;border-color:#65635d;min-width:0}
body .chapter-panel .contact-form-wrap input::placeholder,body .chapter-panel .contact-form-wrap textarea::placeholder{color:#b9b5ae}
body .chapter-panel .contact-form-wrap p{color:#c7c1b8}
body .chapter-panel .contact-form-wrap .service-choices span{background:#272829;color:#e5ddd0;border-color:#696157;font-size:14px}
body .chapter-panel .contact-form-wrap .service-choices input:checked+span{background:#c6a47c;color:#17130f}
body .real-cinema{background:#131619}
body .real-cinema::before{content:'';position:absolute;inset:-24px;background:linear-gradient(#10111299,#10111266),url('assets/casa-portico.webp') center/cover;filter:blur(18px);opacity:.65;z-index:-1;pointer-events:none}
body .real-cinema .real-copy h1{font-family:var(--sans);font-weight:400;letter-spacing:-.045em;line-height:1.1}
body .real-cinema .real-copy h1 span{display:block}body .real-cinema .real-copy h1 em{display:block;font-family:Georgia,serif;font-weight:400;color:#e5c9a7;margin-top:3px}
body .real-cinema .real-shade{background:linear-gradient(180deg,#101112a6,transparent 30%,transparent 75%,#10111270)}
body .real-cinema .real-scenes{background:transparent}body .real-cinema .real-actions button{font-size:14px;padding:9px 0;color:#eee6d9}
@media(max-width:1100px){body .real-cinema .real-copy{top:90px;left:24px;right:24px}body .real-cinema .real-copy h1{font-size:38px}.chapter-motion{top:auto;bottom:20px;right:20px}.chapter-world.is-open .chapter-motion{top:12px;bottom:auto;left:auto;right:14px;font-size:11px;min-height:36px;min-width:62px}.chapter-panel .chapter-panel-bar{border-bottom-color:#ffffff16}.chapter-panel .chapter-back{color:#b5aaa0;font-size:13px}body .chapter-panel #contatti .contact-action{padding:20px 0}.chapter-panel-scroll{padding-top:18px}}
@media(max-width:360px){body .chapter-panel #contatti .contact-action{display:block}body .chapter-panel #contatti .contact-action small{display:block;text-align:left;margin-top:7px}body .real-cinema .real-copy h1{font-size:33px}}
@media(max-height:650px) and (max-width:1100px){body .real-cinema .real-copy{top:76px}body .real-cinema .real-copy h1{font-size:25px;line-height:1.05}body .real-cinema .real-actions{margin-top:6px}}

/* Pull-up chapter navigation, with a keyboard/tap fallback on the discreet handle. */
.chapter-world.is-ready:not(.is-open){touch-action:pan-x pinch-zoom}
.chapter-world .chapter-object{pointer-events:none}
.chapter-world.is-ready>.chapter-start{position:absolute;bottom:24px;left:50%;top:auto;transform:translateX(-50%);z-index:8;margin:0;padding:20px 20px 8px;min-height:56px;border:0;color:#f0e8dd;background:transparent;text-align:center;white-space:nowrap;font-size:13px;letter-spacing:.03em;cursor:ns-resize}
.chapter-world.is-ready>.chapter-start:before{content:'';position:absolute;top:5px;left:50%;width:42px;height:4px;transform:translateX(-50%);border-radius:4px;background:#e3d4c2}
.chapter-world.is-open>.chapter-start{display:none}
.chapter-world.is-dragging .chapter-panel{visibility:visible;opacity:1;transform:translateY(calc(100% - var(--chapter-pull,0px)));transition:none;pointer-events:none}
.chapter-world.is-dragging>.chapter-start{opacity:.45}
.chapter-world.is-open .chapter-panel-scroll{touch-action:pan-y pinch-zoom}
@media(max-width:1100px){.chapter-world.is-ready>.chapter-start{bottom:max(22px,env(safe-area-inset-bottom));font-size:13px}.chapter-world:not(.is-open) .chapter-motion{bottom:auto;top:16px;right:16px}.chapter-world:not(.is-open) .chapter-intro{top:76px}}

/* Continuous services and the opening chapter chooser. */
body .site-header .menu-toggle{width:44px;height:44px;padding:10px;border:0;justify-content:center;background:transparent!important}
body .site-header .menu-toggle .menu-lines{display:flex!important;flex-direction:column;justify-content:space-between;width:22px;height:16px;position:static;background:none;transform:none}
body .site-header .menu-lines:before,body .site-header .menu-lines:after{display:none!important}
body .site-header .menu-lines i{display:block;width:22px;height:1.5px;background:#f2e9dd;border-radius:2px}
body .inner-page .chapter-panel .service-cards{display:block!important}
body .inner-page .chapter-panel .service-cards .visual-service{display:block!important;width:100%;grid-template-columns:none;margin:0 0 38px;padding:0 0 30px;border-bottom:1px solid #ffffff28;background:transparent}
body .inner-page .chapter-panel .visual-service .service-photo{display:block!important;width:100%;height:auto;aspect-ratio:4/3;padding:0;margin:0;grid-column:auto}
body .inner-page .chapter-panel .visual-service .service-photo img{width:100%;height:100%;object-fit:cover;display:block}
body .inner-page .chapter-panel .visual-service .service-card-copy{display:block!important;width:100%;padding:22px 0 0;margin:0}
body .chapter-panel .service-card-number{display:none!important}
body .chapter-panel .service-scope{display:block;border-top:1px solid #ffffff20;margin-top:22px;padding-top:18px}
body .chapter-panel .service-scope>span{font-size:12px;color:#cbb08e;letter-spacing:.08em}body .chapter-panel .service-scope p{font-size:15px;color:#c7c1b8}
body .chapter-panel .service-inline-details{font-size:15px;line-height:1.6;color:#c7c1b8;padding-left:20px;margin:16px 0 0}body .chapter-panel .service-inline-details li{margin:8px 0}
.home-pull{display:none}.pull-ready .home-pull{display:block;position:absolute;bottom:max(26px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);border:0;background:transparent;color:#f2e8db;font:inherit;font-size:13px;white-space:nowrap;padding:20px 15px 8px;z-index:8;min-height:54px;cursor:ns-resize}
.home-pull>span{position:absolute;width:42px;height:4px;background:#e4d2bd;top:6px;left:50%;transform:translateX(-50%);border-radius:4px}
.real-cinema.pull-ready:not(.explore-open){touch-action:pan-x pinch-zoom}
.home-explore{position:absolute;bottom:0;left:0;right:0;height:min(72%,620px);background:#151617f5;backdrop-filter:blur(18px);border-top:1px solid #ffffff30;border-radius:18px 18px 0 0;padding:20px max(24px,5vw) max(25px,env(safe-area-inset-bottom));z-index:12;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y pinch-zoom;transform:translateY(100%);transition:transform .65s cubic-bezier(.2,.75,.15,1)}
.home-explore[hidden]{display:none!important}.explore-open .home-explore{transform:translateY(0)}.home-pulling .home-explore{transform:translateY(calc(100% - var(--home-pull,0px)));transition:none}.explore-open .home-pull{display:none}
.home-explore-top{display:flex;align-items:center;justify-content:space-between;color:#baa993;font-size:14px;margin-bottom:12px}.home-explore-close{background:none;border:0;color:#d9d0c5;font:inherit;min-height:44px;padding:8px;cursor:pointer}
.home-explore nav{display:block!important;position:static!important;width:100%;background:none!important}.home-explore nav a{display:flex;align-items:center;justify-content:space-between;gap:20px;color:#f2e9dd;text-decoration:none;padding:22px 0;border-bottom:1px solid #ffffff24;min-height:72px}.home-explore nav a span{font-size:clamp(25px,4vw,40px);font-family:Georgia,serif;line-height:1.1}.home-explore nav a small{font-size:14px;color:#bba992;text-align:right}.home-explore nav a:hover{color:#d5b58e}.explore-open .real-copy{opacity:.2}.explore-open .real-bottom{visibility:hidden}
@media(max-width:600px){.home-explore{height:min(76%,580px);padding-left:24px;padding-right:24px}.home-explore nav a{padding:22px 0;min-height:74px}.home-explore nav a small{font-size:12px;max-width:125px}.home-explore nav a span{font-size:29px}.real-cinema .real-bottom{bottom:18px!important}.pull-ready .home-pull{font-size:12px;bottom:22px}}
@media(prefers-reduced-motion:reduce){.home-explore{transition:none}}

/* Dedicated call area below the film, clear of the house and swipe handle. */
body .real-cinema .real-scenes{bottom:110px;height:calc(100% - 110px)}
.home-call-row{position:absolute;bottom:max(26px,env(safe-area-inset-bottom));left:20px;right:auto;display:flex;justify-content:flex-start;z-index:8}
.home-call{display:inline-flex;align-items:center;justify-content:center;min-height:46px;min-width:0;padding:10px 14px;border:1px solid #d0ae82;border-radius:30px;background:#d0ae82;color:#171819;font:600 13px var(--sans);text-decoration:none;box-shadow:0 4px 18px #0003}
.home-call:hover{background:#e4c59d}.home-call:focus-visible{outline:3px solid #fff;outline-offset:4px}
.explore-open .home-call-row,.home-pulling .home-call-row{visibility:hidden}
@media(min-width:1101px){body .real-cinema .real-copy{bottom:166px}}

/* Three distinct touch targets: call, explore, playback. */
body .real-cinema .home-pull{bottom:max(22px,env(safe-area-inset-bottom));width:134px;padding:20px 0 8px;font-size:12px}
@media(max-width:380px){.home-call-row{left:12px}.home-call{padding:10px;font-size:12px}body .real-cinema .home-pull{width:126px;font-size:11px}body .real-cinema .real-bottom{right:12px}body .real-cinema .film-toggle{font-size:11px;padding:8px;min-width:58px}}
