/* One serif family throughout, visually aligned with the supplied raster logo. */
:root{--brand-font:"Times New Roman",Times,serif}
body.editorial,body.editorial :where(h1,h2,h3,h4,p,a,button,input,select,textarea,label,summary,span,strong,small,em,figcaption,li,div){font-family:var(--brand-font)!important}
body.editorial em{font-style:normal}
body.editorial :is(h1,h2,h3){letter-spacing:-.025em}
body.editorial .eyebrow{letter-spacing:.16em}
.editorial .header :is(nav a,.nav-cta,.menu-toggle){font-size:15px}
.editorial :is(.room-tabs button,.project-chapters button){font-size:16px}
.editorial .photo-dialog>p{font-size:16px;line-height:1.5}
.editorial .footer-top>p{font-family:var(--brand-font)!important}
.home-page .services-gateway{align-items:center;margin-bottom:45px}
.home-page .services-gateway h2{margin:10px 0;font-size:clamp(38px,4.5vw,66px)}
.home-page .services-gateway p:not(.eyebrow){font-size:18px;line-height:1.65;max-width:540px}
.home-page .founder-copy p:not(.eyebrow){font-size:18px;line-height:1.7}
.home-page .founder-copy .founder-steps p{font-size:15px;line-height:1.65}
@media(max-width:650px){
 .home-page .services-gateway{gap:14px;margin-bottom:30px}
 .home-page .services-gateway p:not(.eyebrow),.home-page .founder-copy p:not(.eyebrow){font-size:17px}
 .home-page .founder-copy .founder-steps p{font-size:15px}
 .editorial .room-tabs button{font-size:16px;white-space:normal;line-height:1.35}
}

/* Contact section and founder portrait framing. */
.home-page .founder-portrait img{object-position:50% 90%}
.home-page .contact-minimal{padding-block:60px;border-top:1px solid var(--line);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:8%}
.contact-minimal>div>.eyebrow{font-size:11px;margin:0 0 20px;letter-spacing:.16em}
.contact-minimal>div>p:not(.eyebrow):not(.local-note){font-size:22px;line-height:1.5;max-width:400px;margin:0 0 30px;color:var(--ink)}
.contact-minimal .underlined{font-size:15px;padding-block:8px;margin-block:4px}
.contact-minimal .local-note{margin-top:22px}
.contact-minimal form{gap:18px}
.contact-minimal .upload{padding:15px}
@media(max-width:850px){.home-page .contact-minimal{grid-template-columns:1fr;gap:32px;padding-block:42px}.contact-minimal>div>p:not(.eyebrow):not(.local-note){font-size:21px;max-width:550px;margin-bottom:20px}.contact-minimal>div>br{display:none}.contact-minimal .contact-phone{margin-right:24px}.contact-minimal .local-note{max-width:550px}}

/* Matching landscape previews; the photo dialog retains the complete source. */
.editorial .room-photos-landscape .room-photo img{aspect-ratio:3/2;object-fit:cover;object-position:50% 50%}

/* Contact: clear fields, compact copy and a calm reading order. */
.home-page .contact-refined{align-items:start;column-gap:7%;padding-block:70px}
.contact-refined .contact-intro>p:not(.eyebrow):not(.local-note):not(.contact-description){font-size:clamp(28px,3vw,42px);line-height:1.15;margin-bottom:20px;max-width:420px}
.home-page .contact-refined .contact-intro>p.contact-description{font-size:17px;line-height:1.65;color:#68645d;margin-bottom:25px;max-width:350px}
.contact-refined .contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.contact-refined .contact-links a{overflow-wrap:anywhere;max-width:100%;margin:0}
.contact-refined form{display:flex;flex-direction:column;gap:22px;min-width:0}
.contact-refined .form-intro{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:18px;line-height:1.4;margin:0}
.contact-refined .form-intro span{font-size:12px;color:#68645d;align-self:center}
.contact-refined .form-grid{gap:20px 18px}
.contact-refined label{font-size:14px;line-height:1.4;margin:0}
.contact-refined :is(input:not([type=checkbox]):not([type=file]),select,textarea){margin-top:8px;padding:12px 13px;border:1px solid #c9c2b8;background:#fff9;font-size:16px;min-height:48px;border-radius:3px;color:var(--ink)}
.contact-refined textarea{resize:vertical;min-height:120px}
.contact-refined :is(input,textarea)::placeholder{color:#79736a;opacity:1}
.contact-refined .upload{padding:16px;border:1px dashed #b7afa2;border-radius:3px}
.contact-refined .upload .optional{font-size:12px;color:#68645d}
.contact-refined .upload input{padding:12px 0;font-size:14px;cursor:pointer}
.contact-refined input::file-selector-button{font:inherit;padding:8px 14px;border:1px solid #b7afa2;background:var(--paper);color:var(--ink);border-radius:3px;margin-right:12px;cursor:pointer}
.contact-refined .consent{font-size:13px;line-height:1.5;margin:0;gap:10px}
.contact-refined .consent input{margin-top:2px;accent-color:#453d35}
.contact-refined #file-list:empty,.contact-refined #form-status:empty{display:none}
.home-page .contact-refined .local-note{font-size:12px;margin:0;max-width:none;padding:0;border:0;color:#68645d;line-height:1.5}
.contact-refined .button{min-height:50px;border-radius:3px;font-size:16px;margin:0}
@media(max-width:850px){.home-page .contact-refined{gap:36px;padding-block:45px}.home-page .contact-refined .contact-intro>p.contact-description{max-width:520px}.contact-refined .contact-links{flex-direction:row;flex-wrap:wrap;gap:12px 24px}}
@media(max-width:480px){.contact-refined .form-grid{grid-template-columns:1fr}.contact-refined .form-intro{flex-direction:column;gap:5px}.contact-refined .form-intro span{align-self:start}.contact-refined form{gap:20px}}

/* Consistent frames for landscape and portrait photos; full images remain visible. */
.editorial .room-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:22px}
.editorial .room-photo-grid .room-photo{display:block;align-self:stretch;aspect-ratio:1/1;overflow:hidden;background:#e9e5dc}
.editorial .room-photo-grid .room-photo img{display:block;width:100%;height:100%;aspect-ratio:1/1;object-fit:contain;background:transparent}
.editorial .rooms-section{scroll-margin-top:120px}
@media(max-width:600px){.editorial .room-photo-grid{grid-template-columns:1fr;gap:18px}}
.detail-page .project-film.show-whole-frame video{object-fit:contain}

/* Shared vector arrow: identical shape on desktop and mobile, without font/emoji substitution. */
.editorial .link-arrow,.editorial .renovation-tabs button[aria-pressed=true]::after{display:inline-block;width:1em;height:1em;min-width:1em;flex-shrink:0;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url('/assets/link-arrow.svg') center/contain no-repeat;mask:url('/assets/link-arrow.svg') center/contain no-repeat}
.editorial .renovation-tabs button[aria-pressed=true]::after{content:"";float:right;margin-left:.4em;margin-top:.2em}

/* Final content review: quieter headings and a compact founder portrait. */
.home-page .services-gateway h2{margin-top:0;margin-bottom:14px}
.home-page .services-gateway h2+.eyebrow{margin:0}
.services-page .svc-overview h1+.eyebrow{margin:18px 0 0}
.home-page .founder-portrait{width:100%;max-width:360px}
@media(max-width:600px){.home-page .founder-portrait{order:2;width:min(100%,260px,36svh);justify-self:center}}
