:root{
  --yellow:#f3c700;
  --yellow-soft:#fff1a8;
  --ink:#171717;
  --ink-soft:#343434;
  --paper:#fdfcf8;
  --white:#fff;
  --cream:#f3f1eb;
  --muted:#6c6a64;
  --line:#d7d4cc;
  --line-dark:rgba(23,23,23,.22);
  --container:min(1240px,calc(100% - 56px));
  --sans:"Helvetica Neue",Helvetica,Arial,sans-serif;
  --serif:Georgia,"Times New Roman",serif;
  --shadow:0 28px 70px rgba(20,20,20,.10);
}
*,:before,:after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:105px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.62;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.menu-open{overflow:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-underline-offset:4px}
button,input,select,textarea{font:inherit}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--yellow);outline-offset:4px}
::selection{background:var(--yellow);color:var(--ink)}
.skip{position:fixed;left:16px;top:-100px;z-index:9999;padding:10px 16px;background:var(--ink);color:#fff}.skip:focus{top:16px}
.container{width:var(--container);margin:auto}.narrow{width:min(820px,calc(100% - 40px));margin:auto}
.section{padding:clamp(80px,9vw,132px) 0}.section-sm{padding:clamp(50px,6vw,84px) 0}.cream{background:var(--cream)}.yellow{background:var(--yellow)}.dark{background:var(--ink);color:#fff}
.eyebrow,.statement-index{display:flex;align-items:center;gap:11px;margin:0 0 24px;font-size:.72rem;font-weight:760;letter-spacing:.15em;text-transform:uppercase}.eyebrow:before{content:"";width:28px;height:2px;background:var(--yellow)}
h1,h2,h3,h4{margin:0;font-family:var(--sans);font-weight:720;line-height:1.02;letter-spacing:-.048em;text-wrap:balance}
h1{font-size:clamp(3.25rem,6.25vw,6.35rem)}h2{font-size:clamp(2.4rem,4.65vw,4.75rem)}h3{font-size:clamp(1.45rem,2.15vw,2rem)}
h1 em,h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.055em}
p{margin:0 0 1.15em}p:last-child{margin-bottom:0}.lead{font-size:clamp(1.08rem,1.6vw,1.33rem);line-height:1.52;color:var(--ink-soft);text-wrap:pretty}.dark .lead{color:rgba(255,255,255,.73)}.small{font-size:.84rem}.muted{color:var(--muted)}
.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:34px}.btn{display:inline-flex;min-height:52px;align-items:center;justify-content:center;gap:12px;padding:13px 21px;border:1px solid var(--ink);border-radius:4px;background:var(--ink);color:#fff;font-weight:720;text-decoration:none;transition:transform .22s,background .22s,color .22s}.btn:hover{transform:translateY(-2px);text-decoration:none}.btn-yellow{border-color:var(--yellow);background:var(--yellow);color:var(--ink)}.btn-outline{background:transparent;color:var(--ink)}.dark .btn-outline{border-color:#fff;color:#fff}.btn-arrow:after{content:"↗"}.text-link{display:inline-flex;align-items:center;gap:10px;border-bottom:1px solid currentColor;padding-bottom:3px;font-weight:720;text-decoration:none}.text-link:after{content:"↗"}.text-link:hover{color:#8d7400}
.notice{padding:7px 20px;background:var(--ink);color:#fff;text-align:center;font-size:.68rem;font-weight:730;letter-spacing:.09em;text-transform:uppercase}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(253,252,248,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:inline-flex;align-items:center;gap:13px;text-decoration:none}.brand img{width:45px;height:45px;aspect-ratio:1;object-fit:contain}.brand-copy{display:grid;line-height:1}.brand-name{font-size:1.14rem;font-weight:820;letter-spacing:-.03em}.brand-tag{margin-top:5px;color:var(--muted);font-size:.55rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.nav-links{display:flex;align-items:center;gap:clamp(18px,2.5vw,34px)}.nav-links>a:not(.btn){position:relative;padding:29px 0;font-size:.89rem;font-weight:690;text-decoration:none}.nav-links>a:not(.btn):after{content:"";position:absolute;left:0;right:100%;bottom:23px;height:2px;background:var(--yellow);transition:right .22s}.nav-links>a:hover:after,.nav-links>a[aria-current=page]:after{right:0}.nav-links .btn{min-height:48px;padding:11px 18px}.menu-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;border:1px solid var(--ink);background:transparent;color:var(--ink)}.menu-lines,.menu-lines:before,.menu-lines:after{display:block;width:20px;height:1.5px;background:currentColor}.menu-lines{position:relative}.menu-lines:before,.menu-lines:after{content:"";position:absolute;left:0}.menu-lines:before{top:-6px}.menu-lines:after{top:6px}

/* Homepage */
.hero-editorial{padding:clamp(80px,10vw,145px) 0 clamp(90px,11vw,150px);border-bottom:1px solid var(--line);overflow:hidden}.hero-editorial-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(390px,.85fr);gap:clamp(60px,8vw,115px);align-items:center}.hero-copy h1{max-width:890px}.hero-copy .lead{max-width:760px;margin-top:30px}.studio-board{position:relative;min-height:590px}.board-browser,.board-brand,.board-social{position:absolute;border:1px solid var(--ink);box-shadow:var(--shadow)}.board-browser{inset:10px 24px 120px 0;background:#fff}.browser-top{height:46px;display:flex;align-items:center;gap:7px;padding:0 14px;border-bottom:1px solid var(--line);background:#f8f7f3}.browser-top span{width:8px;height:8px;border:1px solid var(--ink);border-radius:50%}.browser-top small{margin-left:auto;color:var(--muted);font-size:.64rem;letter-spacing:.07em}.browser-content{padding:70px 42px}.browser-content p{margin-bottom:15px;color:#8c7400;font-size:.72rem;font-weight:800;letter-spacing:.15em}.browser-content strong{display:block;font-size:clamp(2.1rem,3.4vw,3.7rem);line-height:1.02;letter-spacing:-.055em}.browser-line{width:72%;height:7px;margin-top:55px;background:var(--ink)}.browser-line.short{width:43%;margin-top:12px;background:var(--yellow)}.board-brand{right:-8px;top:125px;width:165px;height:194px;display:grid;place-items:center;padding:20px;background:var(--yellow);transform:rotate(4deg)}.board-brand img{width:104px;height:104px;aspect-ratio:1;object-fit:contain}.board-brand span{font-size:.65rem;font-weight:800;letter-spacing:.15em}.board-social{right:27px;bottom:30px;width:235px;padding:30px 26px;background:var(--ink);color:#fff;transform:rotate(-2deg)}.social-number{display:block;margin-bottom:45px;color:var(--yellow);font-family:var(--serif);font-size:1.5rem}.board-social strong{display:block;font-size:1.35rem;letter-spacing:.08em}.board-social p{margin-top:6px;color:rgba(255,255,255,.62);font-size:.78rem}.board-caption{position:absolute;left:22px;bottom:45px;font-size:.67rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg)}
.intro-statement{padding:clamp(70px,8vw,110px) 0;background:var(--ink);color:#fff}.intro-statement-grid{display:grid;grid-template-columns:180px 1fr 190px;gap:55px;align-items:start}.statement-index{color:rgba(255,255,255,.52)}.statement-large{max-width:800px;margin-bottom:25px;font-family:var(--serif);font-size:clamp(2.1rem,4vw,4rem);line-height:1.08;letter-spacing:-.045em}.intro-statement .lead{max-width:700px;color:rgba(255,255,255,.64)}.experience-mark{display:flex;align-items:flex-end;gap:10px;border-left:1px solid rgba(255,255,255,.24);padding-left:30px}.experience-mark strong{font-family:var(--serif);font-size:5rem;font-weight:400;line-height:.8}.experience-mark span{max-width:70px;color:rgba(255,255,255,.58);font-size:.73rem;line-height:1.25;text-transform:uppercase;overflow-wrap:anywhere}
.editorial-heading{display:grid;grid-template-columns:1.15fr .65fr;gap:80px;align-items:end;margin-bottom:60px}.editorial-heading .lead{max-width:520px}.service-ledger{border-top:1px solid var(--ink)}.service-line{display:grid;grid-template-columns:70px minmax(230px,.8fr) 1.2fr 34px;gap:26px;align-items:center;padding:27px 4px;border-bottom:1px solid var(--line);text-decoration:none;transition:padding .2s,background .2s}.service-line:hover{padding-left:17px;padding-right:17px;background:var(--yellow-soft)}.service-no{font-family:var(--serif);font-size:.88rem;color:var(--muted)}.service-title{font-size:1.5rem;font-weight:710;letter-spacing:-.035em}.service-desc{color:var(--muted)}.service-arrow{font-size:1.2rem;text-align:right}
.work-section{background:var(--cream)}.work-heading{align-items:end}.work-list{display:grid;gap:22px}.work-row{display:grid;grid-template-columns:minmax(280px,.68fr) 1.32fr;min-height:455px;border:1px solid var(--ink);background:#fff;overflow:hidden}.work-info{display:flex;flex-direction:column;justify-content:flex-end;padding:42px}.work-info>span{margin-bottom:auto;color:var(--muted);font-size:.7rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase}.work-info h3,.work-info h2{margin-bottom:14px;font-size:clamp(2.3rem,4vw,4rem)}.work-info p{max-width:420px;color:var(--muted)}.work-visual{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;border-left:1px solid var(--ink)}.work-visual:before,.work-visual:after{content:"";position:absolute}.work-code{position:relative;z-index:2;font-family:var(--sans);font-size:clamp(6rem,12vw,12rem);font-weight:830;letter-spacing:-.1em;line-height:.8}.work-tag{position:absolute;right:28px;bottom:25px;z-index:3;font-size:.66rem;font-weight:800;letter-spacing:.18em;writing-mode:vertical-rl}.work-ekineos .work-visual{background:#e7dcc6}.work-ekineos .work-visual:before{width:360px;height:360px;border:2px solid var(--ink);border-radius:50%;background:#ee7f4d}.work-korpus .work-visual{background:#d5dfcf}.work-korpus .work-visual:before{width:65%;height:2px;background:var(--ink);box-shadow:0 38px 0 var(--ink),0 -38px 0 var(--ink)}.work-korpus .work-visual:after{width:210px;height:210px;border:2px solid var(--ink);transform:rotate(45deg)}.work-ipbay .work-visual{background:#f2ca25}.work-ipbay .work-visual:before{width:190px;height:330px;border:3px solid var(--ink);border-radius:95px 95px 18px 18px;background:rgba(255,255,255,.45);transform:rotate(7deg)}.work-kbollen .work-visual{background:#e6eee1}.work-kbollen .work-visual:before{width:300px;height:300px;border-radius:50%;background:#ec7b38}.work-kbollen .work-visual:after{width:180px;height:180px;border-radius:50%;background:#7ca461}.work-guihome .work-visual{background:#e9e4da}.work-guihome .work-visual:before{width:370px;height:230px;border:2px solid var(--ink);transform:skewY(-18deg)}.work-warrigal .work-visual{background:#252525;color:#fff}.work-warrigal .work-visual:before{width:330px;height:330px;border:2px solid var(--yellow);border-radius:50%}.work-warrigal .work-visual:after{width:190px;height:2px;background:var(--yellow);transform:rotate(-32deg)}
.manifesto-strip{padding:85px 0;background:var(--yellow)}.manifesto-grid{display:grid;grid-template-columns:180px 1fr;gap:55px}.manifesto-grid .statement-index{color:rgba(23,23,23,.62)}.manifesto-text{max-width:980px;font-size:clamp(2rem,4.5vw,4.65rem);font-weight:700;line-height:1.04;letter-spacing:-.055em}
.offer-section{background:var(--paper)}.offer-editorial{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.offer-kicker{display:flex;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--line);font-size:.64rem;font-weight:780;letter-spacing:.14em}.offer-main{display:grid;grid-template-columns:1.2fr .72fr;gap:90px;padding:70px 0}.offer-copy{padding-top:46px}.offer-copy .btn{margin-top:22px}
.local-section{background:var(--ink);color:#fff}.local-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:95px}.local-section .lead{color:rgba(255,255,255,.75)}.zone-cloud{display:flex;flex-wrap:wrap;gap:9px;margin-top:32px}.zone-cloud a,.zone-cloud span{padding:9px 13px;border:1px solid rgba(255,255,255,.35);border-radius:99px;color:#fff;font-size:.78rem;text-decoration:none}.zone-cloud a:hover{border-color:var(--yellow);color:var(--yellow)}
.article-lines{border-top:1px solid var(--ink)}.article-lines a{display:grid;grid-template-columns:130px 1fr 65px;gap:25px;align-items:center;padding:24px 4px;border-bottom:1px solid var(--line);text-decoration:none}.article-lines a:hover strong{transform:translateX(8px)}.article-lines span,.article-lines small{color:var(--muted);font-size:.73rem;text-transform:uppercase;letter-spacing:.08em}.article-lines strong{font-size:1.25rem;font-weight:670;transition:transform .2s}.article-lines small{text-align:right}
.faq-home-section{background:var(--cream)}.faq-layout{display:grid;grid-template-columns:.62fr 1.38fr;gap:100px}.faq{margin:0;border-top:1px solid var(--ink)}.faq-item{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}.faq-question{width:100%;display:flex;justify-content:space-between;gap:28px;padding:22px 2px;border:0;background:transparent;font-weight:690;text-align:left;cursor:pointer}.faq-question:after{content:"+";font-family:var(--serif);font-size:1.45rem;font-weight:400}.faq-question[aria-expanded=true]:after{content:"−"}.faq-answer{padding:0 40px 25px 2px;color:var(--muted)}.js .faq-answer[hidden]{display:none}
.closing-cta{padding:clamp(80px,9vw,125px) 0;background:var(--yellow)}.closing-grid{display:grid;grid-template-columns:180px 1fr 180px;gap:55px;align-items:center}.closing-grid .statement-index{color:rgba(23,23,23,.58)}.closing-grid h2{font-size:clamp(2.65rem,5.2vw,5.35rem)}.closing-grid .lead{max-width:650px;margin-top:24px}.cta-circle{width:172px;height:172px;display:flex;flex-direction:column;justify-content:space-between;padding:25px;border:1px solid var(--ink);border-radius:50%;background:var(--ink);color:#fff;font-weight:700;text-decoration:none;transition:transform .25s}.cta-circle:hover{transform:rotate(6deg)}.cta-circle b{align-self:flex-end;color:var(--yellow);font-size:1.4rem}

/* Existing page components restyled */
.hero:not(.hero-editorial){padding:100px 0;background:var(--paper)}.hero-grid{display:grid;grid-template-columns:1fr 430px;gap:80px;align-items:center}.hero-card{min-height:430px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:30px;background:var(--cream);border:1px solid var(--line)}.hero-stamp{position:relative!important;inset:auto!important;width:min(72%,260px)!important;height:auto!important;aspect-ratio:1/1!important;object-fit:contain!important;transform:none!important;animation:none!important;filter:none!important;margin:auto}.hero-shape{display:none}.hero-note{position:relative!important;inset:auto!important;width:100%!important;padding:20px!important;border:0!important;border-radius:0!important;background:var(--ink)!important;color:#fff!important;box-shadow:none!important;transform:none!important}.hero-note strong{display:block;margin-bottom:7px}.hero-note span{color:rgba(255,255,255,.65)}.highlight{background:linear-gradient(transparent 73%,var(--yellow) 0)}.marquee{overflow:hidden;padding:12px 0;background:var(--ink);color:#fff}.marquee-track{display:flex;width:max-content;animation:marquee 35s linear infinite}.marquee-track span{padding-right:30px;font-size:.78rem;font-weight:720;letter-spacing:.12em;text-transform:uppercase}.marquee-track span:after{content:" · ";color:var(--yellow)}@keyframes marquee{to{transform:translateX(-50%)}}
.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.stat{min-height:165px;padding:28px 25px;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat-value{font-family:var(--serif);font-size:clamp(2.5rem,4vw,4.1rem);font-weight:400}.stat-label{color:var(--muted)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:55px;margin-bottom:50px}.section-head>:first-child{max-width:790px}.section-head .lead{max-width:490px}.cards-3{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink)}.cards-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.card{min-height:320px;padding:32px 28px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;background:transparent;transition:background .2s}.card:nth-child(3n){border-right:0}.card:hover{background:var(--yellow-soft)}.card-icon{width:auto;height:auto;margin-bottom:70px;background:none;font-family:var(--serif);font-size:.9rem;color:var(--muted)}.card h3{margin-bottom:16px}.card p{color:var(--muted)}.card-link{display:inline-flex;margin-top:18px;font-weight:720;text-decoration:none}.card-link:after{content:" ↗"}
.split{display:grid;grid-template-columns:minmax(0,.88fr) minmax(360px,1.12fr);gap:90px;align-items:center}.visual-panel{position:relative;min-height:500px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--ink);background:var(--yellow)}.visual-panel:before{content:"";position:absolute;width:65%;height:65%;border:1px solid var(--ink);border-radius:50%;background:rgba(255,255,255,.45)}.visual-panel:after{content:"LUPABAY";position:absolute;right:22px;bottom:18px;font-size:.65rem;font-weight:800;letter-spacing:.18em;writing-mode:vertical-rl}.visual-panel img{position:relative!important;z-index:2!important;width:min(48%,245px)!important;height:auto!important;aspect-ratio:1/1!important;object-fit:contain!important;inset:auto!important;filter:none!important}.visual-chip{position:absolute;left:20px;top:20px;z-index:3;padding:8px 10px;border:1px solid var(--ink);background:#fff;font-size:.65rem;font-weight:760;letter-spacing:.07em;text-transform:uppercase}.check-list{display:grid;gap:13px;margin:28px 0 0;padding:0;list-style:none}.check-list li{position:relative;padding:0 0 13px 28px;border-bottom:1px solid var(--line)}.check-list li:before{content:"↗";position:absolute;left:0;color:#9b7f00;font-weight:800}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink)}.process-step{min-height:290px;padding:30px 25px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.process-step:last-child{border-right:0}.process-number{display:block;margin-bottom:65px;font-family:var(--serif);color:var(--muted)}.process-step p{color:var(--muted)}
.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.project-card{color:inherit;text-decoration:none}.project-art{position:relative;min-height:390px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--ink)}.project-art:before{content:"";position:absolute;width:58%;height:58%;border:1px solid var(--ink);border-radius:50%}.project-art:after{content:"";position:absolute;width:42%;height:2px;background:var(--ink);transform:rotate(-35deg)}.project-monogram{position:relative;z-index:2;font-size:clamp(4rem,8vw,8rem);font-weight:820;letter-spacing:-.08em}.project-meta{display:flex;justify-content:space-between;gap:20px;padding:15px 0 4px}.project-meta strong{font-size:1.1rem}.project-meta span{color:var(--muted);font-size:.8rem}.art-yellow{background:var(--yellow)}.art-cream{background:var(--cream)}.art-white{background:#fff}.art-dark{background:var(--ink);color:#fff}.art-dark:after{background:var(--yellow)}.art-sand{background:#d9c9ad}
.offer-box{display:grid;grid-template-columns:1fr .75fr;gap:65px;padding:55px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);background:transparent}.offer-price{align-self:center;padding:28px;border-left:5px solid var(--yellow);background:var(--cream)}.offer-price strong{display:block;font-family:var(--serif);font-size:clamp(2.8rem,5vw,4.6rem);font-weight:400;line-height:1}.offer-price span{display:block;margin-top:8px;color:var(--muted)}
.page-hero{position:relative;padding:clamp(80px,10vw,130px) 0;border-bottom:1px solid var(--ink);background:var(--paper);overflow:hidden}.page-hero:after{content:"";position:absolute;right:-7vw;bottom:-12vw;width:29vw;height:29vw;min-width:270px;min-height:270px;border:1px solid var(--line);border-radius:50%;background:var(--yellow-soft)}.page-hero .container{position:relative;z-index:1}.page-hero h1{max-width:1050px;font-size:clamp(3rem,5.6vw,5.75rem)}.page-hero .lead{max-width:800px;margin-top:28px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:34px;color:var(--muted);font-size:.76rem}.breadcrumbs i{font-style:normal}.page-hero-work:after{background:var(--yellow)}
.prose{font-size:1.02rem}.prose h2{margin:2.1em 0 .62em;font-size:clamp(2rem,3.6vw,3.45rem)}.prose h3{margin:1.8em 0 .6em}.prose ul,.prose ol{padding-left:1.25em}.prose li{margin:.45em 0}.prose a{font-weight:700}.prose blockquote{margin:2.3em 0;padding:30px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);font-family:var(--serif);font-size:clamp(1.5rem,2.5vw,2.25rem);line-height:1.25}.info-box{margin:2em 0;padding:22px 25px;border-left:4px solid var(--yellow);background:var(--cream)}.article-meta{display:flex;gap:18px;margin-top:28px;color:var(--muted);font-size:.82rem}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:75px;align-items:start}.article-aside{position:sticky;top:118px;padding:22px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.article-aside strong{display:block;margin-bottom:15px}.article-aside nav{display:grid;gap:9px}.article-aside a{color:var(--muted);font-size:.85rem;line-height:1.4;text-decoration:none}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink)}.blog-card{min-height:390px;display:flex;flex-direction:column;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:inherit;text-decoration:none;transition:background .2s}.blog-card:nth-child(3n){border-right:0}.blog-card:hover{background:var(--yellow-soft)}.blog-card-tag{width:max-content;margin-bottom:70px;padding:5px 0;border-bottom:2px solid var(--yellow);font-size:.67rem;font-weight:780;letter-spacing:.1em;text-transform:uppercase}.blog-card h2{font-size:clamp(1.45rem,2.15vw,2rem)}.blog-card p{color:var(--muted)}.blog-card time{margin-top:auto;padding-top:25px;color:var(--muted);font-size:.77rem}
.contact-grid{display:grid;grid-template-columns:.68fr 1.32fr;gap:90px;align-items:start}.contact-details{position:sticky;top:120px}.contact-list{display:grid;margin-top:30px;border-top:1px solid var(--ink)}.contact-item{display:block;padding:16px 0;border-bottom:1px solid var(--line);font-weight:690;text-decoration:none}.contact-item small{display:block;color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.form-card{padding:clamp(28px,5vw,55px);border:1px solid var(--ink);background:#fff}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:19px}.field{display:grid;gap:7px}.field-full,fieldset{grid-column:1/-1}label,legend{font-size:.8rem;font-weight:720}input,select,textarea{width:100%;padding:14px;border:1px solid #aaa69d;border-radius:0;background:#fff;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(243,199,0,.22)}textarea{min-height:155px;resize:vertical}fieldset{margin:0;padding:0;border:0}.checkboxes{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.check-pill{position:relative}.check-pill input{position:absolute;opacity:0;pointer-events:none}.check-pill span{display:block;padding:9px 12px;border:1px solid #aaa69d;background:#fff;font-size:.78rem;cursor:pointer}.check-pill input:checked+span{border-color:var(--ink);background:var(--yellow)}.check-pill input:focus+span{outline:3px solid var(--yellow);outline-offset:3px}.consent{display:grid;grid-template-columns:auto 1fr;gap:10px}.consent input{width:18px;height:18px;margin-top:3px}.form-note{color:var(--muted);font-size:.75rem}.honeypot{position:absolute!important;left:-9999px!important}
.cta{padding:clamp(45px,7vw,85px) 0;border-top:1px solid rgba(255,255,255,.4);border-bottom:1px solid rgba(255,255,255,.4)}.cta h2{max-width:850px}.cta .lead{max-width:700px;margin-top:23px}
.site-footer{padding:72px 0 24px;background:var(--ink);color:#fff}.footer-top{display:grid;grid-template-columns:1.3fr repeat(3,.7fr);gap:50px;padding-bottom:58px}.footer-brand img{width:105px;height:105px;aspect-ratio:1;object-fit:contain;margin-bottom:20px}.footer-brand p{max-width:380px;color:rgba(255,255,255,.6)}.footer-col strong{display:block;margin-bottom:18px;color:var(--yellow);font-size:.67rem;letter-spacing:.13em;text-transform:uppercase}.footer-col nav{display:grid;gap:9px}.footer-col a{color:rgba(255,255,255,.77);font-size:.86rem;text-decoration:none}.footer-col a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:25px;padding-top:22px;border-top:1px solid rgba(255,255,255,.16);color:rgba(255,255,255,.48);font-size:.72rem}.footer-bottom nav{display:flex;gap:16px;flex-wrap:wrap}
.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .55s,transform .55s}.js .reveal.is-visible{opacity:1;transform:none}

@media(max-width:1000px){
  :root{--container:min(100% - 38px,1240px)}
  .menu-toggle{display:flex}.nav-links{position:fixed;inset:83px 0 auto;max-height:calc(100vh - 83px);overflow:auto;display:none;flex-direction:column;align-items:stretch;gap:0;padding:18px 22px 30px;background:var(--paper);border-bottom:1px solid var(--ink)}.nav-links.is-open{display:flex}.nav-links>a:not(.btn){padding:16px 3px;border-bottom:1px solid var(--line)}.nav-links>a:not(.btn):after{display:none}.nav-links .btn{margin-top:18px}
  .hero-editorial-grid,.hero-grid,.split,.offer-main,.local-grid,.contact-grid{grid-template-columns:1fr}.studio-board{min-height:540px;max-width:650px}.intro-statement-grid{grid-template-columns:140px 1fr}.experience-mark{grid-column:2}.editorial-heading{grid-template-columns:1fr;gap:25px}.service-line{grid-template-columns:50px .85fr 1.15fr 30px}.work-row{grid-template-columns:.8fr 1.2fr}.manifesto-grid{grid-template-columns:140px 1fr}.faq-layout{grid-template-columns:1fr;gap:45px}.closing-grid{grid-template-columns:140px 1fr}.cta-circle{grid-column:2}.cards-3,.blog-grid{grid-template-columns:repeat(2,1fr)}.card:nth-child(3n){border-right:1px solid var(--line)}.card:nth-child(2n),.blog-card:nth-child(2n){border-right:0}.process-grid{grid-template-columns:repeat(2,1fr)}.process-step:nth-child(2n){border-right:0}.article-layout{grid-template-columns:1fr}.article-aside,.contact-details{position:static}.footer-top{grid-template-columns:1fr 1fr 1fr}.footer-brand{grid-column:1/-1}
}
@media(max-width:700px){
  :root{--container:min(100% - 28px,1240px)}body{font-size:15.5px}.notice{display:none}.nav{min-height:72px}.brand-tag{display:none}.brand img{width:40px;height:40px}.nav-links{inset:73px 0 auto;max-height:calc(100vh - 73px)}
  h1{font-size:clamp(2.7rem,12vw,4rem)}h2{font-size:clamp(2.15rem,10vw,3.3rem)}.page-hero h1{font-size:clamp(2.7rem,11vw,4rem)}
  .hero-editorial{padding-top:65px}.hero-editorial-grid{gap:45px}.studio-board{min-height:440px}.board-browser{inset:0 12px 92px 0}.browser-content{padding:48px 25px}.browser-content strong{font-size:2.3rem}.browser-line{margin-top:38px}.board-brand{right:0;top:115px;width:125px;height:150px}.board-brand img{width:78px;height:78px}.board-social{right:12px;bottom:10px;width:190px;padding:23px 20px}.social-number{margin-bottom:30px}.board-caption{display:none}
  .intro-statement-grid,.manifesto-grid,.closing-grid{grid-template-columns:1fr;gap:25px}.experience-mark,.cta-circle{grid-column:auto}.experience-mark{border-left:0;border-top:1px solid rgba(255,255,255,.25);padding:25px 0 0}.service-line{grid-template-columns:38px 1fr 26px;gap:12px;padding:21px 0}.service-desc{grid-column:2;display:block}.service-arrow{grid-column:3;grid-row:1/3}.service-title{font-size:1.25rem}.work-row{grid-template-columns:1fr;min-height:auto}.work-info{min-height:270px;padding:28px}.work-visual{min-height:300px;border-left:0;border-top:1px solid var(--ink)}.work-code{font-size:7rem}.manifesto-text{font-size:2.35rem}.offer-kicker{gap:20px;flex-direction:column}.offer-main{gap:20px;padding:48px 0}.offer-copy{padding-top:0}.article-lines a{grid-template-columns:1fr 45px;gap:8px}.article-lines span{grid-column:1/-1}.article-lines small{grid-column:2;grid-row:2}.article-lines strong{font-size:1.05rem}.cta-circle{width:145px;height:145px}.cards-3,.cards-2,.blog-grid,.project-grid,.form-grid,.stat-grid{grid-template-columns:1fr}.card,.blog-card{border-right:0}.stat{border-right:0;border-bottom:1px solid var(--line)}.process-grid{grid-template-columns:1fr}.process-step{border-right:0}.section-head{align-items:flex-start;flex-direction:column}.visual-panel{min-height:390px}.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column}.field-full,fieldset{grid-column:auto}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.reveal{opacity:1;transform:none}}

/* V4 — Real project imagery */
.work-row{min-height:430px;background:#fff;transition:background .25s ease}
.work-row:nth-child(even) .work-info{order:2}
.work-row:nth-child(even) .work-visual{order:1;border-left:0;border-right:1px solid var(--ink)}
.work-visual{background:#eee;border-left:1px solid var(--ink)}
.work-visual::before,.work-visual::after,.work-code,.work-tag{display:none!important}
.work-image{width:100%;height:100%;min-height:430px;object-fit:cover;display:block;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.work-row:hover .work-image{transform:scale(1.018)}
.work-info>span{margin-bottom:auto}
.work-list-full .work-row{min-height:510px}
.work-list-full .work-image{min-height:510px}
@media(max-width:700px){
 .work-row:nth-child(even) .work-info,.work-row:nth-child(even) .work-visual{order:initial}
 .work-row:nth-child(even) .work-visual{border-right:0}
 .work-image,.work-list-full .work-image{min-height:280px}
 .work-list-full .work-row{min-height:auto}
}


/* V5 — Clickable projects and detailed case studies */
.project-link{
  color:inherit;
  text-decoration:none;
}
.project-link:focus-visible{
  outline:4px solid var(--yellow);
  outline-offset:4px;
}
.project-link .work-info{
  position:relative;
}
.work-link-label{
  display:inline-flex;
  width:max-content;
  align-items:center;
  gap:9px;
  margin-top:27px;
  padding-bottom:4px;
  border-bottom:1px solid currentColor;
  font-size:.78rem;
  font-weight:760;
  letter-spacing:.035em;
}
.project-link:hover .work-link-label{
  color:#8d7400;
}
.case-page-hero h1{
  max-width:1100px;
}
.case-cover-section{
  padding:46px 0 0;
  background:var(--paper);
}
.case-cover{
  margin:0;
  overflow:hidden;
  border:1px solid var(--ink);
  background:var(--cream);
}
.case-cover img{
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
}
.case-summary-grid{
  display:grid;
  grid-template-columns:minmax(280px,.8fr) minmax(320px,1.2fr);
  gap:70px 100px;
  align-items:start;
}
.case-summary-copy{
  padding-top:42px;
}
.case-meta{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin:0;
  border-top:1px solid var(--ink);
  border-bottom:1px solid var(--ink);
}
.case-meta>div{
  min-height:145px;
  padding:28px 28px 28px 0;
  border-right:1px solid var(--line);
}
.case-meta>div+div{
  padding-left:28px;
}
.case-meta>div:last-child{
  border-right:0;
}
.case-meta dt{
  margin-bottom:18px;
  color:var(--muted);
  font-size:.68rem;
  font-weight:760;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.case-meta dd{
  margin:0;
  font-size:1.08rem;
  font-weight:680;
  line-height:1.45;
}
.case-story-grid{
  display:grid;
  grid-template-columns:85px minmax(300px,.88fr) minmax(330px,1.12fr);
  gap:40px 75px;
  align-items:start;
}
.case-story-index{
  padding-top:7px;
  color:var(--muted);
  font-family:var(--serif);
  font-size:1rem;
}
.case-story-copy{
  padding-top:42px;
}
.case-deliverables-section{
  background:var(--yellow);
}
.case-deliverables-grid{
  display:grid;
  grid-template-columns:1fr .9fr;
  gap:80px;
  align-items:start;
}
.case-deliverables{
  margin:0;
  padding:0;
  list-style:none;
  border-top:1px solid var(--ink);
}
.case-deliverables li{
  padding:17px 4px;
  border-bottom:1px solid rgba(23,23,23,.35);
  font-size:1.08rem;
  font-weight:680;
}
.case-gallery{
  display:grid;
  grid-template-columns:repeat(12,1fr);
  gap:22px;
}
.case-gallery-item{
  grid-column:span 6;
  margin:0;
  overflow:hidden;
  border:1px solid var(--ink);
  background:#fff;
}
.case-gallery-item:first-child:nth-last-child(3){
  grid-column:span 7;
}
.case-gallery-item:nth-child(2):nth-last-child(2){
  grid-column:span 5;
}
.case-gallery-item:nth-child(3):last-child{
  grid-column:3/span 8;
}
.case-gallery-item img{
  width:100%;
  height:100%;
  min-height:430px;
  object-fit:cover;
}
.case-project-nav{
  display:grid;
  grid-template-columns:1fr 1fr;
  border-top:1px solid var(--ink);
  border-bottom:1px solid var(--ink);
}
.case-project-nav a{
  min-height:190px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:35px max(28px,calc((100vw - 1240px)/2));
  color:inherit;
  text-decoration:none;
  transition:background .2s;
}
.case-project-nav a:first-child{
  align-items:flex-start;
  border-right:1px solid var(--ink);
}
.case-project-nav a:last-child{
  align-items:flex-end;
  text-align:right;
}
.case-project-nav a:hover{
  background:var(--yellow-soft);
}
.case-project-nav span{
  margin-bottom:12px;
  color:var(--muted);
  font-size:.7rem;
  font-weight:760;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.case-project-nav strong{
  font-size:clamp(1.3rem,2.5vw,2.25rem);
  letter-spacing:-.04em;
}
@media(max-width:1000px){
  .case-summary-grid,
  .case-deliverables-grid{
    grid-template-columns:1fr;
    gap:42px;
  }
  .case-summary-copy{
    padding-top:0;
  }
  .case-story-grid{
    grid-template-columns:55px 1fr;
    gap:28px;
  }
  .case-story-copy{
    grid-column:2;
    padding-top:0;
  }
}
@media(max-width:700px){
  .case-cover-section{
    padding-top:25px;
  }
  .case-cover img{
    aspect-ratio:4/3;
  }
  .case-meta{
    grid-template-columns:1fr;
  }
  .case-meta>div,
  .case-meta>div+div{
    min-height:auto;
    padding:22px 0;
    border-right:0;
    border-bottom:1px solid var(--line);
  }
  .case-meta>div:last-child{
    border-bottom:0;
  }
  .case-story-grid{
    grid-template-columns:1fr;
  }
  .case-story-copy{
    grid-column:auto;
  }
  .case-gallery{
    grid-template-columns:1fr;
  }
  .case-gallery-item,
  .case-gallery-item:first-child:nth-last-child(3),
  .case-gallery-item:nth-child(2):nth-last-child(2),
  .case-gallery-item:nth-child(3):last-child{
    grid-column:auto;
  }
  .case-gallery-item img{
    min-height:280px;
  }
  .case-project-nav{
    grid-template-columns:1fr;
  }
  .case-project-nav a{
    min-height:135px;
    padding:28px;
  }
  .case-project-nav a:first-child{
    border-right:0;
    border-bottom:1px solid var(--ink);
  }
}


/* Cookie consent — LUPABAY V9 */
.cookie-consent[hidden],.cookie-consent [hidden]{display:none!important}
.cookie-consent{
  position:fixed;
  z-index:10000;
  right:24px;
  bottom:24px;
  width:min(620px,calc(100% - 48px));
  max-height:calc(100vh - 48px);
  overflow:auto;
  padding:30px;
  border:1px solid var(--ink);
  border-radius:6px;
  background:var(--white);
  box-shadow:0 30px 90px rgba(0,0,0,.24);
}
.cookie-consent__eyebrow{
  margin:0 0 10px;
  color:#806b00;
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.cookie-consent h2{
  margin:0 0 16px;
  font-size:clamp(1.75rem,4vw,2.45rem);
  letter-spacing:-.04em;
}
.cookie-consent p{line-height:1.5}
.cookie-consent__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin-top:24px;
}
.cookie-btn{
  min-height:46px;
  padding:10px 16px;
  border:1px solid var(--ink);
  border-radius:4px;
  background:transparent;
  color:var(--ink);
  font-weight:760;
  cursor:pointer;
}
.cookie-btn:hover{transform:translateY(-1px)}
.cookie-btn--primary{border-color:var(--yellow);background:var(--yellow)}
.cookie-btn--secondary{background:var(--white)}
.cookie-btn--text{border-color:transparent;text-decoration:underline;text-underline-offset:4px}
.cookie-consent__legal{margin-top:14px!important;font-size:.82rem;color:var(--muted)}
.cookie-choice{
  display:flex;
  justify-content:space-between;
  gap:22px;
  align-items:center;
  margin-top:16px;
  padding:18px 0;
  border-top:1px solid var(--line);
}
.cookie-choice strong{display:block;margin-bottom:4px}
.cookie-choice p{margin:0;font-size:.9rem;color:var(--muted)}
.cookie-choice__status{
  flex:0 0 auto;
  font-size:.76rem;
  font-weight:800;
  color:#5a4c00;
}
.cookie-choice--toggle{cursor:pointer}
.cookie-switch{position:relative;display:inline-flex;flex:0 0 auto}
.cookie-switch input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
}
.cookie-switch span{
  position:relative;
  width:52px;
  height:30px;
  border:1px solid var(--ink);
  border-radius:999px;
  background:var(--cream);
  transition:.2s;
}
.cookie-switch span:after{
  content:"";
  position:absolute;
  left:4px;
  top:4px;
  width:20px;
  height:20px;
  border-radius:50%;
  background:var(--ink);
  transition:.2s;
}
.cookie-switch input:checked+span{background:var(--yellow)}
.cookie-switch input:checked+span:after{transform:translateX(22px)}
.cookie-switch input:focus-visible+span{outline:3px solid rgba(243,199,0,.5);outline-offset:3px}
.footer-cookie-button{
  padding:0;
  border:0;
  background:none;
  color:inherit;
  font:inherit;
  cursor:pointer;
  text-decoration:underline;
  text-underline-offset:4px;
}
.cookie-table{width:100%;border-collapse:collapse;margin:24px 0 34px}
.cookie-table th,.cookie-table td{padding:14px 12px;border:1px solid var(--line);text-align:left;vertical-align:top}
.cookie-table th{background:var(--cream);font-size:.82rem;text-transform:uppercase;letter-spacing:.05em}
@media(max-width:680px){
  .cookie-consent{
    right:12px;
    bottom:12px;
    width:calc(100% - 24px);
    max-height:calc(100vh - 24px);
    padding:22px;
  }
  .cookie-consent__actions{display:grid;grid-template-columns:1fr}
  .cookie-btn{width:100%}
  .cookie-choice{align-items:flex-start}
  .cookie-table{display:block;overflow-x:auto}
}
