@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;650;700;750;800&family=Poppins:wght@400;500;600&display=swap');
:root{--bg:#212428;--surface:#24272b;--surface-deep:#1b1e22;--text:#c4cfde;--muted:#a8b1bf;--bright:#f7f8fa;--pink:#ff014f;--pink-light:#ff5789;--line:#34383e;--shadow:14px 14px 28px #191c20,-10px -10px 26px #292d32;--display:'Montserrat',sans-serif;--body:'Poppins',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:106px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body);font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--pink-light);outline-offset:5px}::selection{background:var(--pink);color:#fff}img{display:block;max-width:100%;height:auto}h1,h2,h3,h4{font-family:var(--display);font-weight:700;line-height:1.2;color:var(--bright);margin:0 0 24px;letter-spacing:-.035em}h1{font-size:clamp(3rem,6vw,5.6rem);line-height:1.07}h2{font-size:clamp(2.1rem,3.8vw,3.4rem)}h3{font-size:1.5rem;letter-spacing:-.025em}p{margin:0 0 22px}strong{font-weight:600;color:var(--bright)}.wrap{width:min(1180px,calc(100% - 96px));margin:auto}.eyebrow{display:block;color:var(--pink-light);font-family:var(--display);font-size:.8rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;margin-bottom:22px}.muted{color:var(--muted)}.accent{color:var(--pink)}.skip{position:fixed;top:-100px;left:16px;z-index:100;background:var(--pink);color:#fff;padding:10px 20px}.skip:focus{top:12px}.site-header{position:sticky;top:0;z-index:40;background:#212428f5;border-bottom:1px solid #303338;backdrop-filter:blur(16px)}.nav-wrap{height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:12px;align-items:center;line-height:1.2;font:600 .95rem var(--display);color:#fff;white-space:nowrap}.brand-mark{width:40px;height:40px;display:grid;place-items:center;border:1px solid #4b303a;border-radius:50%;color:var(--pink-light);font-size:.86rem;letter-spacing:-.04em;background:#252329}.nav{display:flex;align-items:center;gap:26px}.nav a{font-size:.8rem;font-weight:500;color:#bcc5d2;transition:color .2s}.nav a:hover,.nav a[aria-current=page]{color:var(--pink-light)}.nav .nav-contact{color:var(--pink-light);padding:11px 18px;background:linear-gradient(145deg,#25282d,#1d2024);border:1px solid #313439;border-radius:6px;box-shadow:5px 5px 12px #191c20}.menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:5px;color:#fff;padding:7px 13px;font-size:.88rem}.hero{padding:74px 0 0;position:relative}.hero-grid{display:grid;grid-template-columns:1.22fr 1fr;gap:30px;align-items:center}.hero .eyebrow{color:#c4cfde;letter-spacing:.21em}.hero h1{font-size:clamp(3.3rem,5.3vw,4.65rem);margin-bottom:28px}.hero-intro{font-size:1.075rem;line-height:1.9;max-width:610px;margin-bottom:17px}.hero-detail{font-size:.93rem;line-height:1.95;color:var(--muted);max-width:600px}.hero-photo{position:relative;align-self:stretch;display:flex;align-items:center;justify-content:center;padding-bottom:32px}.hero-photo img{width:100%;max-height:570px;object-fit:contain;object-position:center bottom}.portrait-label{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;color:#9da7b4}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:30px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:54px;border:1px solid #32353a;padding:14px 25px;border-radius:6px;color:var(--pink-light);background:linear-gradient(145deg,#26292e,#1d2024);box-shadow:7px 7px 17px #191c20,-4px -4px 14px #292d32;font-size:.86rem;font-weight:500;transition:transform .2s,background .2s,border-color .2s}.button:hover{transform:translateY(-3px);border-color:#8f2949;background:#242025}.button.primary{background:var(--pink);color:white;border-color:var(--pink);box-shadow:0 8px 25px #ff014f18}.button.primary:hover{background:#e80048}.button.quiet{box-shadow:none;background:transparent;color:var(--text);border-color:#4a4e55}.text-link{font:600 .85rem var(--display);color:var(--pink-light);border-bottom:1px solid #714053;padding:0 0 6px;display:inline-block}.text-link:hover{color:#fff;border-color:var(--pink)}.discipline-strip{display:flex;gap:12px;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);margin-top:58px;padding:26px 0 34px;color:#aeb8c6;font:500 .82rem var(--display);letter-spacing:.1em;text-transform:uppercase}.discipline-strip i{width:3px;height:3px;border-radius:50%;background:var(--pink);opacity:.8}.section{padding:100px 0;border-bottom:1px solid var(--line)}.split{display:grid;grid-template-columns:1fr 1.1fr;gap:85px;align-items:start}.split h2{max-width:460px}.statement{font-size:1.3rem;color:var(--bright);line-height:1.65}.inline-emphasis{color:var(--pink-light);font-weight:500}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:42px}.section-heading h2{margin-bottom:0}.section-heading p{max-width:350px;font-size:.9rem;margin:0;color:var(--muted)}.problem-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 48px}.problem{border-bottom:1px solid var(--line)}.problem summary{list-style:none;display:flex;align-items:center;gap:16px;cursor:pointer;padding:26px 0;color:#e9edf2;font:600 1.05rem var(--display);line-height:1.5}.problem summary::-webkit-details-marker{display:none}.problem-num{font-size:.75rem;font-weight:500;color:var(--pink-light);letter-spacing:.1em}.problem summary:after{content:'+';margin-left:auto;font-size:1.6rem;font-weight:400;color:#88929f}.problem[open] summary:after{content:'−';color:var(--pink-light)}.problem p{padding:0 20px 8px 35px;color:var(--muted);font-size:.93rem}.projects{display:grid;gap:36px}.project-card{display:grid;grid-template-columns:1fr 1.1fr;border-radius:12px;overflow:hidden;background:linear-gradient(145deg,#26292e,#1d2024);box-shadow:var(--shadow);border:1px solid #2d3137}.project-copy{padding:43px 40px;align-self:center}.project-meta{font-size:.73rem;letter-spacing:.12em;text-transform:uppercase;color:#a6b1c0;margin-bottom:18px}.status{display:inline-block;padding:5px 11px;font:500 .76rem var(--body);color:#e6c8d3;background:#382630;border:1px solid #56303e;border-radius:30px;letter-spacing:0;text-transform:none;white-space:nowrap}.project-copy h3{font-size:2rem;margin-top:18px;margin-bottom:12px}.project-copy p{font-size:.92rem;line-height:1.85;color:#acb6c4;margin-bottom:25px}.tags{display:flex;flex-wrap:wrap;gap:8px}.tags span{font-size:.74rem;border:1px solid #3a3f47;border-radius:4px;padding:3px 9px;color:#b0bccb}.project-visual{display:flex;flex-direction:column;align-items:stretch;justify-content:center;min-height:360px;padding:36px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 55% 45%,#342331 0,transparent 65%),#1a1d22;border-left:1px solid #343039}.project-visual.bocao{background:radial-gradient(ellipse at 50% 50%,#3d2b24 0,transparent 70%),#1d1c20}.project-visual.woods{background:radial-gradient(ellipse at 50% 50%,#213632 0,transparent 70%),#1a1f21}.diagram-label{font:500 .7rem var(--display);text-transform:uppercase;letter-spacing:.16em;color:#a2aab5;position:absolute;top:22px;left:26px}.architecture-mini{width:100%;max-width:350px;margin:8px auto 0}.mini-row{display:flex;gap:12px;align-items:center;padding:11px 16px;border:1px solid #424047;background:#232329;border-radius:5px;font-size:.78rem;position:relative}.mini-row+.mini-row{margin-top:13px}.mini-row+.mini-row:before{content:'';position:absolute;top:-14px;left:29px;width:1px;height:13px;background:#b4486c}.mini-row b{color:#f1e9ed;min-width:102px;font:600 .79rem var(--display)}.mini-row span{color:#a5a6b3}.mini-dot{width:7px;height:7px;background:#e6356b;border-radius:2px;flex-shrink:0}.mini-foot{text-align:center;color:#a9a2ae;font-size:.72rem;margin-top:17px}.journey-title{font:700 2.4rem var(--display);color:#f1e6df;text-align:center;margin:10px 0 2px;letter-spacing:-.04em}.journey-sub{font-size:.7rem;color:#b79e91;text-transform:uppercase;letter-spacing:.26em;text-align:center}.journey-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:24px auto 0;width:100%;max-width:360px}.journey-grid span{background:#2c2423;border:1px solid #5c3a30;color:#d8b8a5;border-radius:5px;padding:10px;text-align:center;font-size:.8rem}.journey-base{grid-column:1/-1}.state-flow{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:350px;width:100%;margin:18px auto 0}.state-flow div{padding:16px 14px;background:#232d2d;border:1px solid #3a4e49;border-radius:6px;font-size:.79rem;color:#c4d3cf}.state-flow span{display:block;font-size:.67rem;color:#819d94;margin-bottom:4px;letter-spacing:.12em}.state-flow .state-ready{border-color:#648e7f;background:#2b3e38;color:#e0f0e9}.cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.cap-card{padding:30px;border-radius:9px;background:linear-gradient(145deg,#26292e,#1e2125);box-shadow:8px 8px 20px #191c20,-5px -5px 14px #292d32;border:1px solid #2b2e33}.cap-icon{width:38px;height:38px;color:var(--pink-light);margin-bottom:22px}.cap-icon svg{width:34px;height:34px;stroke:currentColor;stroke-width:1.3;fill:none;stroke-linecap:round;stroke-linejoin:round}.cap-card h3{font-size:1rem;letter-spacing:.03em;line-height:1.5;text-transform:uppercase;margin-bottom:17px}.cap-card p{font-size:.9rem;color:var(--muted);margin:0}.process-intro{max-width:740px}.process-intro blockquote{font:600 clamp(1.7rem,3vw,2.6rem)/1.4 var(--display);letter-spacing:-.025em;color:var(--bright);margin:30px 0}.process-steps{display:grid;grid-template-columns:repeat(7,1fr);gap:0;margin:42px 0}.process-step{padding:22px 15px 22px 0;border-top:1px solid #55505a;position:relative}.process-step:before{content:'';width:5px;height:5px;background:var(--pink);position:absolute;top:-3px;left:0}.process-step span{display:block;color:#8995a5;font-size:.7rem;margin-bottom:12px}.process-step b{font:600 .82rem var(--display);color:#dce2ec}.process-foot{max-width:690px;color:var(--muted)}.about-preview{align-items:center}.studio-image{border:1px solid #34383e;border-radius:8px;box-shadow:var(--shadow);width:100%;aspect-ratio:1/1;object-fit:cover}.about-preview h2{font-size:2.5rem}.about-preview p{font-size:.94rem}.technology-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0 28px}.technology{border-top:1px solid var(--line);padding:23px 0}.technology h3{font-size:.88rem;letter-spacing:0;line-height:1.5;margin-bottom:9px}.technology p{font-size:.8rem;color:var(--muted);margin:0}.notes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.note-card{display:flex;flex-direction:column;padding:30px;border:1px solid #383c43;border-radius:7px;background:#202328;transition:transform .2s,border-color .2s}.note-card:hover{transform:translateY(-4px);border-color:#704354}.note-kicker{color:var(--pink-light);font-size:.71rem;text-transform:uppercase;letter-spacing:.16em}.note-card h3{font-size:1.24rem;line-height:1.5;letter-spacing:-.025em;margin:22px 0 18px}.note-card p{font-size:.85rem;color:var(--muted)}.note-card .text-link{align-self:flex-start;margin-top:auto}.contact-section{padding:100px 0 60px}.contact-grid{display:grid;grid-template-columns:1fr 1.12fr;gap:65px;align-items:start}.contact-grid h2{font-size:clamp(2.5rem,4vw,3.7rem)}.contact-grid .statement{font-size:1.1rem}.contact-details{margin-top:32px}.contact-details a{display:block;overflow-wrap:anywhere;font-size:.95rem;color:#cdd5e0;margin-bottom:10px}.contact-details a:hover{color:var(--pink-light)}.contact-form{padding:32px;background:linear-gradient(145deg,#25282d,#1e2125);box-shadow:var(--shadow);border:1px solid #30343a;border-radius:10px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}label{font-size:.79rem;letter-spacing:.01em;color:#bac4d2}input,textarea,select{width:100%;background:#191c20;border:1px solid #3c4149;border-radius:5px;color:#d9e0ea;padding:12px 14px;font-size:.9rem;line-height:1.6}select{color-scheme:dark}textarea{resize:vertical;min-height:118px}input::placeholder,textarea::placeholder{color:#858d99}.contact-form .button{width:100%;margin:2px 0 15px}.form-help{font-size:.75rem;line-height:1.7;color:#a0aab8;margin:0}.email-draft{margin-top:18px;padding:17px;border:1px solid #694052;border-radius:5px;background:#29222a}.email-draft[hidden]{display:none}.email-draft p{font-size:.82rem;margin-bottom:14px}.site-footer{border-top:1px solid var(--line);padding:30px 0}.footer-inner{display:flex;justify-content:space-between;gap:24px;font-size:.73rem;color:#8e99a8}.footer-inner a:hover{color:var(--pink-light)}.footer-links{display:flex;gap:20px}.back-top{position:fixed;bottom:24px;right:24px;border:1px solid #49404a;border-radius:50%;width:48px;height:48px;display:grid;place-items:center;background:#25282de8;color:var(--pink-light);font-size:.75rem;z-index:25;box-shadow:5px 5px 15px #15181c}.back-top[hidden]{display:none}.page-hero{padding:70px 0 60px}.breadcrumb{font-size:.78rem;color:#9eabba;display:flex;gap:13px;margin-bottom:38px}.breadcrumb a:hover{color:var(--pink-light)}.page-hero h1{max-width:990px;font-size:clamp(2.8rem,5.2vw,4.75rem)}.page-hero .page-subtitle{font:500 1.2rem/1.8 var(--body);max-width:800px;color:var(--muted);margin:24px 0}.page-hero .status{margin:0 0 25px}.project-role{max-width:890px;margin-top:28px;font-size:.85rem;border-top:1px solid var(--line);padding-top:24px;line-height:2}.project-role strong{color:var(--pink-light);margin-right:12px}.case-lead{font-size:clamp(1.25rem,2.2vw,1.6rem);line-height:1.65;color:#e1e6ee}.case-section{padding:70px 0;border-bottom:1px solid var(--line)}.case-section .split{grid-template-columns:.65fr 1.1fr;gap:90px}.case-section h2{font-size:clamp(1.9rem,3vw,2.6rem)}.case-section h3{font-size:1.15rem;margin-top:32px;margin-bottom:14px}.case-section p{color:#b0bac8}.case-section .statement{color:#e6eaf0}.case-quote{margin:30px 0 0;border-left:2px solid var(--pink);padding:8px 0 8px 25px;font:600 1.3rem/1.6 var(--display);color:#f1f3f7}.architecture-map{padding:36px;border:1px solid #413442;border-radius:10px;background:#1b1e24;display:grid;grid-template-columns:1.1fr 2fr;gap:36px;margin-top:35px}.map-sources{display:flex;flex-direction:column;justify-content:center;gap:12px}.map-sources span{padding:12px 17px;border:1px solid #3c424f;background:#222832;border-radius:5px;color:#b9c4d7;font-size:.85rem}.map-main .mini-row{padding:18px}.map-main .mini-row b{min-width:150px}.map-label{font:500 .72rem var(--display);letter-spacing:.13em;text-transform:uppercase;color:#999eae;margin-bottom:15px}.map-note{grid-column:1/-1;padding-top:20px;border-top:1px solid #373641;font-size:.85rem;color:#b9aab8}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:35px}.principle{padding:23px;border-top:1px solid #543341;background:#202227}.principle h3{font-size:1rem;margin:0 0 14px}.principle p{font-size:.87rem;margin:0}.scope-list{list-style:none;margin:15px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.scope-list li{border-bottom:1px solid #34383e;padding:13px 0;color:#bbc6d5;font-size:.87rem}.current-stage{padding:28px;border:1px solid #6a3c50;border-radius:6px;background:#292329;margin-top:30px}.current-stage h3{color:var(--pink-light);margin:0 0 12px}.current-stage p{margin:0;font-size:.92rem}.case-cta{display:flex;justify-content:space-between;align-items:center;padding:55px 0;gap:32px}.case-cta h2{font-size:2rem;margin:0 0 13px}.case-cta p{margin:0}.path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.path-card{padding:27px 24px;background:#26262b;border:1px solid #443b40;border-radius:7px}.path-card .eyebrow{font-size:.7rem;margin-bottom:15px}.path-card h3{margin:0 0 15px}.path-card p{font-size:.9rem;margin:0}.workflow{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-top:35px}.workflow article{padding:26px;border:1px solid #344940;border-radius:6px;background:#222c28}.workflow article span{font:500 .75rem var(--display);color:#a0c5b7}.workflow article h3{margin:12px 0 10px;font-size:1.1rem}.workflow article p{font-size:.85rem;margin:0}.workflow article:last-child{border-color:#6b9786}.note-article{max-width:790px;margin:0 auto;padding:0 0 80px}.note-article h2{font-size:1.7rem;margin-top:45px}.note-article p{color:#bac3cf;font-size:1rem;line-height:1.95}.note-article ul{padding-left:24px;color:#bac3cf}.note-article li{margin-bottom:14px}.note-article blockquote{margin:40px 0;border-left:3px solid var(--pink);padding:12px 0 12px 26px;color:#f1f3f7;font:600 1.4rem/1.65 var(--display)}.note-author{font-size:.82rem;border-top:1px solid var(--line);padding-top:22px;margin-top:40px;color:#939eac}.about-hero{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:70px}.about-hero img{max-height:520px;object-fit:contain}.about-hero h1{font-size:clamp(2.8rem,5vw,4.25rem)}.role-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:30px}.role-grid div{border-top:1px solid #684050;padding:22px 0}.role-grid h3{font-size:1rem;margin:0 0 12px}.role-grid p{font-size:.85rem}.no-script{padding:10px;background:#282129;color:#ccc;font-size:.83rem}.reveal{opacity:1;transform:none}.js-reveal .reveal.pending{opacity:0;transform:translateY(16px)}.js-reveal .reveal{transition:opacity .6s ease,transform .6s ease}.not-found{text-align:center;padding:110px 0}.not-found h1{font-size:5rem}
@media(min-width:1500px){.wrap{width:min(1280px,calc(100% - 130px))}.hero{padding-top:95px}.hero h1{font-size:5.25rem}.hero-grid{gap:60px}.hero-photo img{max-height:600px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.nav{gap:18px}.brand-name{max-width:110px;white-space:normal}.hero h1{font-size:3.65rem}.hero-grid{grid-template-columns:1.1fr .9fr;gap:15px}.hero-photo img{max-height:480px}.hero-intro{font-size:1rem}.split{gap:45px}.contact-grid{gap:40px}.cap-grid{gap:18px}.cap-card{padding:24px}.project-copy{padding:30px}.project-visual{padding:26px}.notes-grid{gap:18px}.note-card{padding:25px}.case-section .split{gap:50px}.map-main .mini-row{flex-wrap:wrap}.process-step b{font-size:.76rem}}
@media(max-width:820px){.nav-wrap{height:76px}.brand-name{max-width:none}.menu-toggle{display:block}.nav{display:none;position:absolute;top:76px;left:0;right:0;padding:24px 32px;background:#212428;box-shadow:0 15px 20px #1116;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{font-size:.95rem;padding:13px 0}.nav .nav-contact{margin-top:10px;align-self:flex-start}.hero{padding-top:50px}.hero-grid{grid-template-columns:1.1fr .9fr;gap:10px}.hero h1{font-size:2.95rem}.hero-photo{padding-bottom:0;align-self:start;margin-top:50px}.portrait-label{display:none}.hero .eyebrow{font-size:.7rem}.hero-intro{font-size:.92rem}.hero-detail{font-size:.86rem}.actions{gap:12px}.button{padding:12px 18px;font-size:.8rem;min-height:50px}.discipline-strip{font-size:.66rem;letter-spacing:.06em;margin-top:45px;gap:8px}.section{padding:72px 0}.split{grid-template-columns:1fr;gap:30px}.split h2{max-width:600px}.section-heading{align-items:start;flex-direction:column;gap:20px}.section-heading p{max-width:600px}.problem-grid{gap:0 26px}.problem summary{font-size:.92rem}.project-card{grid-template-columns:1fr 1fr}.project-copy h3{font-size:1.7rem}.project-copy{padding:30px 24px}.project-copy p{font-size:.84rem}.project-visual{padding:24px 18px}.diagram-label{font-size:.59rem;left:18px}.mini-row{padding:10px;font-size:.63rem;gap:8px}.mini-row b{font-size:.65rem;min-width:83px}.mini-dot{width:5px;height:5px}.cap-grid{grid-template-columns:1fr 1fr}.process-steps{grid-template-columns:repeat(4,1fr);row-gap:18px}.process-step b{font-size:.83rem}.about-preview{grid-template-columns:.8fr 1fr;gap:35px}.about-preview h2{font-size:2rem}.about-preview p{font-size:.87rem}.technology-grid{grid-template-columns:1fr 1fr}.notes-grid{grid-template-columns:1fr}.note-card{display:grid;grid-template-columns:1fr auto;column-gap:30px}.note-kicker{grid-column:1/-1}.note-card h3{margin:15px 0}.note-card p{grid-column:1}.note-card .text-link{grid-column:2;grid-row:2/4;align-self:center}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-section{padding-top:75px}.contact-grid h2{max-width:590px}.contact-grid .statement{max-width:590px}.contact-details{display:flex;flex-wrap:wrap;gap:8px 25px}.case-section .split{grid-template-columns:1fr;gap:20px}.page-hero{padding-top:50px}.principle-grid{grid-template-columns:1fr 1fr}.path-grid{grid-template-columns:1fr 1fr}.case-cta{align-items:start;flex-direction:column}.about-hero{gap:30px}.about-hero h1{font-size:2.7rem}.role-grid{grid-template-columns:1fr 1fr}}
@media(max-width:590px){.wrap{width:calc(100% - 40px)}.nav-wrap{height:72px}.nav{top:72px;padding:20px}.brand{font-size:.86rem}.brand-mark{width:34px;height:34px}.hero{padding-top:34px}.hero-grid{display:flex;flex-direction:column;gap:22px}.hero-copy{width:100%}.hero h1{font-size:clamp(2.8rem,12vw,4.1rem);margin-bottom:24px}.hero .eyebrow{font-size:.67rem;letter-spacing:.17em}.hero-intro{font-size:1rem}.hero-detail{font-size:.9rem}.hero-photo{width:100%;margin:0;max-height:370px;overflow:hidden}.hero-photo img{height:365px;width:auto;max-width:100%;object-fit:contain;margin:auto}.actions{gap:12px}.hero .actions .button{flex:1 1 auto}.discipline-strip{flex-wrap:wrap;justify-content:center;column-gap:14px;row-gap:12px;margin-top:12px;font-size:.67rem;padding:24px 0}.discipline-strip i{display:none}.section{padding:60px 0}.eyebrow{font-size:.72rem;margin-bottom:18px}h2{font-size:2.1rem}.statement{font-size:1.12rem}.problem-grid{grid-template-columns:1fr}.problem summary{padding:22px 0;font-size:.97rem}.problem p{font-size:.89rem}.project-card{display:flex;flex-direction:column}.project-copy{padding:28px}.project-copy h3{font-size:1.8rem}.project-copy p{font-size:.9rem}.project-visual{border-left:0;border-top:1px solid #343039;min-height:310px;padding:44px 28px 24px}.mini-row{padding:11px 14px;font-size:.75rem}.mini-row b{font-size:.78rem;min-width:105px}.diagram-label{font-size:.67rem;left:28px}.cap-grid{grid-template-columns:1fr}.cap-card{padding:27px}.cap-icon{margin-bottom:18px}.cap-card p{font-size:.95rem}.cap-card h3{font-size:1.02rem}.process-steps{grid-template-columns:1fr 1fr;row-gap:10px}.process-step{padding-bottom:20px}.process-step b{font-size:.92rem}.about-preview{grid-template-columns:1fr}.studio-image{aspect-ratio:4/3}.about-preview h2{font-size:2rem}.about-preview p{font-size:.95rem}.technology-grid{gap:0 24px}.technology h3{font-size:.82rem}.technology p{font-size:.78rem}.notes-grid{gap:20px}.note-card{display:flex;padding:27px}.note-card h3{font-size:1.22rem}.note-card .text-link{align-self:flex-start;margin-top:7px}.note-card p{font-size:.92rem}.contact-form{padding:23px}.form-row{grid-template-columns:1fr;gap:0}.contact-grid h2{font-size:2.5rem}.contact-details{display:block}.contact-details a{font-size:.87rem}.footer-inner{flex-direction:column;gap:16px}.back-top{width:42px;height:42px;bottom:17px;right:17px}.page-hero h1{font-size:2.7rem}.page-hero .page-subtitle{font-size:1.03rem}.page-hero{padding-bottom:40px}.project-role{font-size:.81rem}.case-section{padding:52px 0}.case-lead{font-size:1.2rem}.case-quote{font-size:1.16rem;padding-left:20px}.architecture-map{grid-template-columns:1fr;padding:24px;gap:25px}.map-main .mini-row{gap:10px;padding:14px}.map-main .mini-row b{min-width:105px}.map-note{font-size:.79rem}.map-sources{display:grid;grid-template-columns:1fr 1fr}.map-sources .map-label{grid-column:1/-1;margin:0}.map-sources span{font-size:.7rem;padding:10px}.principle-grid,.path-grid,.workflow{grid-template-columns:1fr}.scope-list{grid-template-columns:1fr}.scope-list li{font-size:.9rem}.current-stage{padding:23px}.case-cta h2{font-size:1.8rem}.about-hero{display:flex;flex-direction:column}.about-hero img{max-height:380px}.role-grid{gap:18px}.note-article h2{font-size:1.5rem}.note-article blockquote{font-size:1.2rem}.breadcrumb{font-size:.73rem;flex-wrap:wrap}.note-author{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-reveal .reveal.pending{opacity:1;transform:none}}

/* Keep reading copy and interactive labels comfortable at every breakpoint. */
.nav a,.button,label{font-size:.875rem}.hero-detail,.problem p,.project-copy p,.cap-card p,.about-preview p,.note-card p,.principle p,.path-card p,.workflow article p,.role-grid p,.current-stage p,.case-section p{font-size:1rem}.status{font-size:.875rem}.map-note,.scope-list li{font-size:.9375rem}.technology p{font-size:.875rem}.form-help{font-size:.8125rem}.hero-photo img{aspect-ratio:800/865}.studio-image{object-position:50% 35%}
