*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0 auto;max-width:1660px;padding:0 clamp(18px,2.6vw,44px);background:#f3f1ed;color:#191917;font:16px/1.4 Arial,Helvetica,sans-serif}header,nav,.actions,.heading,footer,#filters{display:flex;align-items:center;gap:clamp(14px,2.6vw,44px)}header{min-height:68px;border-bottom:1px solid;flex-wrap:wrap}a,button,summary{color:inherit;cursor:pointer}a{text-decoration:none}a:hover,summary:hover{color:#bc321b}.brand{font-weight:900;font-size:27px;letter-spacing:-1.8px}nav{margin-left:auto}small,nav{font-size:13px}section{border-bottom:1px solid #77766e;padding:2.3vw 0}.hero{display:grid;grid-template-columns:40fr 58fr;gap:2%;align-items:center}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2,h3{letter-spacing:-.06em;line-height:.99}h1{font-size:clamp(52px,6.65vw,110px)}p{max-width:45ch;margin:1.4em 0}.actions{flex-wrap:wrap;gap:12px 2.4vw}button,input,textarea{font:inherit}.button,.line,.intro article:first-of-type summary,.project button{font-size:12px;text-transform:uppercase;font-weight:bold}.button{background:#c5361d;color:white;padding:13px 20px;border:0}.button:hover{background:#982e1d;color:white}.line,.project button{border:0;border-bottom:1px solid;padding:5px 0;background:none}figure{position:relative}figure img{aspect-ratio:1.5;object-fit:cover}img{display:block;width:100%}#next{position:absolute;right:10px;bottom:10px;background:#f3f1ed;border:0;padding:6px 10px;font-size:12px}.intro{display:grid;grid-template-columns:24fr 32fr 38fr;gap:3vw}.intro>img{height:100%;max-height:300px;object-fit:cover}.intro article:last-child{border-left:1px solid #999;padding-left:3.5vw}label{display:block;color:#ac301d;font-size:12px;text-transform:uppercase;font-weight:700;margin-bottom:16px}h2{font-size:clamp(34px,4.8vw,80px)}.intro h2,.band h2{font-size:clamp(28px,3.3vw,53px)}summary{list-style:none;padding:9px 0;border-bottom:1px solid #aaa}summary:after{content:'↗';float:right}details[open]>summary:after{content:'−'}.heading{justify-content:space-between;margin-bottom:24px;flex-wrap:wrap}#filters{gap:14px;flex-wrap:wrap}#filters button{border:0;background:none;padding:8px 0;font-size:13px}#filters [aria-pressed=true]{color:#af301a;border-bottom:1px solid}.project{display:grid;grid-template-columns:23fr 34fr 40fr;gap:2%;border-top:1px solid #aaa;padding:9px 0;align-items:center}.num{font-size:clamp(36px,5.6vw,90px);color:#c5361d;line-height:1}.project h3{font-size:clamp(20px,2.15vw,36px)}.project p{font-size:14px;margin:8px 0}.project img{height:clamp(145px,18vw,295px);object-fit:cover}.project img.plan{object-fit:contain;border-inline:1px solid #bbb}.band{display:grid;grid-template-columns:1fr 1fr;gap:5%;padding:4vw 0}.band p{margin:0 0 12px}ol{padding-left:22px;line-height:2}blockquote{font-size:22px}small,output{display:block}blockquote small,form small{margin-top:12px}input,textarea{display:block;padding:12px 0;background:none;border:0;border-bottom:1px solid #aaa;width:100%;margin-bottom:12px}footer{padding:24px 0;flex-wrap:wrap;font-size:13px}dialog{background:#f3f1ed;border:0;width:min(640px,92vw);padding:26px}dialog::backdrop{background:#27262088}.close{float:right;font-size:23px;border:0;background:none}dialog img{margin-top:16px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #a53320;outline-offset:3px}@media(max-width:720px){header{gap:12px;padding:12px 0}nav{order:2;width:100%;justify-content:space-between;gap:4px}header>small:last-child{margin-left:auto}.hero,.band{grid-template-columns:1fr;gap:22px}section,.band{padding:26px 0}.hero h1 br:first-child{display:none}.hero h1 br:first-child:after{content:' '}.intro{grid-template-columns:1fr 1.3fr;gap:18px}.intro article:last-child{grid-column:1/-1;border:0;padding:0}.project{grid-template-columns:1fr 1.2fr}.project>div{grid-column:1/-1}.project img{height:28vw}.heading{gap:12px}.actions{margin-bottom:4px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.contact-strip { display:flex; justify-content:space-between; padding:8px 0; font-size:12px; color:#55544e; border-bottom:1px solid #d3cfc6 }
.spread,.packages { padding:clamp(42px,5vw,84px) 0 }
.spread { display:grid; grid-template-columns:1fr 1fr; gap:5% }
.spread h2,.packages h2 { font-size:clamp(32px,4vw,65px) }
.steps summary,.partners dt { font-size:clamp(18px,1.8vw,28px); letter-spacing:-.035em }
.steps i { font:normal 13px Arial; color:#a63420; margin-right:16px }
.steps p { margin:12px 0 18px 32px }
.offers { display:grid; grid-template-columns:repeat(3,1fr); gap:3%; margin-top:30px }
.offers article { border-top:1px solid; padding:20px 0 0 }
.offers h3 { font-size:clamp(24px,2.8vw,46px) }
.offers p { margin:12px 0 }
.offers ul { padding:14px 0; list-style:none; border-block:1px solid #c9c5bd; line-height:1.8 }
.partners dl { margin:0 }
.partners dd { margin:2px 0 14px; color:#504f49 }
.quotes { background:#eae7df; padding-inline:clamp(16px,2.6vw,44px) }
.quotes blockquote { font-size:clamp(22px,2.25vw,36px); line-height:1.2; letter-spacing:-.03em; margin-bottom:18px }
.quotes small { letter-spacing:normal }
.fields { display:grid; grid-template-columns:1fr 1fr; gap:0 20px }
form label { color:inherit; font-size:14px; text-transform:none; font-weight:normal }
form input,form select,form textarea { color:inherit; border:0; border-bottom:1px solid #888; width:100%; background:transparent; padding:8px 0; font:inherit }
form .consent input { width:auto; margin:0; vertical-align:middle }
form .consent a { text-decoration:underline }
footer details p { max-width:36ch }
dialog .plan { width:100%; aspect-ratio:2; object-fit:contain }
@media(max-width:720px) {
  .spread,.offers { grid-template-columns:1fr; gap:22px }
  nav { flex-wrap:wrap; justify-content:flex-start; gap:8px 16px; padding-bottom:6px }
  .contact-strip { gap:12px; font-size:11px }
}

/* White editorial surfaces and visible studio authorship */
body, dialog, .quotes { background: #fff; }
header { min-height: 78px; }
.booking, .button { border-radius: 30px; }
.booking { background: #bc361f; color: #fff; padding: 10px 17px; }
.booking:hover { background: #9d301e; color: #fff; }
.intro { align-items: center; padding-block: clamp(30px, 4vw, 68px); }
.intro figure img { aspect-ratio: 1.16; object-fit: cover; }
.intro .role { color: #5b5854; font-size: 13px; margin: 10px 0 20px; }
.intro article > p:not(.role) { line-height: 1.55; }
.project .decision { max-width: 26ch; margin: 12px 0; }
#proces { grid-template-columns: 1fr 2.1fr; align-items: start; }
.process-grid { display: grid; grid-template-columns: 1fr 2fr; gap: 20px; }
.process-grid > img { height: 100%; object-fit: cover; }
.process-list { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; counter-reset: steps; list-style: none; margin: 0; padding: 0; }
.process-list li { border-top: 1px solid #cfcac4; padding-top: 10px; counter-increment: steps; }
.process-list li::before { content: counter(steps, decimal-leading-zero); display: block; color: #aa341f; font-size: 13px; margin-bottom: 12px; }
.process-list strong { font-size: 19px; line-height: 1.15; display: block; letter-spacing: -.04em; }
.process-list p { margin: 9px 0; font-size: 15px; line-height: 1.45; }
.quotes { padding-inline: 0; }
dialog { width: min(840px, 94vw); }
.change-title { margin: 24px 0 16px; font-size: 25px; }
.comparison { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.comparison figure { border-top: 1px solid #aaa; padding-top: 10px; }
.comparison figcaption { font-weight: bold; }
.comparison figure:last-child figcaption { color: #a93420; }
.comparison .plan { aspect-ratio: 5/3; margin: 0; }
@media(max-width: 900px) {
  #proces { grid-template-columns: 1fr; gap: 24px; }
}
@media(max-width: 720px) {
  .booking { padding: 5px 9px; }
  .intro { grid-template-columns: 1fr; }
  .intro figure img { aspect-ratio: 1.65; }
  .process-grid { grid-template-columns: 1fr; }
  .process-grid > img { height: 140px; object-position: center 55%; }
  .project { grid-template-columns: 1fr; }
  .project > img.plan { display: none; }
  .project > img:last-child { height: auto; aspect-ratio: 1.9; margin-bottom: 12px; }
  .comparison { grid-template-columns: 1fr; }
}

.brand { display: inline-flex; align-items: center; gap: 9px; font-size: clamp(18px, 1.7vw, 26px); letter-spacing: -.065em; }
.brand img { width: 33px; height: 33px; }
.studio-identity { display: grid; place-content: center; justify-items: center; gap: 16px; background: #f8f6f3; aspect-ratio: 1.16; }
.intro .studio-identity img { width: clamp(70px, 8vw, 126px); height: auto; aspect-ratio: 1; }
.studio-identity figcaption { font-weight: 800; font-size: clamp(19px, 2vw, 30px); letter-spacing: -.06em; line-height: 1; text-align: center; }
.studio-identity figcaption span { display: block; margin-top: 8px; padding-left: .34em; letter-spacing: .34em; font-size: .4em; }
@media (max-width:720px) { .studio-identity { aspect-ratio: 1.9; } }
