@font-face{font-family:ThmanyahSans;src:url(/fonts/ThmanyahSans-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:ThmanyahSans;src:url(/fonts/ThmanyahSans-Medium.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:ThmanyahDisplay;src:url(/fonts/ThmanyahSerifDisplay-Bold.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:ThmanyahText;src:url(/fonts/ThmanyahSerifText-Regular.woff2)format("woff2");font-weight:400;font-display:swap}:root{--ivory:#f4f0e9;--espresso:#29221d;--copper:#8d6848;--sand:#d9cdbc;--white:#fff;--line:#29221d33;--sans:ThmanyahSans,sans-serif;--display:ThmanyahDisplay,serif;--text:ThmanyahText,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;max-width:100%;overflow-x:hidden}body{background:var(--ivory);max-width:100%;color:var(--espresso);font-family:var(--sans);margin:0;line-height:1.7;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button,a{touch-action:manipulation}:focus-visible{outline:3px solid var(--copper);outline-offset:4px}.site-header{border-bottom:1px solid var(--line);z-index:10;align-items:center;gap:40px;width:100%;height:76px;padding:0 clamp(20px,4vw,72px);display:flex;position:relative}.brand{align-items:center;gap:12px;min-width:0;margin-inline-end:auto;font-weight:500;display:flex}.brand-mark{width:36px;height:36px;font-family:var(--display);border:1px solid;border-radius:50%;flex:0 0 36px;place-items:center;font-size:20px;display:inline-grid}.site-header nav{gap:30px;font-size:14px;display:flex}.site-header nav a,.header-contact{position:relative}.site-header nav a:after,.header-contact:after{content:"";background:currentColor;height:1px;transition:left .25s;position:absolute;bottom:-7px;left:100%;right:0}.site-header nav a:hover:after,.header-contact:hover:after{left:0}.header-contact{flex:none;font-weight:500}.hero{border-bottom:1px solid var(--line);grid-template-columns:minmax(330px,.82fr) 1.18fr;width:100%;min-height:calc(100svh - 76px);display:grid}.hero-copy{flex-direction:column;justify-content:center;min-width:0;padding:clamp(48px,8vw,130px) clamp(24px,6vw,100px);display:flex}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--copper);font-size:12px;font-weight:500}.hero h1,.section h2,.legal h1{font-family:var(--display);letter-spacing:-.035em;overflow-wrap:anywhere;margin:.25em 0;font-size:clamp(44px,6vw,92px);line-height:1.08}.lead{font-family:var(--text);max-width:650px;font-size:clamp(18px,1.4vw,24px)}.actions{align-items:center;gap:28px;margin-top:32px;display:flex}.button{cursor:pointer;border:0;justify-content:center;align-items:center;min-height:50px;padding:0 28px;display:inline-flex}.button.dark{background:var(--espresso);color:var(--white)}.button:disabled{opacity:.55;cursor:wait}.text-link{border-bottom:1px solid var(--espresso);padding-block:8px}.hero-note{color:#71655c;margin-top:auto;font-size:12px}.hero-media,.about-media{background:var(--sand);min-height:500px;position:relative;overflow:hidden}.hero-media img,.about-media img,.project-image img{object-fit:cover}.placeholder{text-align:center;color:#6f6257;background-image:linear-gradient(90deg,#0000 49.8%,#29221d14 50%),linear-gradient(#0000 49.8%,#29221d14 50%);background-size:64px 64px;flex-direction:column;justify-content:center;align-items:center;display:flex}.placeholder small{opacity:.7}.section{padding:clamp(78px,11vw,170px) clamp(22px,7vw,120px)}.about{grid-template-columns:80px 1fr minmax(300px,.75fr);align-items:center;gap:clamp(24px,5vw,90px);display:grid}.section-number{font-family:var(--display);color:var(--copper);align-self:start;font-size:64px}.about h2,.process h2,.booking h2{font-size:clamp(40px,5vw,72px)}.about-copy>p:last-child,.booking-intro>p:last-child{font-family:var(--text);max-width:700px;font-size:clamp(20px,2vw,30px)}.about-media{min-height:600px}.portfolio{background:var(--espresso);color:var(--ivory)}.section-heading{justify-content:space-between;align-items:end;gap:40px;margin-bottom:60px;display:flex}.section-heading h2{max-width:850px;font-size:clamp(40px,5vw,76px)}.section-heading>p{color:#cabfb3;max-width:300px}.filters{border-bottom:1px solid #f4f0e938;flex-wrap:wrap;gap:10px;padding-bottom:18px;display:flex}.filters button{color:inherit;cursor:pointer;opacity:.65;background:0 0;border:0;padding:12px 16px}.filters button[aria-pressed=true]{opacity:1;border-bottom:2px solid var(--copper)}.portfolio-grid{grid-template-columns:repeat(2,1fr);gap:60px 24px;margin-top:48px;display:grid}.portfolio-grid article.featured{grid-column:1/-1}.project-image{background:#3b332d;height:50vw;max-height:720px;position:relative;overflow:hidden}.portfolio-grid article:not(.featured) .project-image{height:34vw;max-height:520px}.portfolio-grid h3{font-family:var(--text);font-size:24px;font-weight:400}.empty-state{text-align:center;border:1px solid #f4f0e938;place-content:center;min-height:360px;margin-top:48px;display:grid}.empty-state span{font-family:var(--display);font-size:36px}.empty-state p{color:#bcb0a5}.process ol{border-top:1px solid var(--line);margin:50px 0 0;padding:0;list-style:none}.process li{border-bottom:1px solid var(--line);grid-template-columns:180px 1fr;gap:40px;padding:38px 0;display:grid}.process li b{font-family:var(--display);color:var(--copper);font-size:56px;font-weight:400}.process li h3{font-family:var(--text);margin:5px 0;font-size:27px}.process li p{margin:0}.booking{background:var(--sand);grid-template-columns:.8fr 1.2fr;gap:clamp(50px,8vw,130px);display:grid}.booking-form{background:var(--white);grid-template-columns:1fr 1fr;gap:25px;padding:clamp(24px,4vw,60px);display:grid}.field{gap:7px;display:grid}.field.full,.consent,.booking-form>.button,.form-message{grid-column:1/-1}.field label{font-size:13px}.field label span{opacity:.55}.field input,.field select,.field textarea{background:0 0;border:0;border-bottom:1px solid #8f857d;border-radius:0;width:100%;min-height:48px;padding:10px 2px}.field textarea{resize:vertical;border:1px solid #b7aea7;padding:12px}.consent{align-items:start;gap:9px;font-size:13px;display:flex}.consent a{text-decoration:underline}.trap{position:absolute!important;right:-9999px!important}.form-message{min-height:26px;margin:0;font-size:14px}.form-message.done{color:#385c37}.form-message.error{color:#9b2f2f}footer{background:var(--espresso);color:var(--ivory);grid-template-columns:2fr 1fr 1fr;gap:50px;padding:80px clamp(22px,7vw,120px) 28px;display:grid}footer h2{font-family:var(--display);margin:18px 0 4px;font-size:46px}.footer-brand p{color:#c9bdb3;max-width:420px}footer h3{color:var(--copper);font-size:13px}footer>div:not(.footer-brand){flex-direction:column;align-items:start;gap:10px;display:flex}.copyright{color:#b2a79e;border-top:1px solid #f4f0e929;grid-column:1/-1;padding-top:24px;font-size:12px}.legal{max-width:800px;margin:auto;padding:80px 22px 140px}.legal>a{border-bottom:1px solid;margin-bottom:70px;display:inline-block}.legal h1{font-size:64px}.legal h2{font-family:var(--display);margin-top:50px;font-size:30px}@media (max-width:800px){.site-header{gap:16px;height:64px;padding-inline:16px}.site-header nav{display:none}.brand{font-size:14px}.hero{flex-direction:column;min-height:auto;display:flex}.hero-copy{width:100%;min-height:68svh;padding:62px 22px 30px}.hero h1{font-size:49px}.actions{flex-wrap:wrap}.hero-note{margin-top:48px}.hero-media{min-height:54svh}.section{padding:78px 20px}.about{grid-template-columns:1fr}.section-number{font-size:40px}.about-media{min-height:480px}.section-heading{margin-bottom:38px;display:block}.section-heading>p{margin-top:24px}.filters{scrollbar-width:none;flex-wrap:nowrap;max-width:100vw;margin-inline:-20px;padding-inline:20px;overflow-x:auto}.filters button{white-space:nowrap}.portfolio-grid{grid-template-columns:1fr;gap:42px}.portfolio-grid article.featured{grid-column:auto}.project-image,.portfolio-grid article:not(.featured) .project-image{height:120vw;max-height:580px}.process li{grid-template-columns:72px 1fr;gap:14px}.process li b{font-size:42px}.booking,.booking-form{grid-template-columns:1fr}.field{grid-column:1/-1}footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}@media (max-width:380px){.brand>span:last-child{display:none}.header-contact{font-size:13px}.hero h1{font-size:42px}.actions{gap:18px}.button{padding-inline:20px}.booking-form{padding-inline:18px}footer{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
