@font-face{font-family:Space;src:url('assets/fonts/space-grotesk-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Space;src:url('assets/fonts/space-grotesk-medium.ttf') format('truetype');font-weight:500 700;font-display:swap}
:root{--paper:#f5f5f5;--ink:#000000;--accent:#D62249;--muted:#71716c;--line:#555;--background:var(--ink);--foreground:var(--paper);--ring:var(--accent);--radius:0;--border:var(--line)}

*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Space,Arial,sans-serif;-webkit-font-smoothing:antialiased}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer;font:inherit}a{color:inherit;text-decoration:none}button{color:inherit}::selection{background:var(--accent);color:var(--ink)}:focus-visible{outline:3px solid #578f10;outline-offset:5px}p,h1,h2,h3{margin:0}img{max-width:100%;height:auto}svg{flex-shrink:0}.section-pad{padding-left:4.2vw;padding-right:4.2vw}.eyebrow{text-transform:uppercase;letter-spacing:.06em;font-size:13px;font-weight:500;line-height:1.5}.tiny{font-size:12px;line-height:1.5;letter-spacing:.04em}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--accent);padding:14px}.skip:focus{top:12px}.header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 4.2vw;position:relative;z-index:20;border-bottom:1px solid var(--line);background:var(--paper)}.logo{display:block;width:150px}.nav{display:flex;align-items:center;gap:36px;font-size:14px}.nav>a{position:relative}.nav>a:not(.nav-contact):after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:1px;background:currentColor;transition:width .25s}.nav>a:hover:after{width:100%}.nav-contact{display:flex;gap:24px;align-items:center;border:1px solid var(--ink);padding:13px 19px;border-radius:30px;transition:background .25s}.nav-contact:hover{background:var(--accent)}.menu-toggle{display:none}.hero{padding-top:42px;padding-bottom:35px;overflow:hidden}.hero-top{display:flex;justify-content:space-between}.eyebrow i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #D6224922;margin-right:10px}.hero-title{position:relative;padding:64px 0 68px}.hero h1{font-size:clamp(70px,8.3vw,144px);letter-spacing:-.075em;line-height:1.01;font-weight:400;position:relative;z-index:1;width:max-content;max-width:100%}.hero h1 span{color:#7b7b75}.hero-symbol{position:absolute;right:1%;top:48px;width:24%;max-width:350px;aspect-ratio:1;display:flex;align-items:center;justify-content:center;background-image:linear-gradient(#deded6 1px,transparent 1px),linear-gradient(90deg,#deded6 1px,transparent 1px);background-size:25% 25%;background-position:center;perspective:700px}.hero-symbol img{width:86%;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .3s ease;filter:drop-shadow(14px 18px 0 #101010)}.symbol-cross{position:absolute;font-size:24px;line-height:1}.cross-one{top:-12px;left:-8px}.cross-two{bottom:-9px;right:-8px}.hero-bottom{display:grid;grid-template-columns:1.05fr 1fr auto;gap:35px;align-items:center;padding-top:26px;border-top:1px solid var(--line)}.hero-bottom p{font-size:17px;line-height:1.6}.round-link{display:flex;align-items:center;gap:16px;font-size:14px}.round{width:52px;height:52px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;overflow:hidden;transition:background .25s,transform .25s}.round-link:hover .round{background:var(--accent);transform:translateY(3px)}.identity{padding-top:90px;padding-bottom:95px}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:35px;gap:40px}.section-heading p{font-size:23px;line-height:1.35;letter-spacing:-.03em}.brand-stage{background:var(--ink);color:var(--paper);min-height:510px;padding:35px;display:flex;flex-direction:column;justify-content:space-between;transition:background .5s,color .5s;position:relative;overflow:hidden}.stage-top{display:flex;justify-content:space-between;gap:24px}.stage-logo{width:62%;max-width:800px;align-self:center;margin:75px auto;transition:transform .7s cubic-bezier(.2,.8,.2,1)}.brand-stage:hover .stage-logo{transform:scale(1.045)}.stage-logo img{width:100%}.stage-bottom{display:flex;align-items:flex-end;justify-content:space-between;font-size:17px;line-height:1.4}.tone-controls{position:absolute;bottom:38px;left:50%;transform:translateX(-50%);display:flex;gap:10px}.tone{width:31px;height:31px;border:1px solid #ffffff60;border-radius:50%;display:grid;place-items:center;transition:transform .2s}.tone:hover{transform:scale(1.2)}.tone.dark{background:#101010;color:white}.tone.light{background:var(--paper);color:var(--ink);border-color:#777}.tone.orange{background:var(--accent);color:var(--ink);border-color:#777}.stage-corner{font-size:50px;line-height:.8}.brand-stage.light{background:#e8e8e0;color:var(--ink)}.brand-stage.light .stage-logo img{filter:brightness(0)}.brand-stage.orange{background:var(--accent);color:var(--ink)}.brand-stage.orange .stage-logo img{filter:brightness(0)}.identity-caption{display:flex;justify-content:space-between;font-size:14px;margin-top:18px;color:#565650}.manifesto{display:grid;grid-template-columns:1fr 2fr;gap:28px;padding-top:100px}.manifesto>.eyebrow{padding-top:10px}.manifesto h2{font-size:clamp(37px,4.1vw,72px);font-weight:400;line-height:1.1;letter-spacing:-.06em}.manifesto h2 span{color:#85857d}.manifesto p{grid-column:2;max-width:510px;font-size:17px;line-height:1.7;margin-top:3px}.services{background:#242424;padding-top:75px;padding-bottom:90px}.section-heading h2{font-size:clamp(32px,3vw,52px);font-weight:400;letter-spacing:-.05em;line-height:1.14;min-width:50%}.service-list{margin-top:68px}.service-item{border-top:1px solid #b9b9b0;border-bottom:0!important}.service-item:last-child{border-bottom:1px solid #b9b9b0!important}.service-trigger{padding:35px 0!important;align-items:center!important;border-radius:0!important;gap:20px!important;transition:color .25s!important}.service-trigger:hover{text-decoration:none!important}.service-trigger:hover .service-name{transform:translateX(10px)}.service-index{font-size:14px;width:5%;align-self:flex-start;margin-top:13px;font-weight:400}.service-name{font-size:clamp(45px,5.6vw,90px);line-height:1;letter-spacing:-.055em;flex:1;font-weight:400;transition:transform .3s}.service-label{font-size:15px;font-weight:400;width:26%}.service-trigger>svg:last-child{display:none}.service-plus{width:38px;height:38px;margin-right:6px;stroke-width:1;transition:transform .3s}.service-trigger[data-state=open] .service-plus{transform:rotate(45deg)}.service-content{padding:0 0 40px 7%!important}.service-copy{display:grid;grid-template-columns:1fr 1fr;gap:25px 8%}.service-copy p{font-size:17px;line-height:1.65;max-width:550px}.tags{display:flex;gap:8px;flex-wrap:wrap;align-content:flex-start;padding-top:3px}.tags span{border:1px solid #b9b9b0;padding:7px 13px;border-radius:25px;font-size:14px;white-space:nowrap}.text-link{display:flex;width:fit-content;align-items:center;gap:18px;font-size:15px;background:none;border:0;border-bottom:1px solid currentColor;padding:0 0 7px;transition:gap .25s}.text-link:hover{gap:30px}.about{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:120px;padding-bottom:120px}.about-visual{background:var(--accent);display:flex;align-items:center;justify-content:center;min-height:490px;position:relative;overflow:hidden}.about-visual>img{width:65%;transform:rotate(-13deg);transition:transform 1s cubic-bezier(.2,.8,.2,1)}.about-visual:hover>img{transform:rotate(7deg) scale(1.03)}.about-visual>.tiny{position:absolute;left:25px;bottom:22px}.about-copy{padding-top:20px}.about h2{font-size:clamp(48px,5.3vw,85px);font-weight:400;letter-spacing:-.06em;line-height:1.04;margin:28px 0}.about h2 span{color:#5d9c0b}.about p{font-size:17px;line-height:1.65;max-width:495px;margin-bottom:18px}.about .text-link{margin-top:30px}.process{padding-top:75px;padding-bottom:100px;border-top:1px solid var(--line)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:60px}.step{border-top:1px solid var(--ink);padding-top:18px}.step-number{display:flex;align-items:center;justify-content:space-between;font-size:14px}.step h3{font-size:32px;font-weight:400;letter-spacing:-.035em;margin:44px 0 17px}.step p{font-size:16px;line-height:1.7;max-width:350px;color:#595953}.contact{background:var(--accent);padding-top:40px;padding-bottom:40px}.contact-top{display:flex;justify-content:space-between;gap:25px}.contact-title{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:0;text-align:left;padding:62px 0;font-size:clamp(70px,10vw,170px);font-weight:400;letter-spacing:-.075em;line-height:.98}.contact-title>svg{width:19%;height:auto;stroke-width:1;transition:transform .4s cubic-bezier(.2,.8,.2,1)}.contact-title:hover>svg{transform:translate(12px,-12px)}.contact-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #10101040;padding-top:26px}.contact-bottom p{font-size:17px;line-height:1.5}.pill{display:flex;justify-content:center;align-items:center;gap:25px;border:1px solid var(--ink);border-radius:40px;background:var(--ink);color:var(--paper);padding:17px 25px;font-size:15px;transition:background .25s,color .25s,transform .25s}.pill:hover{background:var(--paper);color:var(--ink);transform:translateY(-2px)}.footer{background:var(--ink);color:var(--paper);display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:28px;padding-bottom:28px;font-size:13px}.footer>span{color:#b7b7b0}.back-top{display:flex;align-items:center;gap:12px}.brief-dialog{background:var(--paper)!important;padding:40px!important;border:0!important;border-radius:4px!important;max-width:600px!important;max-height:90dvh;overflow-y:auto;gap:21px!important}.brief-title{font-weight:400!important;letter-spacing:-.05em;font-size:36px!important;line-height:1.08!important}.brief-close{position:absolute;right:20px;top:20px;background:none;border:none;padding:8px}.brief-description{font-size:16px!important;line-height:1.6;color:#61615c!important;max-width:450px}.field{display:flex;flex-direction:column;gap:9px;font-size:14px}.field input,.field textarea{border:1px solid #b6b6ad;border-radius:0;background:transparent;padding:12px;font:inherit;font-size:16px;width:100%;resize:vertical}.scope{border:0;padding:0;display:flex;gap:7px;flex-wrap:wrap}.scope legend{font-size:14px;margin-bottom:10px}.scope button{border:1px solid #b6b6ad;border-radius:30px;padding:8px 12px;font-size:13px;background:none}.scope button[aria-pressed=true]{background:var(--accent);border-color:var(--ink)}.brief-actions{display:flex;justify-content:space-between;align-items:center;gap:14px}.download{display:flex;align-items:center;gap:8px;font-size:14px;background:none;border:0}.brief-note{font-size:12px;color:#61615c;line-height:1.5}.reveal{opacity:1;transform:none}
@media(prefers-reduced-motion:no-preference){.reveal{animation:reveal-in .7s ease both;animation-timeline:view();animation-range:entry 0% entry 25%}@keyframes reveal-in{from{opacity:.2;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}}
@media(min-width:1800px){.section-pad,.header{padding-left:max(5vw,calc((100vw - 1700px)/2));padding-right:max(5vw,calc((100vw - 1700px)/2))}.hero-symbol{right:1%}.hero-title{padding-top:90px;padding-bottom:90px}}
@media(max-width:1000px){.hero h1{font-size:9.4vw}.hero-symbol{width:21%;top:70px;right:0}.hero-bottom{grid-template-columns:1fr 1fr}.hero-number{display:none}.nav{gap:24px}.manifesto{grid-template-columns:1fr 2fr}.service-label{display:none}.about{gap:6%;padding-top:85px;padding-bottom:85px}.about-visual{min-height:420px}.about h2{font-size:56px}.about-copy{padding-top:0}.about p{font-size:16px}.steps{gap:25px}.section-heading h2{min-width:55%}}
@media(max-width:700px){html{scroll-padding-top:25px}.section-pad{padding-left:22px;padding-right:22px}.header{height:80px;padding:0 22px}.logo{width:125px}.menu-toggle{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);background:none;border-radius:50%}.nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:26px 22px;flex-direction:column;align-items:stretch;font-size:20px}.nav.is-open{display:flex}.nav-contact{justify-content:space-between;font-size:16px}.hero{padding-top:26px;padding-bottom:30px}.eyebrow{font-size:12px}.hero-location{display:none}.hero-title{padding:45px 0 35px}.hero h1{font-size:13.1vw;letter-spacing:-.07em;line-height:1.08}.hero-symbol{position:relative;top:auto;right:auto;width:150px;margin:35px 18px 12px auto;max-width:none}.hero-symbol img{filter:drop-shadow(8px 10px 0 #101010)}.hero-bottom{display:flex;flex-direction:column-reverse;align-items:flex-start;gap:23px;padding-top:24px}.hero-bottom p{font-size:16px}.round{width:43px;height:43px}.identity{padding-top:48px;padding-bottom:55px}.section-heading{flex-direction:column;gap:22px;margin-bottom:25px}.section-heading p{font-size:21px}.brand-stage{min-height:340px;padding:22px 18px}.stage-top>.tiny{display:none}.stage-top>.eyebrow{font-size:12px}.stage-logo{width:87%;margin:65px 0}.stage-bottom{font-size:14px}.stage-corner{font-size:35px}.tone-controls{left:auto;transform:none;right:65px;bottom:25px;gap:7px}.tone{width:25px;height:25px}.identity-caption{font-size:12px;gap:16px;line-height:1.5}.identity-caption>span:last-child{text-align:right}.manifesto{display:flex;flex-direction:column;padding-top:60px;gap:24px}.manifesto h2{font-size:10vw}.manifesto p{font-size:16px;line-height:1.65}.services{padding-top:48px;padding-bottom:50px}.section-heading h2{font-size:36px}.service-list{margin-top:36px}.service-trigger{padding:27px 0!important;gap:12px!important}.service-index{font-size:12px;width:7%;margin-top:8px}.service-name{font-size:12vw}.service-plus{width:28px;height:28px;margin-right:0}.service-content{padding-left:0!important;padding-bottom:30px!important}.service-copy{display:flex;flex-direction:column;gap:22px}.service-copy p{font-size:16px}.tags span{font-size:12px;padding:6px 11px}.about{display:flex;flex-direction:column;padding-top:55px;padding-bottom:55px;gap:40px}.about-visual{min-height:360px;aspect-ratio:1.05}.about-visual>img{width:62%}.about h2{font-size:56px}.about-copy>.eyebrow{font-size:12px}.process{padding-top:48px;padding-bottom:55px}.steps{grid-template-columns:1fr;gap:32px;margin-top:35px}.step h3{font-size:29px;margin:25px 0 12px}.step p{max-width:none}.contact{padding-top:28px;padding-bottom:28px}.contact-top>.tiny{display:none}.contact-title{padding:40px 0;font-size:15vw;gap:10px}.contact-title>svg{width:19%}.contact-bottom{align-items:flex-start;flex-direction:column;gap:24px}.contact-bottom p{font-size:16px}.footer{flex-wrap:wrap;padding-top:25px;padding-bottom:25px;gap:24px;font-size:12px}.footer>a:first-child{width:110px}.footer>span{order:3;width:100%;padding-top:20px;border-top:1px solid #ffffff25}.footer .back-top{margin-left:auto}.brief-dialog{padding:30px 22px!important;width:calc(100% - 24px)!important}.brief-title{font-size:30px!important;max-width:85%}.brief-actions{gap:12px}.brief-actions .pill{padding:13px 16px;font-size:14px;gap:9px}.download{font-size:13px}.scope button{font-size:12px}.brief-description{font-size:15px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.hero-symbol img{transform:none!important}}
/* Doliwa brand theme, shared across every route. */
:root{color-scheme:dark;--muted:#b6a99e;--surface:#242424;--border:#555}
body{background:var(--ink);color:var(--paper)}
::selection{color:var(--ink)}
:focus-visible{outline-color:#ff9db3}
.header{background:var(--ink)}
.nav-contact{border-color:#666}.nav-contact:hover,.nav-contact[aria-current=page]{background:var(--accent);border-color:var(--accent);color:var(--ink)}.nav>[aria-current=page]:not(.nav-contact){color:#f05b7a}
.hero h1 span{color:var(--accent)}.hero-top,.hero-number{color:#bdbdbd}.hero-symbol{background-image:linear-gradient(#ffffff10 1px,transparent 1px),linear-gradient(90deg,#ffffff10 1px,transparent 1px)}.hero-symbol img{filter:drop-shadow(14px 18px 0 #000000)}.hero .eyebrow i{box-shadow:0 0 0 4px #D622491a}.hero-bottom p{color:#d5d5d5}.round{border-color:#666}.round-link:hover .round{color:var(--ink)}
.brand-stage{background:#121212;border:1px solid var(--line)}.brand-stage.light{background:var(--paper)}.brand-stage.orange{background:var(--accent)}.tone.dark{background:var(--ink)}.tone-controls{gap:12px}.tone{width:36px;height:36px}.tone.light{border-color:#8f8275}.tone.orange{border-color:#f5f5f566}
.identity-caption{color:#bdbdbd}.case-link{display:flex;align-items:center;gap:12px}.case-link:hover{color:#f05b7a}.manifesto h2 span{color:#bdbdbd}.manifesto p{color:#d5d5d5}.services{background:var(--surface)}.service-item,.service-item:last-child{border-color:#555!important}.service-trigger:hover .service-name{color:#f05b7a}.service-copy p,.service-label{color:#c9c9c9}.tags span{border-color:#69594b}.about-visual{color:var(--ink)}.about h2 span{color:var(--accent)}.about p{color:#d5d5d5}.step{border-color:#666}.step p{color:#c9c9c9}.step-number{color:#bdbdbd}.contact{color:var(--ink)}.footer{border-top:1px solid var(--line)}.footer>span{color:#bdbdbd}.footer-links{display:flex;gap:25px;font-size:14px}.footer-links a:hover{color:#f05b7a}.skip{color:var(--ink)}
.page-kicker{display:flex;gap:13px;font-size:13px;color:#bdbdbd;padding-top:36px}.page-kicker a:hover{color:var(--paper)}.page-kicker span{color:#d9d9d9}
.contact-page{padding-bottom:65px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-top:70px;align-items:start}.contact-intro>.eyebrow{color:#bdbdbd}.contact-intro h1{font-size:clamp(48px,5.4vw,90px);line-height:1.06;letter-spacing:-.065em;font-weight:400;margin:28px 0}.contact-intro h1 span{color:var(--accent)}.contact-intro>p{max-width:440px;font-size:17px;line-height:1.7;color:#d5d5d5}.contact-person{display:flex;gap:22px;align-items:center;border-top:1px solid var(--line);margin-top:40px;padding-top:30px}.contact-person strong{font-size:20px;font-weight:400;display:block}.contact-person span{display:block;font-size:14px;color:#bdbdbd;margin-top:5px}.contact-intro .text-link{margin-top:35px}.contact-form{background:var(--surface);padding:32px 34px 16px;display:flex;flex-direction:column;gap:32px;border-top:2px solid var(--accent)}.form-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid var(--line)}.form-heading svg{color:var(--accent)}.contact-form .scope{gap:9px}.contact-form .scope legend{margin-bottom:17px}.scope-choice{position:relative;cursor:pointer}.scope-choice input{position:absolute;opacity:0;width:1px;height:1px}.scope-choice span{display:block;padding:10px 15px;border:1px solid #666;border-radius:30px;font-size:14px;transition:background .2s,color .2s,border-color .2s}.scope-choice input:checked+span{color:var(--ink);background:var(--accent);border-color:var(--accent)}.scope-choice input:focus-visible+span{outline:2px solid #ff9db3;outline-offset:4px}.scope-choice:hover span{border-color:var(--accent)}.contact-form .field{gap:16px;font-size:14px}.contact-form input:not([type=radio]),.contact-form textarea{border:0;border-bottom:1px solid #666;padding:4px 0 16px;border-radius:0;color:var(--paper);font-size:16px;line-height:1.6}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#b1a193;opacity:1}.contact-form textarea{min-height:155px}.contact-form .pill{color:var(--ink);background:var(--accent);border-color:var(--accent);padding:16px 22px}.contact-form .pill:hover{background:var(--paper);border-color:var(--paper)}.contact-form .brief-note{color:#bdbdbd;margin-top:-14px}.form-feedback{font-size:14px;line-height:1.5;color:#ffd0b5;min-height:22px;margin-top:-18px}.contact-footnote{display:grid;grid-template-columns:1fr 1fr;gap:8%;border-top:1px solid var(--line);margin-top:70px;padding-top:25px}.contact-footnote p{max-width:520px;color:#c9c9c9;font-size:16px;line-height:1.65}
.work-title{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;padding:48px 0 60px}.work-title h1{font-size:clamp(64px,8.8vw,140px);font-weight:400;letter-spacing:-.065em;line-height:1}.work-title h1 span{color:var(--accent)}.work-title>div{padding-bottom:7px}.work-title p{color:#c9c9c9;font-size:17px;line-height:1.7;margin-bottom:30px}.work-index{display:flex;justify-content:space-between;font-size:14px;border-top:1px solid var(--line);padding:20px 0}.work-index>span:last-child{color:#bdbdbd}.case-cover{background:#120f0d;padding:34px;border:1px solid var(--line)}.case-cover>img{width:65%;display:block;margin:95px auto}.case-cover-bottom{display:flex;justify-content:space-between;align-items:end;font-size:19px;line-height:1.5}.case-description{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:65px 0}.case-description h2{font-size:clamp(36px,4vw,66px);font-weight:400;letter-spacing:-.06em;margin:18px 0 25px}.case-description h3{font-size:18px;font-weight:500;margin-bottom:13px}.case-description p{font-size:17px;line-height:1.7;color:#c9c9c9;margin-bottom:28px}.case-description p:last-child{margin-bottom:0}.case-gallery{display:grid;grid-template-columns:1fr 1fr;gap:22px}.case-gallery figure{margin:0;min-height:440px;display:flex;align-items:center;justify-content:center;position:relative;padding:50px 40px 70px;overflow:hidden}.case-gallery figcaption{position:absolute;left:25px;bottom:22px;font-size:13px}.case-mark{background:var(--paper);color:var(--ink)}.case-mark img{width:48%;transition:transform .5s}.case-mark:hover img{transform:scale(1.04)}.case-badge{background:var(--accent);color:var(--ink)}.case-badge img{width:68%;transform:rotate(-12deg);transition:transform .6s}.case-badge:hover img{transform:rotate(5deg)}.case-foundations{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:22px 0 85px}.type-specimen{border:1px solid var(--line);padding:32px}.specimen{font-size:clamp(50px,6vw,95px);letter-spacing:-.055em;margin:28px 0}.type-specimen p{color:#c9c9c9;font-size:16px;line-height:1.6}.palette-strip{display:flex;border:1px solid var(--line)}.swatch{width:33.333%;display:flex;justify-content:space-between;flex-direction:column;padding:25px 20px;font-size:13px;min-height:270px;gap:30px}.swatch.espresso{background:var(--ink)}.swatch.orange{background:var(--accent);color:var(--ink)}.swatch.cream{background:var(--paper);color:var(--ink)}.work-cta{border-top:1px solid var(--line);padding-top:45px;padding-bottom:65px}.work-cta>a{position:relative;display:block;font-size:clamp(55px,7.7vw,120px);line-height:1.05;letter-spacing:-.065em;margin-top:30px}.work-cta svg{position:absolute;right:0;top:15%;width:15%;height:auto;color:var(--accent);stroke-width:1;transition:transform .3s}.work-cta a:hover svg{transform:translate(10px,-10px)}
@media(max-width:1000px){.contact-grid{gap:5%}.contact-form{padding:25px 24px 12px}.contact-intro h1{font-size:6vw}.brief-actions{flex-wrap:wrap;gap:20px}.case-gallery figure{min-height:350px}.swatch{padding:22px 12px}.work-title{gap:30px}.work-title h1{font-size:9vw}.footer-links{gap:18px}}
@media(max-width:700px){.nav{background:var(--ink)}.hero-symbol img{filter:drop-shadow(8px 10px 0 #000000)}.hero h1{font-size:13vw}.tone-controls{right:55px;bottom:22px;gap:7px}.tone{width:30px;height:30px}.tags span{font-size:14px}.footer-links{margin-left:auto}.footer .back-top{margin-left:0}.footer>span{border-color:var(--line)}.page-kicker{padding-top:25px;font-size:12px}.contact-grid{grid-template-columns:1fr;gap:40px;padding-top:40px}.contact-intro h1{font-size:13vw;margin:24px 0}.contact-intro>p{font-size:16px}.contact-person{margin-top:28px;padding-top:25px}.contact-intro .text-link{margin-top:27px}.contact-form{padding:26px 20px 12px;gap:28px}.contact-form .brief-actions{gap:20px}.contact-form .brief-actions .pill{font-size:14px}.contact-form .download{font-size:14px}.scope-choice span{padding:10px 13px}.contact-footnote{grid-template-columns:1fr;gap:18px;margin-top:40px}.contact-page{padding-bottom:45px}.work-title{flex-direction:column;align-items:flex-start;gap:30px;padding:35px 0 40px}.work-title h1{font-size:16vw}.work-title p{font-size:16px;margin-bottom:24px}.work-index{font-size:12px;gap:18px}.work-index>span:last-child{text-align:right}.case-cover{padding:23px 20px}.case-cover .stage-top>.tiny{display:none}.case-cover>img{width:95%;margin:70px auto}.case-cover-bottom{font-size:16px}.case-cover-bottom>.tiny{font-size:12px;max-width:90px;text-align:right}.case-description{grid-template-columns:1fr;gap:35px;padding:38px 0}.case-description h2{font-size:42px}.case-description p{font-size:16px}.case-gallery,.case-foundations{grid-template-columns:1fr;gap:16px}.case-gallery figure{min-height:320px;aspect-ratio:1.1}.case-foundations{margin:16px 0 45px}.type-specimen{padding:25px}.specimen{font-size:64px}.swatch{min-height:200px;padding:20px 15px;font-size:12px}.work-cta{padding-top:32px;padding-bottom:45px}.work-cta>a{font-size:13vw}.identity-caption .case-link{font-size:14px;gap:6px}.contact-title{font-size:15vw}}
/* Editorial home: a clear hierarchy, generous spacing and photographic work. */
.hero-v3{padding-top:30px;padding-bottom:25px}.hero-v3-meta{display:flex;justify-content:space-between;gap:25px;color:#bdbdbd}.hero-v3-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:6%;align-items:center;padding:45px 0}.hero-v3-copy h1{font-weight:400;font-size:clamp(52px,5.3vw,92px);line-height:1.06;letter-spacing:-.055em}.hero-v3-copy h1 span{color:var(--accent)}.hero-v3-copy>p{font-size:18px;line-height:1.7;color:#c9c9c9;max-width:490px;margin-top:35px}.hero-actions{display:flex;align-items:center;gap:32px;margin-top:38px;flex-wrap:wrap}.pill.primary{background:var(--accent);border-color:var(--accent);color:var(--ink)}.pill.primary:hover{background:var(--paper);border-color:var(--paper)}.hero-editorial{display:block;position:relative;height:440px;overflow:hidden}.hero-editorial>img{width:100%;height:100%;object-fit:cover;object-position:center 60%;transition:transform .9s}.hero-editorial:hover>img{transform:scale(1.045)}.hero-photo-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000b);display:flex;justify-content:space-between;align-items:end;padding:65px 25px 23px;color:#fff;font-size:18px;line-height:1.4}.hero-photo-caption>span:last-child{font-size:42px}.hero-v3-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding-top:22px;font-size:14px;color:#bdbdbd}.hero-v3-bottom a{display:flex;align-items:center;gap:15px;color:var(--paper)}
.approach-v3{display:grid;grid-template-columns:1fr 2fr;gap:7%;padding-top:95px;padding-bottom:90px}.approach-note{font-size:17px;color:#bdbdbd;line-height:1.6;margin-top:30px}.approach-main h2{font-size:clamp(38px,4.5vw,72px);font-weight:400;letter-spacing:-.055em;line-height:1.1}.approach-main h2 span{color:#bdbdbd}.approach-main>p{font-size:18px;color:#c9c9c9;line-height:1.75;max-width:620px;margin:32px 0 38px}.approach-principles article{display:flex;gap:26px;border-top:1px solid var(--line);padding:23px 0}.approach-principles article>span{color:var(--accent);font-size:13px;margin-top:4px}.approach-principles h3{font-size:21px;font-weight:400;letter-spacing:-.02em}.approach-principles p{font-size:16px;color:#bdbdbd;line-height:1.6;margin-top:8px;max-width:530px}
.selected-work{padding-top:70px;padding-bottom:70px;background:#171717}.selected-work .section-heading{align-items:end;margin-bottom:40px}.selected-work h2{margin-top:22px;font-size:clamp(38px,4.4vw,68px);font-weight:400;letter-spacing:-.055em;line-height:1.1}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.project-image{height:390px;position:relative;overflow:hidden;background:#303030}.project-image>img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.project-card:nth-child(2) .project-image>img{object-position:center 75%}.project-card:hover .project-image>img{transform:scale(1.045)}.project-open{position:absolute;right:20px;bottom:20px;width:46px;height:46px;border-radius:50%;background:var(--paper);color:var(--ink);display:grid;place-items:center;font-size:27px;transition:background .25s,transform .25s}.project-card:hover .project-open{background:var(--accent);transform:rotate(45deg)}.project-label{position:absolute;left:18px;top:18px;background:#171717d9;color:#fff;padding:6px 10px;font-size:12px}.project-caption{display:flex;justify-content:space-between;align-items:baseline;gap:15px;margin-top:19px}.project-caption h3{font-size:23px;font-weight:400;letter-spacing:-.025em}.project-caption>span{font-size:13px;color:#bdbdbd}.work-placeholder-note{font-size:13px;color:#bdbdbd;margin-top:27px;line-height:1.6}.services .section-heading>div{width:53%}.services-intro{font-size:17px!important;line-height:1.65!important;letter-spacing:0!important;color:#c9c9c9;max-width:530px;margin-top:24px!important}.service-name{font-size:clamp(32px,4.1vw,66px)}.service-label{font-size:14px;width:25%}.service-copy p{font-size:16px;line-height:1.75}.about-v3{display:grid;grid-template-columns:1fr 1fr;background:#121212;min-height:660px}.about-portrait{margin:0;position:relative;min-height:100%;overflow:hidden}.about-portrait>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 43%}.about-portrait>figcaption{position:absolute;bottom:23px;left:25px;background:#101010b0;color:#fff;padding:7px 10px;font-size:12px}.about-v3-copy{padding:85px 8vw 85px 6vw}.about-v3-copy h2{font-weight:400;font-size:clamp(43px,4.8vw,76px);line-height:1.08;letter-spacing:-.055em;margin:30px 0}.about-v3-copy h2>span{color:var(--accent)}.about-v3-copy p{font-size:17px;line-height:1.75;color:#c9c9c9;margin-bottom:22px}.about-v3-copy .text-link{margin-top:35px}
.home-contact{display:grid;grid-template-columns:1fr 1.1fr;gap:7%;padding-top:80px;padding-bottom:80px;border-top:1px solid var(--line);background:#121212}.home-contact-copy{padding-top:20px}.home-contact h2{font-weight:400;font-size:clamp(52px,6vw,96px);line-height:1.02;letter-spacing:-.06em;margin:30px 0}.home-contact h2 span{color:var(--accent)}.home-contact-copy>p{font-size:18px;line-height:1.7;color:#c9c9c9;max-width:380px;margin-bottom:50px}.home-contact-copy>.tiny{color:#bdbdbd}.contact-input-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-form .scope{gap:8px}.contact-form .scope-choice span{font-size:14px;padding:8px 11px}.contact-form .field{min-width:0}.contact-form .field input{min-width:0}.form-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.form-privacy{font-size:13px;line-height:1.6;color:#bdbdbd}.form-privacy a{text-decoration:underline;text-underline-offset:3px}.contact-form button:disabled{opacity:.6;cursor:wait}.contact-success{padding:25px 0 45px;min-height:340px}.contact-success>svg{color:var(--accent);margin-bottom:25px}.contact-success h3{font-size:29px;font-weight:400;letter-spacing:-.04em}.contact-success p{font-size:16px;color:#c9c9c9;line-height:1.7;margin:20px 0 35px}
.site-footer{border-top:1px solid var(--line);padding-top:65px;background:var(--ink)}.footer-grid{display:grid;grid-template-columns:1.6fr .9fr 1.1fr 1fr;gap:45px;padding-bottom:60px}.footer-grid h2{font-size:14px;font-weight:500;margin:4px 0 25px;color:#bdbdbd}.footer-grid p{font-size:15px;line-height:1.8;margin:0 0 22px}.footer-brand>p{font-size:16px;margin-top:24px;margin-bottom:25px;color:#c9c9c9}.footer-brand>.tiny{color:#bdbdbd}.footer-grid nav{display:flex;flex-direction:column;gap:15px;font-size:15px}.footer-grid a:hover{color:#f05b7a}.footer-action{display:flex;align-items:center;gap:9px;font-size:14px;margin-top:23px}.social-pending{color:#bdbdbd;font-size:14px!important}.muted{color:#a79789}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 0;border-top:1px solid var(--line);font-size:13px;color:#bdbdbd}.footer-bottom>a{display:flex;align-items:center;gap:15px;color:var(--paper)}
.legal-page,.inbox-page{padding-top:65px;padding-bottom:90px;max-width:1150px;margin:auto;min-height:60vh}.legal-page h1,.inbox-page h1{font-weight:400;font-size:clamp(38px,5vw,72px);letter-spacing:-.055em;line-height:1.1;margin:25px 0 40px}.legal-page h2{font-size:24px;font-weight:400;margin:32px 0 15px}.legal-page p,.legal-page li,.inbox-page>p{font-size:16px;line-height:1.8;color:#c9c9c9;margin-bottom:15px}.legal-page a{text-decoration:underline;text-underline-offset:4px}.inquiry{border:1px solid var(--line);padding:26px;margin-top:25px}.inquiry>div{display:flex;justify-content:space-between;gap:20px}.inquiry h2{font-size:24px;font-weight:400}.inquiry time{font-size:13px;color:#bdbdbd}.inquiry-meta{font-size:14px;color:#bdbdbd;margin:15px 0}.inquiry-message{white-space:pre-wrap;overflow-wrap:anywhere;font-size:17px;line-height:1.7;margin:25px 0}.inquiry a{overflow-wrap:anywhere}.portfolio-examples{padding-top:55px;padding-bottom:65px}.portfolio-example{scroll-margin-top:30px;margin-bottom:60px}.portfolio-example img{width:100%;max-height:540px;object-fit:cover}.portfolio-example:nth-child(2) img{object-position:center 75%}.portfolio-example h2{font-size:35px;font-weight:400;letter-spacing:-.035em;margin-top:25px}.portfolio-example p{font-size:16px;line-height:1.7;color:#bdbdbd;margin-top:15px;max-width:650px}
@media(max-width:1000px){.hero-v3-grid{grid-template-columns:1.3fr .8fr;gap:4%}.hero-v3-copy h1{font-size:5.8vw}.hero-editorial{height:380px}.hero-v3-copy>p{font-size:16px;margin-top:25px}.hero-actions{gap:22px}.project-image{height:310px}.project-caption{align-items:start;flex-direction:column;gap:7px}.about-v3-copy{padding:65px 5vw}.about-v3-copy h2{font-size:48px}.home-contact{gap:4%;grid-template-columns:.9fr 1.1fr}.home-contact h2{font-size:6.7vw}.contact-input-row{grid-template-columns:1fr;gap:25px}.footer-grid{gap:30px;grid-template-columns:1.5fr .8fr 1fr 1fr}.footer-brand>p{font-size:15px}.footer-grid p{font-size:14px}.footer-grid .tiny{font-size:12px}}
@media(max-width:700px){.hero-v3{padding-top:22px}.hero-v3-meta>.tiny{display:none}.hero-v3-grid{grid-template-columns:1fr;padding:35px 0 25px;gap:32px}.hero-v3-copy h1{font-size:11.5vw;line-height:1.08}.hero-v3-copy>p{max-width:460px;margin-top:25px}.hero-actions{gap:25px;margin-top:27px}.hero-actions .pill{padding:15px 18px}.hero-editorial{height:290px}.hero-editorial>img{object-position:center 60%}.hero-photo-caption{font-size:16px;padding:60px 20px 20px}.hero-v3-bottom{font-size:13px;flex-direction:column;gap:18px}.approach-v3{grid-template-columns:1fr;gap:26px;padding-top:55px;padding-bottom:45px}.approach-note{display:none}.approach-main h2{font-size:10vw}.approach-main>p{font-size:16px;margin:25px 0 28px}.approach-principles article{gap:20px}.approach-principles h3{font-size:20px}.selected-work{padding-top:45px;padding-bottom:45px}.selected-work .section-heading{align-items:flex-start;gap:25px}.selected-work h2{font-size:10vw}.project-grid{grid-template-columns:1fr;gap:35px}.project-image{height:330px}.project-caption{flex-direction:row;align-items:baseline}.project-caption h3{font-size:20px}.project-caption>span{font-size:12px}.services .section-heading>div{width:100%}.services-intro{font-size:16px!important;margin-top:20px!important}.service-name{font-size:7.6vw}.about-v3{grid-template-columns:1fr}.about-portrait{height:480px;min-height:0}.about-portrait>img{object-position:center 35%}.about-v3-copy{padding:45px 22px 50px}.about-v3-copy h2{font-size:13vw}.about-v3-copy p{font-size:16px}.home-contact{grid-template-columns:1fr;padding-top:45px;padding-bottom:45px;gap:28px}.home-contact-copy{padding-top:0}.home-contact h2{font-size:16vw;margin:25px 0}.home-contact-copy>p{font-size:16px;margin-bottom:25px}.home-contact-copy>.tiny{font-size:12px}.contact-input-row{grid-template-columns:1fr}.contact-form{padding:25px 18px 12px}.contact-form .brief-actions{align-items:center;gap:22px;flex-wrap:wrap}.site-footer{padding-top:40px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 24px;padding-bottom:38px}.footer-brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1;border-top:1px solid var(--line);padding-top:25px}.footer-grid h2{margin-bottom:20px}.footer-grid p{font-size:14px}.footer-bottom{flex-wrap:wrap;gap:22px;font-size:12px}.footer-bottom>span:nth-child(2){display:none}.footer-bottom>a{margin-left:auto}.legal-page,.inbox-page{padding-top:30px;padding-bottom:50px}.inquiry{padding:20px}.inquiry>div{flex-direction:column;gap:8px}.portfolio-examples{padding-top:35px;padding-bottom:25px}.portfolio-example img{height:360px}.portfolio-example h2{font-size:29px}}

/* Doliwa Design — graphic, restrained, precise. */
.modern-header{position:sticky;top:0;height:82px;background:rgba(22,18,15,.84);border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 12px 35px #0002}
.modern-header .logo{width:147px;transition:transform .3s}.modern-header .logo:hover{transform:translateY(-2px)}
.modern-header .nav{gap:18px}.nav-pill{display:flex;align-items:center;gap:4px;padding:5px;border:1px solid #ffffff20;background:#ffffff0d;border-radius:50px;backdrop-filter:blur(18px)}.nav-pill a{padding:12px 17px;border-radius:30px;color:#d5d5d5;transition:background .25s,color .25s,transform .25s}.nav-pill a:hover{background:#ffffff18;color:#fff;transform:translateY(-1px)}.modern-header .nav-contact{border:0;background:var(--accent);color:var(--ink);padding:16px 22px;gap:30px;font-weight:500}.modern-header .nav-contact:hover{background:#e43860;transform:translateY(-2px)}
.approach-v3{position:relative;overflow:hidden;background:#1c1c1c}.approach-v3:before{content:"";position:absolute;width:420px;height:420px;right:-170px;top:-240px;border-radius:50%;background:#D6224940;filter:blur(110px);pointer-events:none}.approach-v3>.eyebrow,.approach-v3>div{position:relative}.approach-principles article{transition:background .25s,padding .25s}.approach-principles article:hover{background:#ffffff08;padding-left:14px}.approach-main h2 span{color:var(--accent)}
.selected-work{background:#171717}.selected-work h2{font-size:clamp(42px,5.2vw,82px)}.selected-work .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.selected-work .project-grid:has(.project-card:only-child){grid-template-columns:minmax(0,1fr)}.modern-project-card .project-image{height:clamp(340px,36vw,590px);border:1px solid #ffffff1b}.portfolio-stage{background:#000000;display:grid;place-items:center;overflow:hidden;position:relative;isolation:isolate}.portfolio-stage::before{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at 72% 32%,#D622493a,transparent 40%),linear-gradient(130deg,#262626,#000000);z-index:-1}.portfolio-stage-1{background:#ededed}.portfolio-stage-1::before{background:radial-gradient(circle at 18% 20%,#D622494a,transparent 45%),#e1e1e1}.portfolio-stage-2{background:#D62249}.portfolio-stage-2::before{background:linear-gradient(150deg,#e74a6d,#a91337)}.portfolio-stage img{max-width:70%;max-height:70%;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 30px 45px #0003);transition:transform .7s cubic-bezier(.2,.8,.2,1)}.portfolio-stage:hover img{transform:scale(1.045) rotate(-1deg)}.portfolio-stage-1 img{max-width:45%;max-height:62%}.portfolio-stage-2 img{max-width:58%}.modern-project-card .project-caption{border-top:1px solid #ffffff35;padding-top:17px;margin-top:0}.work-number{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);display:block}.modern-project-card h3{font-size:clamp(26px,2.8vw,43px);margin-top:10px}.modern-project-card .project-open{border-radius:50%;bottom:24px;right:24px}.modern-project-card:hover .project-open{transform:rotate(45deg)}.work-placeholder-note{margin-top:24px}
.services{background:#242424}.service-item{transition:background .25s}.service-item:hover{background:#ffffff05}.service-trigger:hover .service-name{transform:translateX(16px)}.about-v3{background:#121212}.about-portrait:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 80px #0002;pointer-events:none}.home-contact{background:radial-gradient(circle at 8% 90%,#D6224918,transparent 35%),#171717;gap:5%;grid-template-columns:.9fr 1.1fr}.home-contact h2{font-size:clamp(54px,6.4vw,110px)}
.contact-form{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(145deg,#292929,#1c1c1c 66%);border:1px solid #5c5c5c;border-radius:28px;padding:34px;gap:24px;box-shadow:0 30px 75px #0005,0 0 0 1px #ffffff0d inset}.contact-form:before{content:"";position:absolute;width:270px;height:270px;right:-125px;top:-145px;background:var(--accent);filter:blur(85px);opacity:.34;z-index:-1;pointer-events:none}.form-heading{border-bottom:1px solid #ffffff32;padding-bottom:27px;align-items:flex-start}.form-heading .eyebrow{color:#f59aad}.form-heading h3{font-size:clamp(28px,3vw,43px);font-weight:400;line-height:1.08;letter-spacing:-.05em;margin-top:12px}.form-heading h3 span{color:var(--accent)}.form-heading-icon{border:1px solid #ffffff49;border-radius:50%;width:55px;height:55px;display:grid;place-items:center;color:var(--accent);background:#ffffff0b}.contact-form .scope legend{font-size:15px;margin-bottom:12px}.contact-form .scope-choice span{background:#ffffff0b;border-color:#ffffff37;padding:10px 15px}.contact-form .scope-choice input:checked+span{box-shadow:0 0 26px #D6224940}.contact-form .field{gap:9px;color:#f6f6f6;font-size:14px}.contact-form input:not([type=radio]),.contact-form textarea{border:1px solid #696969;background:#181411b8;border-radius:15px;padding:15px 17px;color:#fff;min-height:56px;outline:none;transition:border-color .25s,box-shadow .25s,background .25s}.contact-form textarea{min-height:155px;resize:vertical}.contact-form input:not([type=radio]):focus,.contact-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px #D6224925;background:#1c1c1c}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#a9a9a9}.contact-form .pill{border-radius:50px;padding:17px 24px}.contact-form .pill:hover{transform:translateY(-3px);box-shadow:0 12px 28px #D6224930}.contact-form .form-feedback{min-height:0;margin-top:-9px}.contact-form .form-privacy{color:#c7c7c7}.contact-form .brief-actions{margin-top:1px}.contact-page{background:radial-gradient(circle at 90% 5%,#D622491b,transparent 33%);padding-bottom:95px}.contact-page .contact-grid{padding-top:75px}.contact-footnote{margin-top:95px}
.site-footer{background:#000000;border-color:#ffffff23;position:relative;overflow:hidden}.site-footer:before{content:"";position:absolute;left:-240px;top:-380px;width:600px;height:600px;background:#D622491c;border-radius:50%;filter:blur(110px);pointer-events:none}.footer-grid,.footer-bottom{position:relative}.footer-grid{padding-bottom:80px}.footer-brand>p{max-width:310px}.social-icons{display:flex;gap:10px;margin:2px 0 14px}.social-icons span{width:43px;height:43px;border:1px solid #ffffff4a;border-radius:50%;display:grid;place-items:center;color:#d9d9d9;transition:border-color .2s,transform .2s;cursor:default}.social-icons span:hover{border-color:var(--accent);transform:translateY(-3px)}.social-icons b{font-size:17px;letter-spacing:-.08em}
.work-list-page{background:#171717}.work-list-intro{padding-bottom:65px;background:radial-gradient(circle at 76% 5%,#D622491e,transparent 38%)}.work-list-intro>.eyebrow{display:block;color:var(--accent);margin-top:95px}.work-list-heading{display:flex;align-items:end;justify-content:space-between;gap:8%;margin-top:25px}.work-list-heading h1{font-size:clamp(62px,8.2vw,138px);line-height:.98;letter-spacing:-.073em;font-weight:400}.work-list-heading h1 em{font-style:normal;color:var(--accent)}.work-list-heading p{font-size:18px;line-height:1.65;color:#c9c9c9;max-width:350px;margin-bottom:8px}.work-list{padding-bottom:85px}.work-list-item{display:grid;grid-template-columns:1.25fr .75fr;gap:6%;align-items:center;border-top:1px solid #ffffff38;padding:42px 0;transition:padding .3s}.work-list-item:last-child{border-bottom:1px solid #ffffff38}.work-list-item:hover{padding-left:14px}.work-list-art{aspect-ratio:1.65}.work-list-art img{max-width:68%;max-height:70%}.work-list-arrow{position:absolute;right:20px;bottom:20px;width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:var(--paper);color:var(--ink);transition:transform .3s,background .3s}.work-list-item:hover .work-list-arrow{transform:rotate(45deg);background:var(--accent)}.work-list-info h2{font-size:clamp(40px,4.4vw,74px);font-weight:400;letter-spacing:-.06em;line-height:1.08;margin:19px 0 28px}.work-list-info p{font-size:17px;line-height:1.7;color:#c9c9c9;max-width:430px}.work-list-action{display:flex;gap:18px;align-items:center;width:fit-content;border-bottom:1px solid #ffffff99;margin-top:40px;padding-bottom:6px;font-size:15px}.work-list-item:hover .work-list-action{color:var(--accent)}.work-list-end{background:#D62249;color:#000000;display:flex;justify-content:space-between;align-items:center;gap:25px;padding-top:45px;padding-bottom:45px;font-size:20px}.work-list-end a{display:flex;align-items:center;gap:20px;font-size:clamp(27px,3.5vw,55px);letter-spacing:-.04em;border-bottom:1px solid #000000;transition:gap .3s}.work-list-end a:hover{gap:33px}
.project-detail{background:#171717}.project-detail-top{padding-bottom:70px}.detail-back{display:flex;align-items:center;gap:12px;width:fit-content;color:#c9c9c9;font-size:14px;margin:60px 0 70px;transition:gap .2s}.detail-back:hover{gap:19px;color:#fff}.project-detail-top>.eyebrow{color:var(--accent)}.project-detail h1{font-weight:400;font-size:clamp(66px,10vw,155px);letter-spacing:-.075em;line-height:1;margin:22px 0 48px}.project-detail h1 span{color:var(--accent)}.project-detail-summary{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid #ffffff38;padding-top:35px}.project-detail-summary>p{font-size:clamp(20px,2.2vw,32px);letter-spacing:-.035em;line-height:1.4;max-width:650px}.project-detail-summary ul{list-style:none;padding:0;margin:0}.project-detail-summary li{display:flex;gap:20px;padding:14px 0;border-bottom:1px solid #ffffff32;color:#d8d8d8;font-size:16px}.project-detail-summary li span{font-size:12px;color:var(--accent);padding-top:4px}.detail-gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-bottom:90px}.detail-image{margin:0;min-height:430px;aspect-ratio:1.2}.detail-image:first-child{grid-column:1/-1;aspect-ratio:2.1;min-height:500px}.detail-image img{max-width:70%;max-height:68%}.detail-image:not(:first-child) img{max-width:55%}.detail-optional-cta{padding-bottom:75px}.detail-optional-cta a{font-size:clamp(30px,4.5vw,68px);letter-spacing:-.05em;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff66;border-bottom:1px solid #ffffff66;padding:32px 0}.detail-optional-cta a:hover{color:var(--accent)}
@media(max-width:1000px){.work-list-heading{align-items:start;flex-direction:column}.work-list-heading p{max-width:570px}.home-contact{grid-template-columns:1fr 1.2fr}}
@media(max-width:700px){.modern-header{height:72px;padding:0 20px}.modern-header .logo{width:128px}.modern-header .menu-toggle{border-color:#ffffff50;color:#fff}.modern-header .nav{top:72px;background:rgba(25,20,17,.97);border-color:#ffffff29;backdrop-filter:blur(20px);gap:20px}.nav-pill{display:flex;flex-direction:column;align-items:stretch;border:0;background:none;padding:0;gap:2px}.nav-pill a{padding:13px 3px;font-size:21px;border-bottom:1px solid #ffffff22;border-radius:0}.modern-header .nav-contact{justify-content:space-between}.approach-v3:before{opacity:.55}.selected-work .project-grid,.selected-work .project-grid:has(.project-card:only-child){grid-template-columns:1fr}.modern-project-card .project-image{height:330px}.modern-project-card h3{font-size:26px}.contact-form{padding:25px 20px;border-radius:20px;gap:24px}.form-heading h3{font-size:33px}.form-heading-icon{width:44px;height:44px}.contact-form .contact-input-row{gap:20px}.contact-form .field input,.contact-form textarea{padding:15px 14px}.contact-form .scope-choice span{font-size:13px;padding:9px 12px}.contact-page{padding-bottom:65px}.contact-page .contact-grid{padding-top:45px}.contact-footnote{margin-top:55px}.social-icons span{width:46px;height:46px}.footer-grid{padding-bottom:40px}.footer-bottom .footer-panel-link{display:none}.work-list-intro{padding-bottom:45px}.work-list-intro>.eyebrow{margin-top:60px}.work-list-heading h1{font-size:clamp(58px,13vw,92px)}.work-list-heading p{font-size:16px}.work-list{padding-bottom:55px}.work-list-item{grid-template-columns:1fr;gap:25px;padding:32px 0}.work-list-item:hover{padding-left:0}.work-list-art{aspect-ratio:1.25}.work-list-info h2{font-size:42px;margin:16px 0}.work-list-info p{font-size:16px}.work-list-action{margin-top:25px}.work-list-end{padding-top:35px;padding-bottom:35px;align-items:start;flex-direction:column;font-size:16px}.work-list-end a{font-size:35px}.detail-back{margin:40px 0 55px}.project-detail h1{font-size:clamp(62px,13vw,96px);margin-bottom:35px;overflow-wrap:anywhere}.project-detail-summary{grid-template-columns:1fr;gap:30px}.project-detail-summary>p{font-size:22px}.project-detail-top{padding-bottom:45px}.detail-gallery{grid-template-columns:1fr;gap:14px;padding-bottom:50px}.detail-image,.detail-image:first-child{grid-column:auto;aspect-ratio:1.15;min-height:320px}.detail-image img{max-width:78%}}

/* Narrow content rhythm and the updated Doliwa palette. */
.section-pad,.modern-header,.topbar-inner{padding-left:max(28px,calc((100vw - 1200px)/2));padding-right:max(28px,calc((100vw - 1200px)/2))}
.topbar{background:#D62249;color:#fff}
.topbar-inner{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.topbar-contact{display:flex;gap:28px;align-items:center;font-size:13px;font-weight:500}
.topbar-contact a:hover{text-decoration:underline;text-underline-offset:3px}
.social-icons-compact{margin:0;gap:8px}
.social-icons-compact span{width:28px;height:28px;color:#fff;border:0}
.social-icons-compact span:hover{border:0;background:#ffffff24;transform:none}
.social-icons-compact svg{width:17px;height:17px}.social-icons-compact b{font-size:14px}
.modern-header{background:rgba(0,0,0,.9)}
.modern-header .nav-contact,.modern-header .nav-contact:hover{color:#fff}
.approach-v3{background:#1b1b1b}.selected-work{background:#101010}.services{background:#242424}.about-v3,.home-contact{background:#181818}
.contact-form{background:linear-gradient(145deg,#292929,#1a1a1a 66%);border-color:#555}
.contact-form input:not([type=radio]),.contact-form textarea{background:#111;border-color:#666}
.contact-form input:not([type=radio]):focus,.contact-form textarea:focus{background:#191919}
.work-list-end{background:var(--accent);color:#fff}.work-list-end a{border-color:#fff}
.footer-grid a{overflow-wrap:anywhere}.footer-grid a:hover{color:#ff9db3}
@media(max-width:700px){.section-pad,.modern-header,.topbar-inner{padding-left:20px;padding-right:20px}.topbar-inner{min-height:38px}.topbar-email{display:none}.topbar-contact{font-size:12px}.social-icons-compact{gap:2px}.social-icons-compact span{width:27px;height:27px}.modern-header .nav{background:rgba(0,0,0,.97)}}

/* Four concept covers show the future portfolio density without presenting them as client work. */
.selected-work .project-grid{gap:28px 24px}
.modern-project-card{display:block;border:1px solid #ffffff21;border-radius:24px;background:#1b1b1b;overflow:hidden;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.modern-project-card:hover{transform:translateY(-7px);border-color:#D6224999;box-shadow:0 24px 55px #0007}
.modern-project-card .project-image{height:auto;aspect-ratio:1.5;overflow:hidden;border:0;border-radius:0;background:#292929}
.modern-project-card .project-image>img{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;display:block;filter:none;transition:transform .65s cubic-bezier(.2,.8,.2,1)}
.modern-project-card:hover .project-image>img{transform:scale(1.045) rotate(0deg)}
.modern-project-card .project-open{width:49px;height:49px;right:18px;bottom:18px;background:#D62249;color:#fff}
.modern-project-card:hover .project-open{transform:translate(2px,-2px) rotate(0deg)}
.modern-project-card .project-caption{padding:22px 24px 25px;margin:0;border:0;display:flex;align-items:flex-end;gap:16px}
.modern-project-card .work-number{font-size:12px;color:#d6d6d6;letter-spacing:.065em}
.modern-project-card h3{font-size:clamp(27px,2.55vw,39px);margin-top:9px;line-height:1.05}
.work-list-art,.detail-image{overflow:hidden;border-radius:24px;background:#292929}
.work-list-art img,.detail-image img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;filter:none}
.work-list-art img{transition:transform .6s ease}.work-list-item:hover .work-list-art img{transform:scale(1.035)}
.detail-image:first-child{aspect-ratio:1.8;min-height:0}.detail-image img{object-position:center}
@media(max-width:700px){.selected-work .project-grid{gap:18px}.modern-project-card{border-radius:20px}.modern-project-card .project-caption{padding:20px}.modern-project-card .project-image{aspect-ratio:1.3}.modern-project-card h3{font-size:27px}.work-list-art,.detail-image{border-radius:19px}.detail-image:first-child{aspect-ratio:1.25;min-height:320px}}

.hero-outline{position:relative;isolation:isolate;overflow:hidden;background:#000000;color:var(--paper)}
.hero-outline-pattern{position:absolute;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(to right,#f5f5f50b 1px,transparent 1px),linear-gradient(to bottom,#f5f5f50b 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(90deg,transparent 22%,#000 100%)}
.hero-outline-pattern::after{content:"";position:absolute;inset:0;background-image:radial-gradient(#f5f5f524 .75px,transparent 1px);background-size:18px 18px;opacity:.35}
.hero-outline-art{position:absolute;z-index:1;top:50%;right:-14vw;height:126%;aspect-ratio:110/114;transform:translateY(-50%);color:#D62249;pointer-events:none}
.hero-outline-mark{width:100%;height:100%;display:block;overflow:visible}
.hero-mark-line{stroke-dasharray:100;stroke-dashoffset:100;animation:hero-line-in 2.2s cubic-bezier(.58,.02,.2,1) .15s forwards}
.hero-mark-glint{stroke-dasharray:2.2 97.8;stroke-dashoffset:100;opacity:.75;animation:hero-line-glint 13s linear 2.3s infinite}
.hero-mark-node{opacity:0;animation:hero-detail-in .65s ease 2s forwards}
.hero-outline-stats{position:absolute;z-index:3;right:6vw;bottom:36px;display:flex;gap:clamp(18px,3vw,48px);margin:0;padding:0;list-style:none;animation:hero-detail-in .8s ease 1.6s both}
.hero-outline-stats li{min-width:103px;border-left:1px solid #D6224980;padding-left:15px}
.hero-outline-stats strong{display:block;color:#f5f5f5;font-size:clamp(27px,2.8vw,40px);font-weight:400;line-height:1;letter-spacing:-.06em}
.hero-outline-stats span{display:block;margin-top:7px;color:#bcaea1;font-size:10px;line-height:1.4;letter-spacing:.09em;text-transform:uppercase}
@keyframes hero-line-in{to{stroke-dashoffset:0}}
@keyframes hero-line-glint{to{stroke-dashoffset:0}}
@keyframes hero-detail-in{to{opacity:1;transform:translateY(0)}from{opacity:0;transform:translateY(8px)}}
.hero-outline-inner{position:relative;z-index:2;min-height:max(740px,calc(100svh - 82px));display:flex;flex-direction:column;padding-top:30px;padding-bottom:45px}
.hero-outline-top{display:flex;justify-content:space-between;align-items:center;gap:24px;color:#c5c5c5;font-size:12px;letter-spacing:.11em}
.hero-outline-top .eyebrow{display:flex;align-items:center;gap:11px;font-size:14px;letter-spacing:.025em}
.hero-outline-main{flex:1;display:flex;align-items:center}
.hero-outline-copy{max-width:760px;padding:70px 0 30px}
.hero-outline h1{font-size:clamp(68px,7.75vw,124px);font-weight:400;line-height:.99;letter-spacing:-.075em;margin:0;white-space:nowrap}
.hero-outline h1 span{color:var(--accent)}
.hero-outline-copy>p{max-width:430px;margin:32px 0 30px;font-size:18px;line-height:1.65;color:#d4d4d4}
.hero-outline-actions{display:flex;align-items:center;gap:29px;flex-wrap:wrap}
.hero-outline-actions .pill{white-space:nowrap}
.hero-outline-actions .text-link{color:#f5f5f5}
@media(max-width:1100px){.hero-outline-art{right:-22vw;height:118%}.hero-outline h1{font-size:7.55vw}.hero-outline-copy{max-width:65%}}
@media(max-width:700px){.hero-outline-inner{min-height:max(740px,calc(100svh - 72px));padding-top:24px;padding-bottom:42px}.hero-outline-top>span:last-child{display:none}.hero-outline-main{align-items:flex-end}.hero-outline-art{height:55%;top:26%;right:-30vw;transform:translateY(-50%)}.hero-outline-stats{top:102px;left:22px;right:22px;bottom:auto;justify-content:space-between;gap:8px}.hero-outline-stats li{min-width:0;flex:1;padding-left:10px}.hero-outline-stats strong{font-size:25px}.hero-outline-stats span{font-size:8px;letter-spacing:.04em}.hero-outline-pattern{background-size:42px 42px;mask-image:linear-gradient(0deg,transparent 13%,#000 90%)}.hero-outline-copy{max-width:none;width:100%;padding:280px 0 0}.hero-outline h1{font-size:clamp(54px,11.8vw,80px);white-space:normal}.hero-outline-copy>p{font-size:16px;line-height:1.6;max-width:360px;margin:25px 0}.hero-outline-actions{gap:20px}.hero-outline-actions .pill{padding:14px 18px}}
@media(max-width:420px){.hero-outline-art{height:51%;right:-38vw;top:25%}.hero-outline-copy{padding-top:260px}.hero-outline h1{font-size:12.2vw}.hero-outline-actions{gap:16px}}
@media(prefers-reduced-motion:reduce){.hero-mark-line{animation:none;stroke-dashoffset:0}.hero-mark-glint{display:none}.hero-mark-node,.hero-outline-stats{animation:none;opacity:1}}

/* Accent actions keep white text across every route. */
.pill.primary,.contact-form .pill,.modern-header .nav-contact,.modern-header .nav-contact:hover,.nav-contact[aria-current=page]{color:#fff}
.pill.primary:hover,.contact-form .pill:hover{color:var(--ink)}

.floating-contact{position:fixed;z-index:40;right:clamp(18px,3vw,44px);bottom:clamp(18px,3vw,38px);display:flex;align-items:center;gap:12px;border:1px solid #ec6b87;border-radius:999px;background:var(--accent);color:#fff;padding:15px 17px 15px 19px;font-size:14px;font-weight:500;box-shadow:0 14px 38px #0008,0 0 0 5px #D622491c;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.floating-contact:hover{background:#e43860;transform:translateY(-4px);box-shadow:0 18px 42px #0009,0 0 0 8px #D6224924}
.floating-contact:focus-visible,.contact-popup-close:focus-visible{outline:2px solid #fff;outline-offset:4px}
.floating-contact-arrow{margin-left:5px;transition:transform .25s ease}
.floating-contact:hover .floating-contact-arrow{transform:translate(2px,-2px)}
.contact-popup{width:min(650px,calc(100vw - 32px));max-width:none;max-height:min(90dvh,900px);display:block;overflow-y:auto;overscroll-behavior:contain;border:0;border-radius:28px;background:#1c1c1c;padding:0;box-shadow:0 36px 110px #000b}
.contact-popup .contact-form{border:1px solid #5c5c5c;box-shadow:none;margin:0;padding:36px}
.contact-popup .form-heading{padding-right:44px}
.contact-popup-close{position:absolute;z-index:2;right:22px;top:22px;display:grid;place-items:center;width:42px;height:42px;border:1px solid #ffffff55;border-radius:50%;background:#242424;color:#fff;transition:background .2s ease,transform .2s ease}
.contact-popup-close:hover{background:var(--accent);transform:rotate(90deg)}
@media(max-width:700px){.floating-contact{right:17px;bottom:17px;padding:14px 16px;font-size:13px;gap:9px}.floating-contact-arrow{display:none}.contact-popup{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:20px}.contact-popup .contact-form{padding:28px 20px 16px}.contact-popup .form-heading{padding-right:47px}.contact-popup .form-heading-icon{display:none}.contact-popup-close{right:16px;top:16px;width:38px;height:38px}}
@media(max-width:370px){.floating-contact span{display:none}.floating-contact{width:52px;height:52px;justify-content:center;padding:0}}
@media(prefers-reduced-motion:reduce){.floating-contact,.floating-contact-arrow,.contact-popup-close{transition:none}}

summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.service-trigger{width:100%;text-align:left}.service-content{padding-bottom:32px}.hp-field{position:absolute;left:-10000px;opacity:0}.form-consent{display:flex;gap:10px;font-size:12px;line-height:1.5;margin:18px 0}.form-status{margin-top:18px}.form-status.is-error{color:#ffadc0}.contact-popup::backdrop{background:#000b;backdrop-filter:blur(5px)}.contact-popup{color:#fff}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.project-image img{width:100%;height:100%;object-fit:cover}
dialog.contact-popup:not([open]){display:none}.service-trigger{display:grid;grid-template-columns:50px 1fr 1fr 30px;gap:20px;align-items:center;padding:28px 0}.service-name{display:block}.service-index{align-self:center}.service-plus{justify-self:end}.form-consent input[type=checkbox]{min-height:0!important;width:18px;height:18px;flex:0 0 18px;padding:0;accent-color:var(--accent)}figure{margin:0}.social-icons a{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid #ffffff45;border-radius:50%}.social-icons-compact a{width:24px;height:24px;border:0}
@media(max-width:700px){.home-contact,.contact-grid{grid-template-columns:minmax(0,1fr)!important}.home-contact{gap:28px}.service-trigger{grid-template-columns:25px minmax(0,1fr) 24px;gap:10px}.service-label{display:none}.service-content{padding-left:35px}.service-copy{width:100%;margin:0}.contact-input-row{grid-template-columns:minmax(0,1fr)}.contact-form{min-width:0}.contact-popup .contact-form{width:100%}}

/* Crisp, self-contained icons and the expanding accordion control. */
.social-icons :is(a,span){display:grid;place-items:center;width:46px;height:46px;border:1px solid #ffffff45;border-radius:50%;color:#f5f5f5;transition:color .28s ease,background-color .28s ease,border-color .28s ease,transform .28s ease}
.social-icons a:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-3px)}
.social-icons svg{display:block;width:22px;height:22px}
.social-icons-compact :is(a,span){width:30px;height:30px;border:0;color:#fff}
.social-icons-compact a:hover{background:#ffffff29;transform:translateY(-2px)}
.social-icons-compact svg{width:19px;height:19px}
.service-plus{position:relative;display:block;flex:none;width:38px;height:38px;transform:none!important}
.service-plus::before,.service-plus::after{content:"";position:absolute;top:50%;left:50%;width:36px;height:2px;border-radius:2px;background:currentColor;transition:transform .32s cubic-bezier(.2,.8,.2,1),background-color .32s}
.service-plus::before{transform:translate(-50%,-50%)}
.service-plus::after{transform:translate(-50%,-50%) rotate(90deg)}
.service-item[open] .service-plus::before{transform:translate(-50%,-50%) rotate(45deg)}
.service-item[open] .service-plus::after{transform:translate(-50%,-50%) rotate(135deg)}
.modern-header .nav-contact{transition:background-color .28s ease,border-color .28s ease,color .28s ease,transform .28s ease,box-shadow .28s ease}
.modern-header .nav-contact:hover{box-shadow:0 8px 22px #D622493b}
.brief-actions{justify-content:flex-start}
.legal-copy{max-width:850px;white-space:normal;font-size:16px;line-height:1.8;color:#d5d5d5}
@media(max-width:700px){.service-plus{width:28px;height:28px}.service-plus::before,.service-plus::after{width:26px}}

@media(prefers-reduced-motion:no-preference){
  .scroll-reveal{opacity:0;transform:translateY(24px);transition:opacity .62s ease,transform .62s cubic-bezier(.2,.8,.2,1)}
  .scroll-reveal.is-visible{opacity:1;transform:translateY(0)}
  body.page-enter::before,body.page-leave::before{content:"";position:fixed;inset:0;background:#D62249;z-index:9999;pointer-events:none}
  body.page-enter::before{animation:brand-flash-in .3s ease-out both}
  body.page-leave::before{animation:brand-flash-out .17s ease-in both}
  @keyframes brand-flash-in{from{opacity:1}to{opacity:0}}
  @keyframes brand-flash-out{from{opacity:0}to{opacity:1}}
}
.contact-form .form-privacy-note{margin:0;color:#c9c9c9;font-size:13px;line-height:1.65}
.contact-form .form-privacy-note a{color:#fff;text-decoration:underline;text-underline-offset:3px;transition:color .25s ease}
.contact-form .form-privacy-note a:hover{color:#ff9db3}
