/* Editorial black/white system inspired by the supplied BRUTAL reference. */
@font-face{font-family:Oswald;src:url(oswald.ttf) format('truetype');font-weight:200 700;font-display:swap}
:root{--paper:#e7e5de;--white:#f3f1e9;--ink:#111;--line:#777;--orange:#d8e343;--green:#e7e5de;--subtle:#535353;background:#d8d6ce;color:var(--ink);font-family:Arial,sans-serif}
:root[data-theme=dark]{--paper:#080808;--white:#151515;--ink:#f0eee7;--line:#666;--orange:#d8e343;--green:#151515;--subtle:#b9b9b9;background:#000;color:var(--ink)}
::selection{background:var(--orange);color:#111}.app{max-width:1040px;border-color:var(--line)}header{padding:22px 24px;background:#080808;color:#f0eee7;border-bottom:1px solid #666}.brand{font-family:Oswald,Arial,sans-serif;font-weight:700;font-size:30px;line-height:1;letter-spacing:-.5px}.brand img,[data-theme=dark] .brand img{filter:invert(1);width:25px;height:38px}.brand small{font-family:'Courier New',monospace;font-size:8px;font-weight:400;letter-spacing:.4px;line-height:1.4}.brand:after{content:'';width:11px;height:11px;background:#f0eee7;box-shadow:8px -8px #f0eee7;margin-left:12px}.contact{border:1px solid #f0eee7;padding:9px 10px;font-family:'Courier New',monospace;font-size:12px;text-decoration:none;min-height:40px;display:flex;align-items:center}
.preferences{padding:10px 24px;gap:18px;justify-content:start;border-bottom:1px solid var(--line)}.preferences label{font-family:'Courier New',monospace;font-size:11px;text-transform:uppercase}.preferences select{background:transparent;border-color:var(--line);font-size:16px;min-height:40px;max-width:132px;padding:7px 8px}
main{padding-inline:24px}.hero,[data-theme=dark] .hero{background:none;border:none;border-bottom:1px solid var(--line);grid-template-columns:1fr 114px}.hero>div:first-child{padding:27px 0 25px}.hero .eyebrow{font-size:11px;letter-spacing:.08em}.hero-logo{background:transparent;border:0;position:relative}.hero-logo:after{content:'';position:absolute;right:0;bottom:25px;width:20px;height:20px;background:var(--ink);box-shadow:-20px -20px var(--ink)}.hero-logo img{width:66px;height:104px;filter:none}[data-theme=dark] .hero-logo img{filter:invert(1)}h1,.hero h1,section:not(#services) h1{font-family:Oswald,Arial,sans-serif;font-size:70px;font-weight:700;text-transform:uppercase;line-height:1.05;letter-spacing:-1.5px;text-wrap:balance;margin:12px 0 20px}.hero p,.intro{font-size:14px;line-height:1.6;max-width:55ch}.eyebrow,.muted,.price-rule,.service small,.estimate p,.sticky small,.work-card small,.form-note,footer,[data-theme=dark] .eyebrow,[data-theme=dark] .muted,[data-theme=dark] .price-rule,[data-theme=dark] .service small,[data-theme=dark] .estimate p,[data-theme=dark] .sticky small,[data-theme=dark] .work-card small,[data-theme=dark] .form-note,[data-theme=dark] footer{color:var(--subtle)}
.journey{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-bottom:1px solid var(--line);margin:0;padding:13px 0}.journey li{font-family:'Courier New',monospace;font-size:11px;line-height:1.4;padding-right:8px}.journey li:before{border-radius:0;background:var(--ink);color:var(--paper);font-weight:700;width:22px;height:22px}.consult-top{background:var(--orange);color:#111;text-decoration:none;padding:13px 16px;font-weight:700;font-size:13px;margin:18px 0 0;min-height:46px}.about{margin:8px 0 20px}.about summary{font-family:'Courier New',monospace;font-size:12px}.step-heading{align-items:center;margin:24px 0 14px}h2,.step-heading h2{font-family:Oswald,Arial,sans-serif;text-transform:uppercase;font-size:27px;font-weight:650;letter-spacing:-.3px}.step-heading .link-button{font-family:'Courier New',monospace;font-size:11px}
.categories{gap:1px;background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr)}.category{border:0;min-height:170px;padding:17px 16px;background:var(--paper);gap:9px}.category .kind,[data-theme=dark] .category .kind{font-family:'Courier New',monospace;font-size:10px;color:var(--subtle);letter-spacing:.06em}.category strong{font-family:Oswald,Arial,sans-serif;text-transform:uppercase;font-size:30px;font-weight:650;line-height:1.12;letter-spacing:-.3px}.category small{font-size:12px;line-height:1.5}.category .rate{font-family:'Courier New',monospace;font-size:14px;font-variant-numeric:tabular-nums}.category[aria-pressed=true],[data-theme=dark] .category[aria-pressed=true]{background:var(--paper);color:var(--ink);box-shadow:inset 0 -5px var(--orange)}.category[aria-pressed=true] .kind{color:var(--ink)}.category[aria-pressed=true] .kind:before{content:' ';display:inline-block;background:var(--orange);width:9px;height:9px;margin-right:5px}
.price-panel{margin-top:26px;border:0;border-block:1px solid var(--line);padding:20px 0;background:transparent}.price-panel .step-heading h2{font-size:32px}.price-panel .price-rule{font-family:'Courier New',monospace;font-size:11px!important}.combine-note{font-size:12px!important}.group-example button{background:var(--white);border:0;padding:0;gap:15px;color:var(--ink);min-height:92px}.group-example img{width:130px;height:92px;background:#d1d1c9;filter:grayscale(1);object-fit:contain}.group-example span{font-family:'Courier New',monospace;font-size:12px;line-height:1.5}.group-example small{font-family:Arial,sans-serif;color:var(--subtle)}
.service{padding:20px 0;border-color:var(--line);gap:14px}.service b{font-size:16px;font-weight:700;line-height:1.45}.service small{font-size:13px;line-height:1.6}.service .service-price{font-family:Oswald,Arial,sans-serif;font-size:23px;font-weight:600;letter-spacing:0;font-variant-numeric:tabular-nums}.service-term{font-family:'Courier New',monospace;font-size:11px;color:var(--subtle)}.service .package-note,[data-theme=dark] .service .package-note{color:var(--ink);font-size:12px;font-weight:600}.service:has(input:checked),[data-theme=dark] .service:has(input:checked){background:var(--white);outline:0;box-shadow:inset 4px 0 var(--orange);margin-inline:-12px;padding-inline:12px}.service input[type=checkbox],form .check input{accent-color:var(--orange)}.more-services{border:1px solid var(--line);margin-top:18px;padding:0 14px}.more-services summary{font-family:'Courier New',monospace;font-size:12px;min-height:48px;line-height:1.5}.quantity{font-family:'Courier New',monospace}.quantity input{font-family:Arial,sans-serif;background:var(--paper)}
.consultation{font-family:'Courier New',monospace;font-size:13px;background:transparent;padding:17px 16px;border-color:var(--line)}.estimate{background:var(--white);padding:22px;border:1px solid var(--line)}.estimate>strong,.sticky strong{font-family:Oswald,Arial,sans-serif;font-size:38px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:-.5px;line-height:1.15}.estimate .eyebrow{font-size:11px}.basket-line,[data-theme=dark] .basket-line{border-color:var(--line)}.project-selection{background:var(--white)}.project-selection h2{font-size:24px}.reassurance{background:var(--white);border-color:var(--orange)}
.primary,[data-theme=dark] .primary,.portfolio-link,[data-theme=dark] .portfolio-link{background:var(--orange);color:#111;border:1px solid #111;font-family:Oswald,Arial,sans-serif;text-transform:uppercase;font-size:21px;font-weight:600;min-height:50px}.primary:hover,[data-theme=dark] .primary:hover{background:#e7ef75}.primary:disabled{opacity:1;background:var(--white);color:var(--subtle);border-color:var(--line)}.sticky{background:var(--paper);border-color:var(--line);padding:12px 24px}.sticky small{font-family:'Courier New',monospace;font-size:10px}.sticky strong{font-size:28px}.bottom{border-color:var(--line)}nav{background:#080808}nav button{color:#f0eee7;border-color:#666;font-family:'Courier New',monospace;font-size:12px;min-height:57px;padding:16px 10px}nav button[aria-current=page],[data-theme=dark] nav button[aria-current=page]{background:#080808;color:var(--orange);box-shadow:inset 0 3px var(--orange)}
.filters{gap:0;border:1px solid var(--line);width:fit-content;max-width:100%}.filters button{border:0;border-right:1px solid var(--line);font-family:'Courier New',monospace;text-transform:uppercase;min-height:44px;font-size:11px;padding:11px 12px}.filters button[aria-pressed=true],[data-theme=dark] .filters button[aria-pressed=true]{background:var(--orange);color:#111}.work-grid{gap:1px;background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr)}.work-card{border:0;background:var(--paper)}.work-card img,[data-theme=dark] .work-card img{height:245px;filter:grayscale(1);object-fit:contain;background:#d0d0c9}.work-card .meta{padding:14px}.work-card h2{font-size:24px}.work-card small{line-height:1.6;font-size:12px}.work-card:focus-visible img,.work-card:hover img{filter:none}.portfolio-link{font-size:20px;text-decoration:none;padding:17px 18px}dialog{color:var(--ink);background:var(--paper)}dialog .close-dialog,[data-theme=dark] .close-dialog{background:var(--orange);color:#111}.draft h2{font-size:27px}.draft pre{font-family:'Courier New',monospace;font-size:13px;line-height:1.65}.conditions summary,.optional-fields summary{font-family:'Courier New',monospace;font-size:12px}.form-note,.saved-note{font-size:12px;line-height:1.6}footer{font-family:'Courier New',monospace;font-size:10px;border-top:1px solid var(--line);padding-top:18px}.brand img,.hero-logo img{flex:none}
@media(max-width:650px){header{padding:19px 15px}.brand{font-size:25px}.brand small{font-size:7px}.brand:after{margin-left:5px;width:8px;height:8px;box-shadow:6px -6px #f0eee7}.brand img{width:20px;height:31px}.contact{font-size:11px;padding:8px}.preferences{padding:10px 15px;justify-content:space-between;gap:8px}.preferences select{font-size:16px;max-width:112px;min-width:84px}.preferences label{font-size:10px}main{padding-inline:15px;padding-bottom:168px}.hero{grid-template-columns:1fr 58px}.hero>div:first-child{padding:23px 0}.hero h1,section:not(#services) h1{font-size:51px;letter-spacing:-1px;line-height:1.05}.hero p{font-size:13px;line-height:1.6;padding-right:9px}.hero-logo img{width:40px;height:70px}.hero-logo:after{width:12px;height:12px;box-shadow:-12px -12px var(--ink)}.journey{grid-template-columns:1fr;gap:8px;padding:14px 0}.journey li{font-size:11px}.categories{grid-template-columns:1fr 1fr;gap:1px}.category{min-height:155px;padding:14px 12px}.category strong{font-size:25px}.category .rate{font-size:12px;line-height:1.5}.category small{font-size:12px}.step-heading h2{font-size:25px}.price-panel{padding:18px 0}.price-panel .step-heading h2{font-size:30px}.group-example img{width:105px}.group-example span{font-size:11px;padding-right:10px}.service .service-price{font-size:25px;margin-left:33px}.sticky{padding:11px 15px}.sticky strong{font-size:27px}.sticky .primary{font-family:Oswald,Arial,sans-serif;font-size:20px;padding:11px 15px}.work-grid{grid-template-columns:1fr 1fr}.work-card img,[data-theme=dark] .work-card img{height:175px}.work-card .meta{padding:12px}.work-card h2{font-size:23px}.work-card small{font-size:12px}.filters button{font-size:10px;padding:10px}.estimate>strong{font-size:36px}nav button{font-size:11px}.service-term{opacity:1}.journey li:before{border-radius:0}form{padding:18px}.primary{font-size:20px}.hero-logo{background:transparent}h1{overflow-wrap:normal}}
@media(max-width:360px){.hero h1,section:not(#services) h1{font-size:45px}.category strong{font-size:22px}.brand small{font-size:6px}.brand:after{display:none}.preferences{gap:5px}.preferences select{max-width:96px;min-width:82px;padding-inline:4px}.work-card img,[data-theme=dark] .work-card img{height:150px}}
.category:last-child{grid-column:1/-1;min-height:125px}.work-grid{background:var(--paper)}
.preferences{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:12px;padding:12px 24px}
.pref-segment{display:flex;align-items:center;border:1px solid var(--line);height:44px}
.preferences svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:square;stroke-linejoin:miter;flex:none}
.pref-segment>svg{margin:0 10px;color:var(--subtle)}
.preferences button{font-family:'Courier New',monospace;font-size:12px;font-weight:700;letter-spacing:.02em;border:0;border-radius:0;color:var(--ink);background:transparent;min-height:42px;min-width:44px;padding:0 12px;cursor:pointer}
.pref-segment button+button{border-left:1px solid var(--line)}
.preferences button[aria-pressed=true]{background:var(--orange);color:#111}
.preferences button:hover{background:var(--white)}
.preferences button[aria-pressed=true]:hover{background:var(--orange)}
.preferences button:focus-visible,.filters button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.preferences .theme-toggle{display:grid;place-items:center;border:1px solid var(--line);width:44px;height:44px;padding:0}
.theme-toggle .sun-icon{display:none}.theme-toggle[data-dark=true] .sun-icon{display:block}.theme-toggle[data-dark=true] .moon-icon{display:none}
.filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;gap:1px;padding:0;border:1px solid var(--line);background:var(--line);margin:24px 0}
.filters button{display:flex;align-items:center;justify-content:center;min-width:0;min-height:52px;border:0;background:var(--paper);color:var(--ink);padding:12px;font-size:12px;line-height:1.4;text-align:center;overflow-wrap:normal}
.filters button[aria-pressed=true],[data-theme=dark] .filters button[aria-pressed=true]{background:var(--orange);color:#111}
@media(max-width:650px){.preferences{padding:12px 15px;gap:8px;justify-content:space-between}.preferences button{padding:0 10px;font-size:12px}.pref-segment>svg{margin:0 8px;width:18px;height:18px}.filters{grid-template-columns:repeat(2,minmax(0,1fr));margin:22px 0}.filters button{font-family:Oswald,Arial,sans-serif;font-weight:500;font-size:16px;min-height:54px;padding:12px 8px}}
@media(max-width:360px){.pref-segment>svg{display:none}.preferences button{padding:0 8px}.preferences{gap:6px}}
html{scrollbar-gutter:stable;overflow-anchor:none}
main{min-height:calc(100svh - 150px)}
main>section{overflow-anchor:none}
.sticky{min-height:91px}.sticky>div{min-width:0}.sticky strong{font-size:clamp(22px,5vw,28px)}
@media(max-width:650px){
 .hero,[data-theme=dark] .hero{grid-template-columns:minmax(0,1fr) 64px;column-gap:16px;padding:24px 0;align-items:center}
 .hero>div:first-child{display:contents}
 .hero .eyebrow{grid-column:1/-1;grid-row:1;margin-bottom:14px}
 .hero h1{grid-column:1;grid-row:2;margin:0;font-size:51px;line-height:1.05}
 .hero p{grid-column:1/-1;grid-row:3;margin-top:24px;padding-right:0;max-width:none}
 .hero-logo{grid-column:2;grid-row:2;align-self:center;justify-self:center;width:64px;height:110px;position:static}
 .hero-logo img{display:block;width:48px;height:80px;margin:0}
 .hero-logo:after{display:none}
}
@media(max-width:360px){.hero h1{font-size:45px}.hero,[data-theme=dark] .hero{column-gap:12px;grid-template-columns:minmax(0,1fr) 52px}.hero-logo{width:52px}.hero-logo img{width:42px;height:72px}}
.hero-logo .living-logo{display:block;width:96px;height:152px;overflow:visible;color:var(--ink)}
.living-logo .logo-gaze{animation:logo-look 9s ease-in-out infinite}
.living-logo .logo-blink{fill:var(--paper);transform-box:fill-box;transform-origin:center;animation:logo-blink 6.8s ease-in-out infinite}
@keyframes logo-look{0%,15%,100%{transform:translate(0,0)}25%,38%{transform:translate(-16px,-8px)}52%,65%{transform:translate(16px,2px)}78%,88%{transform:translate(0,-14px)}}
@keyframes logo-blink{0%,42%,46%,100%{transform:scaleY(1)}44%{transform:scaleY(.08)}}
.work-card img,[data-theme=dark] .work-card img{height:auto;aspect-ratio:4/3;object-fit:contain;filter:none;background:var(--white);border-bottom:1px solid var(--line)}
.work-card .meta{padding:20px}.work-card h2{font-size:27px;line-height:1.2}.work-card small{font-size:13px;line-height:1.6;margin-top:10px}
.work-grid{gap:18px;border:0;grid-template-columns:repeat(2,minmax(0,1fr))}.work-card{border:1px solid var(--line)}
@media(max-width:650px){.hero,[data-theme=dark] .hero{grid-template-columns:minmax(0,1fr) 90px;column-gap:12px}.hero-logo{width:90px;height:145px}.hero-logo .living-logo{width:82px;height:130px}.hero h1{font-size:48px}.work-grid{grid-template-columns:1fr;gap:22px}.work-card img,[data-theme=dark] .work-card img{height:auto;aspect-ratio:4/3}.work-card .meta{padding:18px}.work-card h2{font-size:27px}}
@media(max-width:360px){.hero,[data-theme=dark] .hero{grid-template-columns:minmax(0,1fr) 72px}.hero-logo{width:72px}.hero-logo .living-logo{width:68px;height:108px}.hero h1{font-size:42px}}
@media(prefers-reduced-motion:reduce){.living-logo .logo-gaze,.living-logo .logo-blink{animation:none}}
.living-logo .logo-eyes path{fill:var(--paper);transform-box:fill-box;transform-origin:center;animation:eyes-double-blink 5.6s cubic-bezier(.45,0,.25,1) infinite}
.living-logo .logo-eyes .eye-right{animation-name:eyes-double-blink-wink}
@keyframes eyes-double-blink{0%,6%,16%,21%,31%,100%{transform:scaleY(1)}11%,26%{transform:scaleY(.06)}}
@keyframes eyes-double-blink-wink{0%,6%,16%,21%,31%,42%,55%,100%{transform:scaleY(1)}11%,26%,48%{transform:scaleY(.06)}}
@media(prefers-reduced-motion:reduce){.living-logo .logo-eyes path{animation:none}}
@media(max-width:650px){.hero-logo{transform:translateX(-14px)}}
@font-face{font-family:Montserrat;src:url(montserrat.ttf) format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
:root{font-family:Montserrat,Arial,sans-serif}
.hero p,.intro,.about p,.price-panel>p,.service small,.category small,.work-card small,.estimate p,.project-selection p,.reassurance,.form-hint,.form-note,.saved-note,.conditions,dialog p,form label{font-family:Montserrat,Arial,sans-serif;font-size:15px;line-height:1.65;font-weight:450}
.hero p,.intro{font-size:16px}.category small{font-size:14px;line-height:1.55}.service small{font-size:15px}.service b{font-family:Montserrat,Arial,sans-serif;font-size:17px;line-height:1.5;font-weight:650}
.service .package-note,[data-theme=dark] .service .package-note{font-size:14px;line-height:1.6}.service-term{font-family:Montserrat,Arial,sans-serif;font-size:13px}.work-card small{font-size:15px}
.price-rule,.combine-note,.form-note,.saved-note,.estimate p,.fx-note{font-size:14px!important;line-height:1.65}
.eyebrow,.category .kind,[data-theme=dark] .category .kind,.sticky small,.journey li{font-family:Montserrat,Arial,sans-serif;font-size:12px;font-weight:550;line-height:1.5}
.category .rate{font-family:Montserrat,Arial,sans-serif;font-size:15px;font-weight:600}.about summary,.conditions summary,.optional-fields summary,.more-services summary{font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:1.6}
.basket-line{font-size:14px}.basket-line button{font-size:13px}nav button{font-family:Montserrat,Arial,sans-serif;font-size:13px}.consult-top,.consultation{font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:1.55}
@media(max-width:650px){.hero p,.intro{font-size:15px}.category small{font-size:14px}.category .kind{font-size:11px}.journey li{font-size:13px}.sticky small{font-size:12px}.work-card small{font-size:15px}.category .rate{font-size:14px}nav button{font-size:13px}}
