/*
Theme Name: Stefano Dal Sasso
Author: Stefano Dal Sasso
Description: Portfolio di design industriale, reverse engineering e prototipazione. Tema classico personalizzato con contenuti modificabili e progetti.
Version: 1.4.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: sds-design
License: GPL-2.0-or-later
*/
:root{--ink:#171918;--paper:#f7f8f4;--muted:#656a65;--line:#d8ddd5;--lime:#d5f35c;--dark:#20251f;--radius:3px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:500;line-height:1.07;letter-spacing:-.045em}h1{font-size:clamp(56px,6.7vw,108px)}h2{font-size:clamp(40px,4.3vw,70px)}h3{font-size:25px}p{line-height:1.6}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #6c8727;outline-offset:5px}button{color:inherit}section[id]{scroll-margin-top:30px}.skip-link{position:fixed;z-index:20;top:8px;left:8px;background:var(--lime);padding:12px;transform:translateY(-160%)}.skip-link:focus{transform:none}.site-header{height:100px;display:flex;justify-content:space-between;align-items:center;margin:0 4.5%;border-bottom:1px solid var(--line);gap:24px}.brand{display:flex;align-items:center;gap:15px}.brand-mark{font-size:49px;font-weight:800;letter-spacing:-.095em;line-height:1}.brand-mark>span{font-size:15px;vertical-align:top;letter-spacing:0;display:inline-block;margin:2px 0 0 6px}.brand-name{font-size:12px;line-height:1.4;letter-spacing:.18em}.brand-name small{font-size:8px;letter-spacing:.14em}.site-header nav{display:flex;gap:32px;align-items:center;font-size:13px}.site-header nav a:hover,.text-link:hover{color:#597314}.nav-contact{padding:13px 18px;border:1px solid var(--ink);border-radius:var(--radius)}.nav-contact span{margin-left:14px}.menu-toggle{display:none}.eyebrow{font-size:11px;letter-spacing:.11em;font-weight:600;text-transform:uppercase;line-height:1.5}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:650px;margin:0 4.5%;position:relative;gap:40px}.hero-copy{padding:63px 0 29px;display:flex;flex-direction:column;align-items:flex-start}.status-dot{display:inline-block;width:6px;height:6px;margin-right:8px;vertical-align:middle;background:#658321;border-radius:50%}.hero h1{margin:42px 0 26px;max-width:650px}.hero-text{font-size:18px;max-width:425px;color:var(--muted)}.hero-actions{display:flex;align-items:center;gap:25px;margin:34px 0 68px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:17px 24px;border:0;border-radius:var(--radius);font-size:13px;font-weight:500;line-height:1.4}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#34412b}.text-link{font-size:13px;display:inline-flex;gap:16px;align-items:center}.hero-foot{margin-top:auto;display:flex;gap:20px;justify-content:space-between;width:100%;font-size:9px;letter-spacing:.08em;color:var(--muted)}.hero-visual{position:relative;min-width:0;align-self:stretch;background:white;margin:36px 0 29px;overflow:hidden;border-radius:var(--radius);display:flex;align-items:center}.hero-visual>img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.hero-visual figcaption{position:absolute;left:24px;right:24px;bottom:22px;display:flex;justify-content:space-between;gap:20px;font-size:10px}.hero-visual figcaption>span:first-child{font-size:9px;letter-spacing:.1em;color:var(--muted)}.visual-label{position:absolute;top:24px;left:24px;font-size:9px;letter-spacing:.12em;color:var(--muted)}.discipline-strip{display:flex;align-items:center;justify-content:space-around;gap:22px;background:var(--lime);padding:24px 4.5%;font-size:16px;border-block:1px solid #bed947}.discipline-strip b{font-size:26px;font-weight:400}.section{padding:90px 4.5%}.section-top{display:flex;justify-content:space-between;gap:20px;margin-bottom:48px}.section-note{font-size:12px;color:var(--muted);line-height:1.5}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:37px}.section-heading>p{font-size:14px;color:var(--muted);max-width:420px}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.filters button{padding:9px 17px;border:1px solid var(--line);border-radius:40px;background:transparent;font-size:12px}.filters button.active{background:var(--ink);border-color:var(--ink);color:white}.filters button>span{margin-left:9px;opacity:.6;font-size:10px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px 26px}.project-card[hidden]{display:none}.project-card:last-child{grid-column:1/-1}.project-open{width:100%;padding:0;background:transparent;border:0;text-align:left}.project-image{position:relative;overflow:hidden;background:#eceee8;border-radius:var(--radius);aspect-ratio:1.4}.project-image img{width:100%;height:100%;object-fit:contain;transition:transform .6s}.project-mobilita .project-image{background:#232323}.project-dpi .project-image{background:#c3c3c3}.project-card:last-child .project-image{aspect-ratio:2.35;background:#fff}.project-open:hover img{transform:scale(1.035)}.project-pill{position:absolute;top:18px;left:18px;padding:6px 12px;background:rgba(255,255,255,.92);border-radius:30px;font-size:10px}.project-arrow{position:absolute;right:18px;bottom:18px;border-radius:50%;width:38px;height:38px;background:white;text-align:center;line-height:38px;font-size:20px}.project-caption{display:flex;justify-content:space-between;gap:20px;padding-top:19px}.project-caption h3{font-size:25px}.project-caption p{color:var(--muted);font-size:12px;margin-top:7px}.project-caption>span{font-size:11px;padding-top:3px;color:var(--muted)}.portfolio-note{margin-top:35px;font-size:11px;color:var(--muted);max-width:700px}.studio{background:var(--dark);color:var(--paper);display:grid;grid-template-columns:.75fr 1.25fr;gap:100px}.studio-symbol{font-weight:800;font-size:clamp(110px,17vw,260px);letter-spacing:-.1em;line-height:1.3;margin:26px 0 18px;color:var(--lime)}.studio-signature{font-size:14px}.studio-signature>span{color:#adb5a7;font-size:12px}.studio-copy h2{font-size:clamp(40px,4vw,65px);margin-bottom:32px}.studio-copy>p{color:#c6cfc0;font-size:15px;max-width:680px;margin-bottom:20px}.experience{margin:32px 0;border-top:1px solid #485041;padding-top:25px}.experience>span{color:var(--lime)}.experience>p{font-size:13px;color:#c6cfc0;margin-top:12px}.studio-facts{border-top:1px solid #485041;display:grid;grid-template-columns:1fr 1fr;gap:22px;padding-top:27px}.studio-facts strong{font-size:17px;font-weight:500}.studio-facts span{display:block;font-size:11px;color:#adb5a7;margin-top:7px}.service-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.service-intro>p{font-size:15px;max-width:350px;color:var(--muted);margin:27px 0 30px}.service-list{border-top:1px solid var(--line)}.service{border-bottom:1px solid var(--line)}.service summary{display:flex;align-items:center;list-style:none;cursor:pointer;gap:18px;min-height:90px}.service summary::-webkit-details-marker{display:none}.service-number{font-size:11px;color:var(--muted);align-self:center}.service summary h3{font-size:22px;letter-spacing:-.025em;line-height:1.25}.service-plus{margin-left:auto;font-size:28px;line-height:1;font-weight:300}.service[open] .service-plus{transform:rotate(45deg)}.service>p{font-size:14px;color:var(--muted);padding:0 35px 25px;max-width:650px}.process{background:#ecefe6}.process h2{margin-bottom:55px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.process-grid article{border-top:1px solid #c3cbbd;padding-top:22px}.process-grid article>span{display:block;color:#667d37;font-size:12px;margin-bottom:30px}.process-grid h3{font-size:27px;margin-bottom:17px}.process-grid p{font-size:13px;color:var(--muted);max-width:260px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:75px}.contact-info h2{margin:32px 0 24px;font-size:clamp(40px,4.7vw,76px)}.contact-info h2>span{color:#7b9b23}.contact-info>p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:400px}.contact-email{font-size:clamp(16px,1.7vw,25px);letter-spacing:-.02em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:29px 0 15px;gap:16px;overflow-wrap:anywhere}.contact-links{display:flex;flex-wrap:wrap;gap:20px;margin:20px 0 27px;font-size:12px}.contact-info .contact-location{font-size:11px}.contact-form{background:white;border:1px solid var(--line);padding:36px;border-radius:var(--radius)}.contact-form h3{margin-bottom:28px;font-size:25px}.contact-form label{display:block;font-size:11px;font-weight:600;margin-bottom:19px}.contact-form label>span{font-weight:400;color:var(--muted)}input,textarea,select{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:12px 0;border-radius:0;color:var(--ink);font-size:13px;min-height:43px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#747a72;font-weight:400}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-note{font-size:10px;color:var(--muted);margin:5px 0 20px}.contact-form .button{width:100%}#form-status{font-size:12px;margin-top:15px}.site-footer{display:flex;align-items:center;gap:30px;padding:35px 4.5%;border-top:1px solid var(--line)}.footer-logo{font-size:35px;font-weight:800;letter-spacing:-.09em}.footer-logo>span{font-size:15px;letter-spacing:-.04em;margin-left:8px;font-weight:500}.site-footer>div{margin-left:auto}.site-footer p{font-size:9px;color:var(--muted);letter-spacing:.04em}.privacy-open{font-size:11px;background:none;border:0;padding:10px}.back-top{font-size:24px}dialog{border:0;padding:0;max-width:min(1000px,92vw);max-height:90dvh;background:var(--paper);color:var(--ink);border-radius:5px;overflow:auto}dialog::backdrop{background:rgba(12,18,10,.75);backdrop-filter:blur(5px)}.dialog-close{position:absolute;top:14px;right:14px;border:1px solid #c7cfc2;z-index:1;width:40px;height:40px;background:var(--paper);border-radius:50%;font-size:26px;line-height:1}.project-dialog[open]{display:grid;grid-template-columns:1fr 1fr}.dialog-image{background:#e5e8e1;display:flex;align-items:center}.dialog-image img{width:100%;max-height:75dvh;object-fit:contain}.dialog-content{padding:60px 38px 35px}.dialog-content h2{font-size:42px;margin:15px 0 23px}.dialog-content>p{font-size:14px}.dialog-content .eyebrow{font-size:10px}.dialog-details{margin-top:20px;color:var(--muted);font-size:12px!important}.dialog-tags{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0}.dialog-tags span{font-size:10px;border:1px solid var(--line);border-radius:30px;padding:5px 10px}.privacy-dialog{padding:55px 40px;max-width:min(700px,92vw)}.privacy-dialog h2{font-size:35px;margin:17px 0 25px}.privacy-dialog>p:not(.eyebrow){font-size:13px;margin-top:15px}.privacy-dialog a{text-decoration:underline}.page-content{max-width:950px;margin:auto;padding:70px 30px;min-height:65vh}.page-content h1{font-size:60px;margin-bottom:35px}.page-content p{margin-block:20px}.page-content img{height:auto}.page-content ul{padding-left:22px}.post-card{padding-block:25px;border-bottom:1px solid var(--line)}.wp-block-image img{height:auto}.admin-bar .site-header{margin-top:0}
@media(min-width:1600px){.hero,.site-header{max-width:1600px;margin-inline:auto}.section{padding-inline:max(4.5%,calc((100vw - 1600px)/2))}}
@media(max-width:1100px){.site-header nav{gap:20px}.hero{gap:24px;min-height:610px}.hero h1{font-size:70px}.hero-foot{flex-direction:column;gap:6px}.hero-copy{padding-top:48px}.hero-actions{gap:16px}.section{padding-block:70px}.studio{gap:50px}.service-layout{gap:40px}.contact{gap:35px}.contact-form{padding:26px}.process-grid{gap:20px}.service summary h3{font-size:19px}}
@media(max-width:760px){html{scroll-padding-top:20px}.site-header{height:82px;margin-inline:6%;position:relative;z-index:5}.brand-mark{font-size:42px}.brand-name{font-size:10px}.brand-name small{font-size:7px}.menu-toggle{display:flex;flex-direction:column;gap:6px;background:none;border:0;padding:12px}.menu-toggle>span{width:24px;height:1px;background:var(--ink)}.site-header nav{display:none;position:absolute;top:82px;left:-6.8%;right:-6.8%;background:var(--paper);padding:25px 6%;border-bottom:1px solid var(--line);align-items:stretch;gap:20px}.site-header nav.is-open{display:flex;flex-direction:column}.nav-contact{text-align:center}.hero{grid-template-columns:1fr;margin-inline:6%;gap:0}.hero-copy{padding:37px 0 20px}.hero .eyebrow{font-size:9px;letter-spacing:.08em}.hero h1{font-size:clamp(54px,12vw,84px);margin:28px 0 22px;max-width:600px}.hero-text{font-size:16px}.hero-actions{margin:25px 0 35px;gap:20px}.hero-foot{flex-direction:row;gap:20px;font-size:8px}.hero-visual{height:320px;margin:14px 0 30px}.hero-visual>img{height:100%;width:100%}.hero-visual figcaption{font-size:9px;left:18px;right:18px}.hero-visual figcaption>span:first-child{font-size:8px}.discipline-strip{padding:18px 6%;font-size:12px;gap:12px;flex-wrap:wrap;justify-content:center}.discipline-strip b{font-size:18px}.discipline-strip b:last-of-type{display:none}.section{padding:57px 6%}.section-top{margin-bottom:30px}.section-heading{align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:25px}.section-heading>p{font-size:13px}.section-note{font-size:10px}.project-grid{grid-template-columns:1fr;gap:28px}.project-card:last-child{grid-column:auto}.project-card:last-child .project-image{aspect-ratio:1.4}.project-caption h3{font-size:23px}.filters button{font-size:11px;padding:9px 13px}.portfolio-note{font-size:10px}.studio{grid-template-columns:1fr;gap:32px}.studio-intro{display:grid;grid-template-columns:1fr 1fr;align-items:center}.studio-intro .eyebrow{grid-column:1/-1}.studio-symbol{font-size:110px;margin:15px 0 0}.studio-signature{font-size:12px}.studio-signature>span{font-size:10px}.studio-copy h2{font-size:42px}.studio-copy>p{font-size:14px}.studio-facts strong{font-size:15px}.service-layout{grid-template-columns:1fr;gap:28px}.service-intro>p{margin:22px 0}.service summary{min-height:78px;gap:14px}.service summary h3{font-size:20px}.service>p{padding-left:29px;font-size:13px}.process h2{margin-bottom:35px}.process-grid{grid-template-columns:1fr 1fr;gap:35px 24px}.process-grid article>span{margin-bottom:20px}.process-grid h3{font-size:24px}.process-grid p{font-size:12px}.contact{grid-template-columns:1fr;gap:35px}.contact-info h2{font-size:52px}.contact-email{font-size:21px}.contact-form{padding:26px 22px}.form-row{grid-template-columns:1fr;gap:0}.contact-links{font-size:12px}.site-footer{padding:30px 6%;flex-wrap:wrap;gap:15px 20px}.site-footer>div{width:100%;order:4;margin-left:0}.privacy-open{margin-left:auto}.project-dialog[open]{grid-template-columns:1fr}.dialog-image img{height:260px}.dialog-content{padding:30px 25px}.dialog-content h2{font-size:36px}.privacy-dialog{padding:55px 25px 30px}.page-content h1{font-size:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Stefano Dal Sasso: identity and studio gallery */
.studio-intro{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:35px}.studio-signature{font-size:32px;line-height:1.2;letter-spacing:-.04em}.studio-signature>span{display:block;margin-top:12px;font-size:12px;letter-spacing:0}@media(max-width:760px){.studio-intro{display:flex;gap:25px}.studio-signature{font-size:26px}}
.personal-brand{display:flex;align-items:center;gap:17px}.personal-monogram{font-size:39px;font-weight:800;letter-spacing:-.1em;padding:4px 12px 4px 0;border-right:1px solid var(--line);line-height:1}.personal-name{font-size:18px;font-weight:600;line-height:1.08;letter-spacing:-.03em}.personal-name small{display:block;font-size:8px;font-weight:500;letter-spacing:.12em;margin-top:8px;text-transform:uppercase}.personal-footer{font-size:23px;letter-spacing:-.04em;font-weight:600}.hero-visual>img{object-fit:contain}.hero-visual.personal-hero{background:#f0eee7}.personal-hero .visual-label{background:rgba(247,248,244,.9);padding:7px 9px;border-radius:3px}.personal-hero figcaption{background:rgba(247,248,244,.93);padding:10px;border-radius:3px;left:16px;right:16px;bottom:16px}.gallery{background:#efeee8;border-top:1px solid var(--line)}.gallery-filters{display:flex;gap:8px;margin-bottom:28px;flex-wrap:wrap}.gallery-filters button{border:1px solid #c9cec3;background:transparent;padding:10px 18px;border-radius:30px;font-size:12px}.gallery-filters button.active{background:var(--ink);border-color:var(--ink);color:white}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 22px;align-items:start}.gallery-item{margin:0;min-width:0}.gallery-item[hidden]{display:none}.gallery-item-0,.gallery-item-4{grid-column:span 2}.gallery-item-2{grid-column:span 1}.gallery-open{padding:0;border:0;background:none;text-align:left;width:100%}.gallery-image{position:relative;background:#fff;overflow:hidden;aspect-ratio:1.32;border-radius:3px;display:flex;align-items:center;justify-content:center}.gallery-item-0 .gallery-image,.gallery-item-4 .gallery-image{aspect-ratio:1.75}.gallery-image img{width:100%;height:100%;object-fit:contain;transition:transform .5s}.gallery-open:hover img{transform:scale(1.025)}.gallery-zoom{position:absolute;right:14px;bottom:14px;border:1px solid #d3d7cd;background:var(--paper);border-radius:50%;width:35px;height:35px;text-align:center;line-height:35px}.gallery-open figcaption{display:flex;justify-content:space-between;gap:15px;padding-top:13px;font-size:12px}.gallery-open figcaption small{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.gallery-grid.is-filtered .gallery-item{grid-column:span 1}.gallery-grid.is-filtered .gallery-image{aspect-ratio:1.32}.gallery-dialog{max-width:96vw;width:1300px;height:94dvh;max-height:94dvh;background:#171918;color:var(--paper);padding:0;overflow:hidden}.gallery-dialog[open]{display:flex;flex-direction:column}.gallery-dialog .dialog-close{background:#292d27;color:white;border-color:#555e4e}.gallery-view{min-height:0;flex:1;display:flex;align-items:center;justify-content:center;padding:35px 25px 15px}.gallery-view img{max-width:100%;max-height:100%;height:100%;width:100%;object-fit:contain}.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid #454c3e;padding:20px 30px}.gallery-toolbar h2{font-size:23px;margin:5px 0 7px;letter-spacing:-.025em}.gallery-toolbar .eyebrow{font-size:9px;color:var(--lime)}.gallery-toolbar p:last-child{font-size:11px;color:#bec5b8}.gallery-controls{display:flex;align-items:center;gap:18px;flex-shrink:0}.gallery-controls button{width:42px;height:42px;border:1px solid #58614f;background:transparent;color:white;border-radius:50%;font-size:23px}.gallery-controls button:hover{background:var(--lime);color:var(--ink)}.gallery-controls>span{font-size:11px;min-width:35px;text-align:center}.site-header nav{gap:22px}.studio-symbol{letter-spacing:-.08em;font-size:clamp(100px,15vw,225px)}
@media(max-width:1100px){.site-header nav{gap:16px}.personal-name{font-size:16px}.site-header nav{font-size:12px}.nav-contact{padding:12px}}
@media(max-width:760px){.personal-monogram{font-size:32px}.personal-name{font-size:16px}.personal-name small{font-size:7px}.gallery-grid{grid-template-columns:1fr 1fr;gap:22px 15px}.gallery-item-0,.gallery-item-4{grid-column:span 2}.gallery-open figcaption{font-size:10px;flex-direction:column;gap:4px}.gallery-image{aspect-ratio:1.05}.gallery-grid.is-filtered .gallery-image{aspect-ratio:1.15}.gallery-toolbar{flex-direction:column;align-items:flex-start;gap:12px;padding:16px 20px}.gallery-toolbar h2{font-size:20px}.gallery-toolbar p:last-child{font-size:10px}.gallery-controls{align-self:stretch;justify-content:center}.gallery-view{padding:45px 12px 10px}.gallery-dialog{width:96vw;height:90dvh;max-height:90dvh}.studio-symbol{font-size:95px}}

.bio-design{background:#151b12;border-block:1px solid #34402b}.bio-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.bio-copy h2{font-size:clamp(43px,4.6vw,72px);margin-bottom:35px}.bio-copy article{border-top:1px solid #405034;padding:22px 0}.bio-copy h3{font-size:24px;color:var(--lime);margin-bottom:12px}.bio-copy p{font-size:14px;color:#acba9e;max-width:520px}.bio-copy .text-link{margin-top:15px}.bio-visual{border:1px solid #65744f;padding:15px;background:#192114;transform:rotate(-2deg);border-radius:4px}.bio-visual img{width:100%;height:auto}.bio-visual figcaption{display:flex;justify-content:space-between;gap:15px;font-size:8px;letter-spacing:.08em;padding:17px 3px 3px;color:#bfcea9}@media(max-width:760px){.bio-layout{grid-template-columns:1fr;gap:35px}.bio-copy h2{font-size:43px}.bio-visual{transform:none}.bio-copy p{font-size:13px}}
/* Art direction: dark editorial portfolio */
:root{--ink:#f0f1eb;--paper:#121512;--muted:#a1aa9c;--line:#343c31;--lime:#d5f35c;--dark:#191f18;--radius:2px}
body{background:var(--paper);color:var(--ink)}::selection{background:var(--lime);color:#121512}
.site-header{height:106px;border-color:#343c31}.personal-name{font-size:23px;letter-spacing:-.04em;font-weight:500}.personal-name small{font-size:8px;color:#aeb8a6;letter-spacing:.15em;margin-top:10px}
.site-header nav{font-size:12px}.site-header nav a:hover,.text-link:hover{color:var(--lime)}.nav-contact{border-color:#66715e;border-radius:30px;padding:12px 20px}.nav-contact:hover{background:var(--lime);color:#121512!important;border-color:var(--lime)}
.hero{min-height:730px;grid-template-columns:1.04fr .96fr;gap:25px}.hero-copy{padding-top:74px;position:relative;z-index:1}.hero .eyebrow{color:#c8d2bf;max-width:380px}.status-dot{background:var(--lime);box-shadow:0 0 0 4px #d5f35c12}
.hero h1{font-size:clamp(70px,7.8vw,125px);letter-spacing:-.07em;line-height:.96;margin:40px 0 30px;max-width:730px;font-weight:500}.hero h1::after{content:"";display:block;width:65px;height:6px;background:var(--lime);margin-top:30px}.hero-text{font-size:16px;max-width:380px;color:#aab6a1}.hero-actions{margin-bottom:45px;gap:25px}.button-dark{background:var(--lime);color:#121512;border-radius:30px;padding:17px 25px}.button-dark:hover{background:#e4ff8f;color:#121512}.button span{font-size:18px}.hero-foot{font-size:8px;letter-spacing:.14em;border-top:1px solid var(--line);padding-top:17px;gap:15px;color:#9ca890}
.hero-visual.personal-hero{margin:40px -2% 35px 0;background:#181a18;border-radius:160px 160px 2px 2px;position:relative;min-height:560px;border:1px solid #363b32}.hero-visual>img{mix-blend-mode:normal;object-fit:contain;width:100%;height:auto;max-height:90%;padding:40px 15px;filter:contrast(1.08)}.personal-hero .visual-label{top:35px;left:30px;background:none;padding:0;color:#d5f35c;font-size:8px;letter-spacing:.17em}.personal-hero figcaption{left:25px;right:25px;bottom:25px;padding:13px 0;background:none;border-top:1px solid #424b3a;color:#e7ecdf}.hero-visual figcaption>span:first-child{color:#a8b49d;font-size:8px}.hero-visual::after{content:"01 / FORM STUDY";position:absolute;top:35px;right:25px;color:#75826a;font-size:8px;letter-spacing:.1em}
.discipline-strip{padding:28px 4.5%;color:#121512;font-size:18px;font-weight:500;letter-spacing:-.02em;border:0}.discipline-strip b{font-size:32px}.section{padding-block:105px}.section-top .eyebrow{color:var(--lime)}.section-note{color:#9eac94}.section-heading h2,.process h2{font-size:clamp(48px,5.5vw,88px);letter-spacing:-.06em}.section-heading>p{color:var(--muted);font-size:14px}.filters button,.gallery-filters button{border-color:#46513c;color:#ccd4c5;padding:10px 20px}.filters button.active,.gallery-filters button.active{background:var(--lime);color:#121512;border-color:var(--lime)}
.projects{background:#121512}.project-grid{gap:48px 30px}.project-image{border-radius:3px;aspect-ratio:1.25;border:1px solid #394132;background:#dedfd8}.project-pill{background:#d5f35c;color:#121512;font-size:9px;letter-spacing:.08em;text-transform:uppercase;padding:7px 13px}.project-arrow{background:var(--lime);color:#121512;width:44px;height:44px;line-height:44px}.project-caption h3{font-size:29px;letter-spacing:-.04em}.project-caption p{margin-top:9px;color:#95a28b}.project-caption>span{color:var(--lime)}.project-card:last-child .project-image{aspect-ratio:2.45}.portfolio-note{color:#94a088;font-size:10px;line-height:1.7}
.gallery{background:#1d241b;border-color:#343e2c}.gallery-grid{gap:36px 24px}.gallery-image{border:1px solid #606753;border-radius:2px}.gallery-open figcaption{font-size:13px;letter-spacing:-.015em;padding-top:16px}.gallery-open figcaption small{color:var(--lime);font-size:9px}.gallery-zoom{background:var(--lime);border-color:var(--lime);color:#121512}.gallery-open:hover .gallery-zoom{transform:rotate(45deg);transition:transform .3s}.gallery-item-2{margin-top:35px}.gallery-grid.is-filtered .gallery-item-2{margin-top:0}
.studio{background:#cbd5bc;color:#161c13;gap:90px}.studio .eyebrow{color:#405331}.studio-signature{font-size:42px;max-width:280px;letter-spacing:-.05em}.studio-signature>span{color:#43553a;font-size:11px}.studio-copy h2{font-size:clamp(45px,4.6vw,72px)}.studio-copy>p{color:#405139;font-size:16px}.experience,.studio-facts{border-color:#a0b291}.experience>span{color:#405331}.experience>p{color:#405139;font-size:14px}.studio-facts strong{font-size:20px}.studio-facts span{color:#405139;font-size:11px}
.services{background:#121512}.service-intro h2{font-size:clamp(50px,5.5vw,88px)}.service-intro>p{color:#a1af96}.service summary{min-height:100px}.service summary h3{font-size:24px;color:#e8eddf}.service-number{color:#92a27f}.service-plus{color:var(--lime);border:1px solid #46523a;border-radius:50%;width:34px;height:34px;line-height:29px;text-align:center;font-size:24px;flex-shrink:0}.service[open] summary h3{color:var(--lime)}.service>p{color:#a4b396;max-width:570px}
.process{background:#20281d;border-top:1px solid #36432d}.process-grid{gap:35px}.process-grid article{border-color:#566446}.process-grid article>span{color:var(--lime);font-size:14px}.process-grid h3{font-size:30px}.process-grid p{color:#a3b495;font-size:13px}
.contact{background:var(--lime);color:#161c13;gap:85px}.contact .eyebrow{color:#3c511b}.contact-info h2{font-size:clamp(50px,5.7vw,92px);letter-spacing:-.065em;line-height:1}.contact-info h2>span{color:#161c13}.contact-info>p:not(.eyebrow){color:#475b24}.contact-email{border-color:#a5be46;font-size:clamp(19px,1.9vw,28px)}.contact-info .contact-location{color:#526728}.contact-links a{border-bottom:1px solid #849e34;padding-bottom:4px}.contact-form{background:#192114;color:#ebf2df;border-color:#192114;border-radius:5px;padding:40px}.contact-form h3{font-size:28px;margin-bottom:33px}.contact-form label{color:#dce9cb;font-size:11px}.contact-form label>span{color:#9cab8b}.contact-form input,.contact-form textarea,.contact-form select{color:#e4efd7;border-color:#485739;background:transparent;font-size:13px}.contact-form select option{background:#192114;color:#e4efd7}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#90a07e}.form-note{color:#9cac8b}.contact-form .button{background:var(--lime);color:#161c13}.contact-form .button:hover{background:#e4ff8f}.contact-form :focus-visible{outline-color:var(--lime)}.contact-info a:focus-visible{outline-color:#161c13}
.site-footer{padding-block:45px;border-color:#313c2a;background:#121512}.personal-footer{font-size:25px;font-weight:500}.site-footer p{color:#8fa07e}.privacy-open{color:#b8c6aa}.back-top{color:var(--lime)}
.project-dialog{background:#192114}.dialog-image{background:#ddd}.dialog-close{background:#192114;color:var(--lime);border-color:#58664b}.dialog-content>p{color:#c4d1b7}.dialog-details{color:#a5b496!important}.dialog-tags span{color:#cbd8be;border-color:#536345}.privacy-dialog{background:#192114;color:#e5efd9}.privacy-dialog .eyebrow{color:var(--lime)}.gallery-dialog{background:#11160e}.page-content{color:#e8eddf}
@media(min-width:1000px){.hero-visual{transform:rotate(2deg)}.hero-visual img{transform:rotate(-2deg)}}
@media(max-width:1100px){.hero h1{font-size:88px}.hero{min-height:700px}.hero-copy{padding-top:60px}.hero-visual.personal-hero{border-radius:100px 100px 2px 2px;min-height:520px}.contact{gap:40px}.contact-form{padding:30px}.studio{gap:55px}.site-header nav{gap:16px}.personal-name{font-size:20px}}
@media(max-width:760px){.site-header{height:88px}.personal-name{font-size:21px}.personal-name small{font-size:7px;margin-top:7px}.menu-toggle>span{background:var(--lime)}.site-header nav{top:88px;background:#192114}.hero{grid-template-columns:1fr;min-height:0;gap:0}.hero-copy{padding-top:43px}.hero h1{font-size:clamp(66px,15vw,100px);max-width:600px;line-height:.96;margin-top:28px}.hero h1::after{margin-top:24px;width:48px;height:4px}.hero-text{font-size:15px}.hero .eyebrow{font-size:9px;max-width:320px}.hero-actions{margin:27px 0 32px;gap:21px}.hero-foot{font-size:7px}.hero-visual.personal-hero{height:440px;min-height:0;margin:25px 0 35px;border-radius:100px 100px 2px 2px}.hero-visual>img{height:100%;max-height:100%;padding:35px 15px}.hero-visual::after{font-size:7px;right:18px}.personal-hero .visual-label{left:20px;font-size:7px}.personal-hero figcaption{left:20px;right:20px;bottom:15px}.discipline-strip{font-size:13px;gap:12px;padding:22px 6%}.discipline-strip b{font-size:23px}.section{padding-block:65px}.section-heading h2,.process h2,.service-intro h2{font-size:52px}.project-caption h3{font-size:26px}.project-grid{gap:35px}.project-card:last-child .project-image{aspect-ratio:1.4}.gallery-grid{gap:27px 15px}.gallery-item-2{margin-top:0}.gallery-open figcaption{font-size:11px}.gallery-open figcaption small{font-size:8px}.studio-signature{font-size:32px;max-width:none}.studio-copy h2{font-size:44px}.studio-copy>p{font-size:15px}.studio-facts strong{font-size:18px}.service summary h3{font-size:21px}.service summary{min-height:90px}.process-grid{gap:32px 25px}.process-grid h3{font-size:26px}.contact-info h2{font-size:60px}.contact{gap:35px}.contact-email{font-size:23px}.contact-form{padding:29px 24px}.contact-form h3{font-size:25px}.site-footer{padding-block:35px}.personal-footer{font-size:23px}}
@media(prefers-reduced-motion:no-preference){.reveal-ready{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal-ready.is-visible{opacity:1;transform:none}}

/* Iterative product development */
.hero-text{max-width:460px;font-size:17px}.process h2{max-width:950px;margin-bottom:28px}.method-intro{max-width:800px;font-size:18px;line-height:1.7;color:#bfcdb1;margin-bottom:55px}.process-grid p{max-width:none;line-height:1.75;font-size:14px}.process-grid h3{font-size:27px;line-height:1.1}.method-scope{border-top:1px solid #566446;margin-top:55px;padding-top:30px;display:grid;grid-template-columns:1fr 1.5fr;gap:45px}.method-scope h3{font-size:32px;color:var(--lime);max-width:350px}.method-scope p{font-size:16px;line-height:1.75;color:#c6d3b9}@media(max-width:760px){.hero-text{font-size:15px}.method-intro{font-size:16px;margin-bottom:35px}.process-grid p{font-size:13px}.process-grid h3{font-size:23px}.method-scope{grid-template-columns:1fr;gap:20px;margin-top:35px}.method-scope h3{font-size:29px}.method-scope p{font-size:14px}}
