:root{--sc-canvas:#f5f2eb;--sc-surface:#fbfaf7;--sc-ink:#141412;--sc-ink-soft:#625e56;--sc-accent:#454b3b;--sc-accent-ink:#fff;--sc-font-display:'Libre Caslon Display',Georgia,serif;--sc-font-text:'DM Sans',Arial,sans-serif}
::selection{background:#d5d7c9;color:#141412}html{scrollbar-color:#8b877e #f5f2eb}input,textarea{caret-color:#454b3b}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}.btn{transition:transform .16s cubic-bezier(.23,1,.32,1),background .16s,color .16s}.btn:active{transform:translateY(1px)}[hidden]{display:none!important}
.clarity-studio{display:grid;grid-template-columns:minmax(220px,.65fr) minmax(0,1.35fr);column-gap:clamp(28px,5vw,80px);row-gap:28px;align-items:start}.studio-tools{padding-top:12px}.studio-intro{font-size:21px;line-height:1.5;margin:0 0 32px;max-width:26ch}.studio-sector-label{display:block;font-size:12px;margin-bottom:8px}.studio-tools select{padding:14px 35px 14px 15px;width:100%;background:transparent;border:1px solid #aaa69a;border-radius:4px;min-height:48px}.studio-controls{display:grid;margin-top:30px}.studio-controls button{position:relative;min-height:62px;text-align:left;padding:16px 35px 16px 0;border:0;border-bottom:1px solid #bcb6ab;background:transparent;cursor:pointer;color:#5c584f}.studio-controls button::after{content:'';position:absolute;right:4px;top:23px;width:14px;height:14px;border:1px solid #8e8c80;border-radius:50%;transition:background .16s}.studio-controls button[aria-pressed=true]{color:#141412}.studio-controls button[aria-pressed=true]::after{background:#454b3b;border-color:#454b3b;box-shadow:inset 0 0 0 3px #eae5dc}.studio-instruction{font-size:12px;line-height:1.6;color:#625e56;max-width:35ch;margin-top:20px}.studio-result{min-width:0;box-shadow:0 18px 45px -20px #42382b50;border-radius:8px;overflow:hidden;background:#faf9f5}.studio-browser{display:flex;align-items:center;gap:5px;background:#dad6cd;padding:12px 18px}.studio-browser>span{height:6px;width:6px;background:#9b978c;border-radius:50%}.studio-browser small{font-size:8px;letter-spacing:.12em;margin-left:auto;color:#555247}.studio-page{padding:25px;--demo-accent:#706650}.studio-page[data-sector="1"]{--demo-accent:#315f69}.studio-page[data-sector="2"]{--demo-accent:#33675c}.studio-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid #ddd8ce}.studio-brand{font:21px var(--serif);letter-spacing:.12em}.studio-nav{font-size:9px;color:#69655c}.studio-main{display:grid;grid-template-columns:1fr .85fr;gap:22px;align-items:center;padding:34px 0}.studio-main h3{font:clamp(28px,3vw,43px)/1.06 var(--serif);margin:0 0 16px;letter-spacing:-.02em}.studio-main p{font-size:12px;line-height:1.65;color:#5b574f}.studio-service{font-size:9px;line-height:1.6;color:var(--demo-accent);display:block;margin-top:24px}.studio-main img{width:100%;height:225px;object-fit:cover}.studio-detail{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-top:1px solid #ddd8ce;padding-top:20px}.studio-detail p{margin:0;font-size:11px;line-height:1.7;color:#5b574f}.studio-detail p::before{content:'';display:block;width:24px;height:2px;background:var(--demo-accent);margin-bottom:12px}.studio-page.unstructured .studio-main{filter:saturate(.35)}.studio-caption{font-size:10px;color:#686257;margin:0;padding:15px 25px;border-top:1px solid #ddd8ce}.studio-carry{grid-column:2;justify-self:start}.comparison .section-head h2{max-width:16ch}.comparison{background:#eae5dc}
@media(hover:hover) and (pointer:fine){.studio-controls button:hover{color:#141412;background:#ffffff25}}
@media(max-width:900px){.clarity-studio{grid-template-columns:1fr}.studio-tools{display:grid;grid-template-columns:1fr 1fr;gap:12px 25px}.studio-intro{margin:0;grid-row:span 2}.studio-sector-label{margin:0}.studio-controls{grid-column:1/-1;display:flex;margin:6px 0 0;gap:18px}.studio-controls button{flex:1}.studio-instruction{grid-column:1/-1;max-width:none;margin:0}.studio-carry{grid-column:1}.comparison .section-head h2{max-width:20ch}}
@media(max-width:560px){.studio-tools{display:block}.studio-intro{font-size:18px;margin-bottom:24px}.studio-sector-label{margin-bottom:8px}.studio-controls{display:grid;gap:0;margin-top:14px}.studio-controls button{min-height:52px}.studio-controls button::after{top:20px}.studio-instruction{margin-top:14px}.studio-page{padding:20px}.studio-heading{padding-bottom:14px}.studio-nav{display:none}.studio-main{gap:16px;padding:24px 0;grid-template-columns:1fr}.studio-main h3{font-size:32px;max-width:13ch}.studio-main img{height:160px}.studio-service{margin-top:16px}.studio-detail{gap:16px}.studio-caption{padding:14px 20px}.studio-carry{width:100%}}
@media(prefers-reduced-motion:reduce){.laptop,.phone{transform:none!important}.studio-page{transition:none}}

/* Keep the computer and its support on the same physical depth plane. */
.hero{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}
.sector-grid{grid-template-columns:1.12fr .88fr;grid-template-rows:260px 260px 170px}
.sector-card:nth-child(1){grid-column:1;grid-row:1/3}
.sector-card:nth-child(2){grid-column:2;grid-row:1}
.sector-card:nth-child(3){grid-column:2;grid-row:2}
.sector-card:nth-child(4){grid-column:1/-1;grid-row:3}
.privacy,.form-status{color:#625e56;font-size:12px;line-height:1.6}
.studio-nav,.studio-service{font-size:11px}.studio-caption{font-size:11px}.studio-browser small{font-size:10px}
.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}
@media(max-width:900px){.hero{grid-template-columns:1fr}.sector-grid{grid-template-rows:240px 240px 150px}}
@media(max-width:560px){.sector-grid{display:flex}.sector-card:nth-child(4){min-height:170px}}

/* Editorial imagery: preserve natural colour, give the subject its own frame. */
.sector-card img{filter:none;object-fit:cover;object-position:50% 50%}
.sector-card:nth-child(2) img{object-position:65% 36%}
.sector-card:nth-child(3) img{object-position:50% 62%}
.sector-card:nth-child(4) img{object-position:50% 52%}
.sector-card:after{inset:38% 0 0;background:linear-gradient(transparent,rgba(20,18,14,.88))}
.sector-count{position:absolute;top:20px;left:24px;color:white;font:38px var(--serif);z-index:2;text-shadow:0 2px 10px #25201680}
.image-note{margin:18px 0 0;color:#625e56;font-size:12px;max-width:70ch;line-height:1.6}
.sector-picker.show{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:62px 30px 30px;align-content:start}
.sector-picker button{display:block;width:100%;padding:0;border:0;background:transparent;text-align:left;align-self:start;min-height:0}
.sector-picker button img{display:block;width:100%;height:170px;object-fit:cover;border-radius:3px}
.sector-picker button span{display:block;padding:13px 0 8px}
.sector-picker button strong{display:block;font:24px/1.1 var(--serif);letter-spacing:-.015em;font-weight:400}
.sector-picker button small{display:block;font-size:11px;color:#625e56;margin-top:7px}
.sector-picker button:hover strong{text-decoration:underline;text-underline-offset:4px}
.preview-content img{object-position:50% 50%}.preview-site[data-theme=clima] .preview-content img{object-position:65% 30%}
.phone img{filter:none;object-position:58% 55%}.studio-main img{filter:none}
@media(hover:hover) and (pointer:fine){.sector-card:hover img{filter:none;transform:scale(1.025)}}
@media(max-width:560px){.sector-picker.show{grid-template-columns:1fr;padding:58px 20px 24px;gap:18px}.sector-picker button img{height:185px}.sector-picker button strong{font-size:24px}.image-note{font-size:11px}.sector-count{top:16px;left:20px}}
@media(prefers-reduced-motion:reduce){.sector-card img{transition:none;transform:none!important}}

.sierra-project{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(25px,5vw,70px);align-items:center;margin-top:50px}.sierra-project-image{display:block;overflow:hidden;border:1px solid var(--line)}.sierra-project img{display:block;width:100%;height:auto}.sierra-project h3{font:clamp(30px,3.5vw,48px)/1.05 var(--serif);margin:0 0 20px}.sierra-project p:not(.eyebrow){color:var(--muted);max-width:45ch;margin-bottom:25px}@media(max-width:800px){.sierra-project{grid-template-columns:1fr}}

.proposal-consent{display:flex;gap:12px;align-items:flex-start;font-size:13px;line-height:1.6;margin:24px 0}.proposal-consent input{margin:5px 0 0;min-width:18px;min-height:18px;accent-color:#454b3b}.form-status{min-height:28px}.form-status[data-state=error]{color:#9c2e20}.form-status[data-state=success]{color:#315a35}form[aria-busy=true] button[type=submit]{cursor:progress}
