/* Portfolio design: upright typography, warm charcoal and orange. */
:root{--bg:#15110e;--bg2:#1b1612;--page-bg:#15110e;--panel:#201914;--panel2:#2a211b;--text:#f6f0e9;--muted:#c0b2a6;--border:#3d3026;--accent-color:#ff963f;--accent-soft:rgba(255,150,63,.1);--grad:linear-gradient(120deg,#ff963f,#ff963f);--grad2:linear-gradient(120deg,#302116,#201914);--font-primary:"Helvetica Neue Local",Arial,sans-serif;--font-secondary:Georgia,"Times New Roman",serif;--primary:#ff963f;--primary2:#ffb673}
*,*::before,*::after{font-style:normal!important;box-sizing:border-box}
body{background:var(--bg);color:var(--text)}
a{color:inherit}a:hover{color:var(--accent-color)}
::selection{background:#ff963f;color:#15110e}
:focus-visible{outline:2px solid #ff963f!important;outline-offset:5px!important}
.site-bg-img{background:radial-gradient(ellipse at 75% 15%,#442715,transparent 65%);opacity:.45}.site-bg-orb{display:none}
.btn-gradient,.btn-primary{background:#ff963f;color:#211207!important;box-shadow:none;border-color:#ff963f}.btn-gradient:hover,.btn-primary:hover{background:#ffb673;box-shadow:none}
.navbar-darkglass.navbar-scrolled,.site-header{background:rgba(21,17,14,.96)}
.section-light,.section-dark,.footer{background:transparent;color:var(--text)}
.hero-title{font-family:var(--font-primary);font-weight:400}.panel,.stat-card,.cta-strip{background:var(--panel);border-color:var(--border);box-shadow:none}
.tag-pill,.pill{background:var(--accent-soft);color:var(--text);border-color:var(--border)}
/* Keep the older service and work templates legible in the shared theme. */
.site-header::before{background:#15110ef2;border-color:var(--border)}
.site-header .nav-link,.dropdown-link,.footer-link,.social-link,.footer-title,.field-label,.faq-q,.quote-text{color:var(--text)}
.dropdown,.card,.work,.step,.quote,.faq-item,.form,.visual-card,.proof-item,.metric,.case-media{background:var(--panel);border-color:var(--border);box-shadow:none}
.section-alt,.site-footer{background:#1b1612;border-color:var(--border)}
.btn-secondary,.tag,.chip,.pill-muted,.field-input{background:var(--panel2);color:var(--text);border-color:var(--border)}
.kicker,.card-link,.card-icon,.step-num{color:var(--accent-color)}
.quote-role,.proof-label,.metric-k,.footer-fine{color:var(--muted)}
.skip{background:var(--panel2)}
@media(max-width:720px){.header-inner{flex-wrap:wrap;padding:16px 10px}.site-header .brand{min-width:0}.site-header .nav{order:3;width:100%}.site-header .nav-list{gap:4px;flex-wrap:wrap}.site-header .nav-link{font-size:12px;padding:6px}.site-header .btn{font-size:11px;padding:10px}.case-hero{padding-top:170px}.site-header~main>.hero{padding-top:175px}}
.portfolio{margin:0;font-family:var(--font-primary);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
.portfolio h1,.portfolio h2,.portfolio h3,.portfolio p{margin:0}.portfolio a{text-decoration:none}.portfolio button,.portfolio input,.portfolio textarea{font:inherit}
.portfolio h1,.portfolio h3{font-family:var(--font-primary)}
.wrap{width:calc(100% - 88px);max-width:none;margin-inline:auto}
/* Fluid page shells for both existing template families. */
.container{width:100%;max-width:none;padding-inline:44px}
@media(max-width:1000px){.container{padding-inline:28px}.site-nav>.action{display:none}}
@media(max-width:720px){.container{padding-inline:20px}}
.portfolio .eyebrow{font-size:11px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:var(--accent-color);margin-bottom:19px}
.portfolio .serif{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-1.8px;line-height:1.06}
.accent{color:var(--accent-color)}.muted{color:var(--muted)}
.site-nav{height:96px;display:flex;align-items:center;justify-content:space-between;gap:30px;position:relative;z-index:20}
.identity{display:flex;align-items:flex-start;gap:12px;line-height:1.4}.identity b{display:block;font-size:15px}.identity small{font-size:11px;color:var(--muted)}.brand-dot{height:9px;width:9px;transform:rotate(45deg);background:var(--accent-color);margin-top:7px;flex-shrink:0}
.nav-links{display:flex;gap:28px;align-items:center;font-size:12px}.nav-links a{padding-block:12px}.action{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:14px 23px;border:1px solid #806954;border-radius:4px;font-size:12px;font-weight:700;transition:background .2s,color .2s;min-height:46px;cursor:pointer;background:transparent;color:var(--text)}.action:hover{border-color:var(--accent-color);color:var(--accent-color)}.action-primary{background:var(--accent-color);border-color:var(--accent-color);color:#211207}.action-primary:hover{background:#ffc18a;color:#211207}.action-small{padding:10px 18px;min-height:40px;color:var(--accent-color);border-color:#b56a31}.arrow{font-size:21px;line-height:1;font-weight:400}.menu-toggle{display:none}
.intro{position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid var(--border)}.intro:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 72% 50%,#482b19 0,transparent 55%)}
.intro-grid{min-height:545px;display:grid;grid-template-columns:1.05fr 1fr;position:relative;align-items:center}.intro-copy{position:relative;z-index:2;padding:38px 0 48px}.intro h1{font-size:clamp(40px,4.1vw,59px);font-weight:400;letter-spacing:-2px;line-height:1.08;max-width:620px}.intro h1 span{display:block}.intro-summary{max-width:430px;color:var(--muted);font-size:16px;margin-top:23px!important}.actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:26px}
.portrait-stage{height:100%;position:relative;align-self:stretch;min-height:540px}.portrait-stage img{position:absolute;bottom:-24px;left:5%;width:89%;height:100%;object-fit:contain;object-position:bottom;mask-image:linear-gradient(#000 76%,transparent 100%)}.portrait-note{position:absolute;right:0;top:58px;color:#baa28c;font-size:24px;line-height:1.1;letter-spacing:-1px;font-family:Georgia,serif}.portrait-note:after{content:"";display:block;width:65px;height:2px;background:var(--accent-color);margin-top:15px;transform:rotate(-13deg)}.portrait-caption{position:absolute;right:0;bottom:95px;font-size:9px;line-height:1.9;letter-spacing:1.2px;color:#cbbfb4;text-transform:uppercase}
.intro-facts{display:flex;gap:70px;padding:7px 0 32px;position:relative;z-index:2}.fact{display:flex;gap:17px;align-items:center;font-size:11px}.fact b{display:block;font-weight:500;color:var(--text)}.fact span{color:var(--muted)}.fact-symbol{font-size:25px!important;color:#ad9682!important}.available-dot{display:block;width:10px;height:10px;border-radius:50%;background:var(--accent-color);box-shadow:0 0 0 5px #ff963f15;margin:8px}
.client-strip{border-bottom:1px solid var(--border);padding:25px 0 32px}.client-strip>div>p{text-align:center;font-size:9px;letter-spacing:1.4px;color:var(--muted)}.client-names{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:27px;color:#c5b8ad}.client-names a{font-size:22px;font-weight:700;letter-spacing:-.7px}.client-names .client-serif{font-family:Georgia,serif;font-size:27px}.client-names small{font-size:11px;line-height:1.6}
.section{padding:54px 0;border-bottom:1px solid var(--border);scroll-margin-top:24px}.work-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:29px}.work-heading h2{font-size:54px}.slider-controls{display:flex;align-items:center;gap:13px}.slide-count{font-size:13px;color:var(--muted);margin-right:30px}.slide-count b{color:var(--text)}.round-button{width:39px;height:39px;border:1px solid #685444;border-radius:50%;color:#c0b2a6;background:transparent;cursor:pointer;font-size:21px;display:grid;place-items:center}.round-button:hover{border-color:var(--accent-color);color:var(--accent-color)}.round-button:last-child{border-color:#b56a31;color:var(--accent-color)}
.featured-project{display:grid;grid-template-columns:1.6fr 1fr;gap:58px;align-items:center;min-height:390px}.featured-project[hidden]{display:none}.laptop{padding:0 23px 18px;position:relative}.laptop-screen{border:2px solid #919795;background:#080a0b;border-radius:17px 17px 3px 3px;padding:17px 13px 12px;box-shadow:0 10px 35px #0005}.laptop-screen img{display:block;width:100%;height:310px;object-fit:cover;object-position:top;background:#fff}.laptop:after{content:"";position:absolute;bottom:5px;left:0;width:100%;height:15px;background:linear-gradient(#d5d7d8,#858a8e 45%,#333a40);border-radius:2px 2px 60% 60%}.project-info .project-category{font-size:11px;color:var(--muted);margin-bottom:16px}.project-info h3{font-size:28px;font-weight:400;line-height:1.2;letter-spacing:-.6px;margin-bottom:15px}.project-info p{color:var(--muted);font-size:14px}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:13px;font-weight:700;color:var(--accent-color)!important;margin-top:22px}
.work-row{display:grid;grid-template-columns:240px 1fr auto;align-items:center;gap:28px;border-top:1px solid var(--border);padding:17px 0}.work-row img{width:240px;height:105px;object-fit:cover;object-position:top;border-radius:3px}.work-row h3{font-size:20px;font-weight:500;margin-bottom:3px}.work-row p{font-size:12px;color:var(--muted);margin-top:4px}.work-row .text-link{margin-top:0}.project-archive{border-top:1px solid var(--border);margin-top:5px;padding-top:20px}.project-archive summary{cursor:pointer;color:var(--muted);font-size:12px}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding-top:22px}.archive-grid a{padding:16px;border:1px solid var(--border);font-size:13px}.archive-grid a span{color:var(--accent-color);float:right}
.philosophy-top{display:grid;grid-template-columns:1.45fr 1fr;gap:95px;align-items:center}.philosophy h2{font-size:49px}.philosophy-top>p{font-size:15px;color:var(--muted)}.principles{display:grid;grid-template-columns:repeat(3,1fr);margin-top:50px}.principle{display:flex;gap:25px;padding-right:32px}.principle+.principle{border-left:1px solid var(--border);padding-left:32px}.principle>span{font-size:11px;color:var(--accent-color)}.principle h3{font-size:20px;font-weight:500;margin-bottom:7px}.principle p{font-size:13px;color:var(--muted);max-width:180px}
.services-section{padding:32px 0}.service-row{display:grid;grid-template-columns:40px 1fr 1fr 20px;gap:26px;align-items:center;padding:22px 0;border-top:1px solid var(--border)}.service-row h3{font-size:19px;font-weight:500}.service-row p{font-size:13px;color:var(--muted);max-width:350px}.service-row>span{color:var(--accent-color)}.service-icon{width:31px;height:31px;stroke:var(--accent-color);fill:none;stroke-width:1.4}
.about-grid{display:grid;grid-template-columns:1fr 1.2fr .9fr;gap:48px;align-items:start}.about-grid h2{font-size:43px}.about-copy{padding-top:32px}.about-copy p{font-size:14px;color:var(--muted)}.about-stats{border-left:1px solid #8a542c;padding-left:48px;display:grid;gap:17px}.about-stats b{display:block;font-size:26px;line-height:1.1;font-weight:400;color:var(--accent-color)}.about-stats span{font-size:11px;color:var(--muted)}
.feedback{padding:34px 0}.feedback-layout{display:grid;grid-template-columns:65px 1.5fr .8fr auto;gap:28px;align-items:center}.quote-avatar{width:62px;height:62px;border:1px solid #65432b;border-radius:50%;display:grid;place-items:center;background:#302116;color:var(--accent-color);font-family:Georgia,serif;font-size:24px}.feedback blockquote{font-size:22px;line-height:1.4;margin:0;letter-spacing:-.4px}.quote-person{font-size:12px}.quote-person small{display:block;color:var(--muted);margin-top:3px}.quote-mark{color:var(--accent-color);font-size:21px;letter-spacing:3px;margin-top:7px}.feedback-layout[hidden]{display:none}.feedback-controls{display:flex;gap:12px;margin-top:22px;justify-content:flex-end}
.contact-section{background:radial-gradient(ellipse at 20% 90%,#42291b,transparent 65%),linear-gradient(110deg,#251b14,#15110e);padding:64px 0}.contact-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:75px}.contact-grid h2{font-size:48px;max-width:440px}.contact-copy{border-left:1px solid #584536;padding-left:58px}.contact-copy>p{font-size:13px;max-width:300px;color:var(--muted)}.contact-copy .action{margin-top:22px}.contact-details{margin-top:30px;border-top:1px solid var(--border);padding-top:20px}.contact-details summary{font-size:13px;color:var(--muted);cursor:pointer}.contact-form{max-width:720px;padding-top:25px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{display:grid;gap:8px;font-size:12px}.contact-form input,.contact-form textarea{width:100%;border:1px solid #685444;background:#1b1612;color:var(--text);padding:12px;border-radius:3px}.contact-form .full{grid-column:1/-1}.form-note{color:var(--muted);font-size:12px}.contact-form button{justify-self:start}
.portfolio-footer{padding:36px 0 25px;border-top:1px solid var(--border)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-brand b{font-size:13px}.footer-brand p{font-size:11px;color:var(--muted)}.footer-nav{display:flex;gap:23px;font-size:11px}.footer-email{font-size:11px;color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;margin-top:37px;font-size:10px;color:var(--muted)}.footer-bottom span:last-child:after{content:"";display:inline-block;background:var(--accent-color);width:25px;height:1px;vertical-align:middle;margin-left:12px}
@media(min-width:1500px){.intro-grid{min-height:600px}.portrait-stage{min-height:590px}}
@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.nav-links{gap:18px}.intro h1{font-size:45px}.portrait-note{font-size:20px;right:-5px}.intro-facts{gap:35px}.featured-project{gap:30px;grid-template-columns:1.45fr 1fr}.laptop-screen img{height:240px}.featured-project{min-height:320px}.work-row{grid-template-columns:180px 1fr auto;gap:22px}.work-row img{width:180px;height:90px}.philosophy-top{gap:50px}.philosophy h2{font-size:41px}.about-grid{gap:25px}.about-stats{padding-left:25px}.feedback-layout{grid-template-columns:55px 1.5fr .8fr;gap:20px}.feedback blockquote{font-size:19px}.contact-grid{gap:45px}.footer-nav{gap:13px}}
@media(max-width:720px){.wrap{width:calc(100% - 40px)}.site-nav{height:82px;gap:12px}.site-nav>.action{display:none}.menu-toggle{display:block;background:transparent;color:var(--text);border:1px solid #685444;border-radius:4px;padding:8px 12px;font-size:12px}.nav-links{display:none;position:absolute;left:0;right:0;top:70px;background:#2a1e15;border:1px solid var(--border);padding:15px 22px;box-shadow:0 15px 25px #0005}.nav-links.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.intro-grid{display:flex;flex-direction:column;min-height:0;align-items:stretch}.intro-copy{padding:35px 0 0}.intro h1{font-size:clamp(38px,8.7vw,58px);letter-spacing:-1.6px}.intro-summary{max-width:440px;font-size:15px}.portrait-stage{min-height:370px;height:370px;margin-top:10px}.portrait-stage img{height:410px;width:78%;left:12%;bottom:-25px}.portrait-note{right:3%;top:42px}.portrait-caption{bottom:52px}.intro-facts{display:grid;grid-template-columns:1fr 1fr;gap:23px;padding-bottom:28px}.fact:last-child{grid-column:1/-1}.client-names{flex-wrap:wrap;justify-content:center;gap:20px 32px}.client-names a{font-size:18px}.client-names small{display:none}.section{padding:38px 0}.work-heading h2{font-size:41px}.portfolio .eyebrow{font-size:10px;margin-bottom:15px}.slide-count{margin-right:2px;font-size:11px}.slider-controls{gap:8px}.round-button{width:34px;height:34px}.featured-project{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.laptop-screen img{height:260px}.project-info h3{font-size:26px;max-width:400px}.project-info p{max-width:430px}.work-row{grid-template-columns:115px 1fr;gap:16px}.work-row img{width:115px;height:85px}.work-row h3{font-size:17px}.work-row> .text-link{grid-column:2;font-size:12px;margin-top:-6px}.work-row p{font-size:11px}.archive-grid{grid-template-columns:1fr 1fr}.philosophy-top{grid-template-columns:1fr;gap:23px}.philosophy h2{font-size:41px}.principles{grid-template-columns:1fr;gap:25px;margin-top:30px}.principle+.principle{border-left:0;border-top:1px solid var(--border);padding:23px 0 0}.principle p{max-width:none}.service-row{grid-template-columns:30px 1fr 16px;gap:17px}.service-row h3{font-size:17px}.service-row p{grid-column:2;grid-row:2}.service-row>.arrow{grid-column:3;grid-row:1}.about-grid{grid-template-columns:1fr;gap:22px}.about-grid h2{font-size:40px}.about-copy{padding:0}.about-stats{display:flex;flex-wrap:wrap;gap:25px;border-left:0;border-top:1px solid var(--border);padding:25px 0 0}.about-stats b{font-size:23px}.feedback-layout{grid-template-columns:48px 1fr;gap:18px}.quote-avatar{height:48px;width:48px;font-size:20px}.feedback blockquote{font-size:20px}.quote-person{grid-column:2}.feedback-controls{margin-top:0}.contact-grid{grid-template-columns:1fr;gap:26px}.contact-grid h2{font-size:42px}.contact-copy{border-left:0;padding-left:0}.contact-copy>p{max-width:400px}.contact-form{grid-template-columns:1fr}.contact-form .full{grid-column:auto}.footer-top{align-items:flex-start;flex-direction:column;gap:22px}.footer-nav{flex-wrap:wrap;gap:22px}.footer-bottom{gap:20px;font-size:9px}.laptop{padding-inline:12px}.laptop-screen{padding:10px 8px}.contact-section{padding:45px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}
/* Motion and scroll-driven featured-work accordion. */
@keyframes portrait-float{0%,100%{transform:translateY(0) rotate(-.4deg)}50%{transform:translateY(-13px) rotate(.4deg)}}
.portrait-stage img{animation:portrait-float 7s ease-in-out infinite;transform-origin:50% 80%}
.work-accordion-heading{margin:0}
.work-accordion-toggle{width:100%;display:flex;align-items:center;gap:24px;text-align:left;border:0;border-top:1px solid var(--border);background:transparent;color:var(--text);padding:20px 0;cursor:pointer;font-size:20px}
.work-accordion-toggle>.accent{font-size:12px}.accordion-symbol{margin-left:auto;color:var(--accent-color);transition:transform .6s}
.is-active .accordion-symbol{transform:rotate(45deg)}
.work-accordion-panel{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .65s cubic-bezier(.22,1,.36,1),visibility .65s}
.is-active .work-accordion-panel{grid-template-rows:1fr;visibility:visible}
.work-accordion-clip{min-height:0;overflow:hidden}
.work-accordion .featured-project{padding:12px 0 26px;margin:0;min-height:0}
.work-accordion .laptop-screen{height:auto;aspect-ratio:16 / 11;overflow:hidden;padding:0;border:12px solid #080a0b;outline:2px solid #919795;border-radius:12px 12px 2px 2px}
.work-accordion .laptop-screen img{height:auto;width:100%;max-width:none;object-fit:initial;transform:translateY(0);transition:transform 1s ease-out}
.work-accordion .laptop:focus .laptop-screen img{transform:translateY(var(--preview-travel,0px));transition-duration:var(--preview-duration,5s);transition-timing-function:linear}
@media(hover:hover){.work-accordion .laptop:hover .laptop-screen img{transform:translateY(var(--preview-travel,0px));transition-duration:var(--preview-duration,5s);transition-timing-function:linear}}
.work-scroll-track{padding-bottom:0}.work-accordion{position:relative}
@media(max-width:720px){.work-accordion-toggle{padding:14px 0;font-size:17px}.work-accordion .featured-project{gap:14px;padding-bottom:18px}.work-accordion .laptop-screen{height:auto;aspect-ratio:16 / 11;border-width:8px}.work-accordion .project-info h3{font-size:22px}.work-accordion .project-info p{font-size:12px}.work-accordion .project-category{margin-bottom:8px}.work-accordion .text-link{margin-top:12px}}

@media(prefers-reduced-motion:reduce){.portrait-stage img{animation:none}.work-accordion .laptop-screen{overflow-y:auto}.work-accordion .laptop-screen img{transform:none!important;transition:none}}
/* Original client logos, continuously travelling from right to left. */
.logo-marquee{overflow:hidden;margin-top:24px;width:100%;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
.logo-track{display:flex;width:max-content;animation:client-logos-left 30s linear infinite}
.logo-group{display:flex;align-items:center;justify-content:space-around;gap:32px;padding-right:32px;flex-shrink:0;min-width:calc(100vw - 88px)}
.client-logo{display:flex;align-items:center;justify-content:center;flex:0 0 160px;height:84px;padding:10px 16px;background:transparent}
.client-logo img{display:block;width:100%;height:64px;object-fit:contain;filter:grayscale(1) invert(1);mix-blend-mode:screen;opacity:.85}
@keyframes client-logos-left{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:720px){.logo-group{gap:18px;padding-right:18px;min-width:calc(100vw - 40px)}.client-logo{flex-basis:135px;height:72px}.client-logo img{height:52px}}
@media(prefers-reduced-motion:reduce){.logo-track{animation:none;width:100%}.logo-group{min-width:0;width:100%;flex-wrap:wrap;padding:0;gap:16px}.logo-group[aria-hidden]{display:none}.client-logo{flex:1 1 135px}}
/* Clear archive action, philosophy mark and service imagery. */
.project-archive{padding-top:28px;padding-bottom:8px}
.project-archive summary{display:flex;align-items:center;justify-content:space-between;gap:32px;width:fit-content;min-width:290px;max-width:100%;padding:18px 24px;background:var(--accent-color);color:#211207;border:1px solid var(--accent-color);border-radius:5px;font-size:16px;font-weight:700;list-style:none;box-shadow:0 8px 26px #ff963f18}
.project-archive summary::-webkit-details-marker{display:none}
.project-archive summary:hover{background:#ffb673}.archive-toggle-icon{font-size:26px;line-height:1;transition:transform .25s}.project-archive[open] .archive-toggle-icon{transform:rotate(45deg)}
.philosophy-label{display:flex;align-items:center;gap:12px}.philosophy-label img{display:block;flex-shrink:0}
.service-row{position:relative}.service-row:hover,.service-row:focus-visible{z-index:3}
.service-preview{position:absolute;right:7%;top:50%;width:clamp(220px,25vw,360px);height:230px;padding:7px;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 20px 50px #0008;opacity:0;visibility:hidden;transform:translateY(-45%) rotate(-3deg) scale(.94);transition:opacity .25s,transform .35s,visibility .25s;pointer-events:none;z-index:5}
.service-preview img{width:100%;height:100%;object-fit:cover;object-position:top;border-radius:4px;display:block}
.service-row:hover .service-preview,.service-row:focus-visible .service-preview{opacity:1;visibility:visible;transform:translateY(-50%) rotate(2deg) scale(1)}
.feedback-layout:not([hidden]){animation:feedback-enter .65s ease both}
@keyframes feedback-enter{from{opacity:0;transform:translateX(22px)}to{opacity:1;transform:translateX(0)}}
.whatsapp-action{display:flex;width:fit-content;margin-top:14px!important;gap:12px;color:var(--accent-color);border-color:var(--accent-color)}.whatsapp-action svg{width:21px;height:21px;fill:currentColor}
@media(max-width:720px){.service-preview{right:24px;width:220px;height:150px}.project-archive summary{min-width:0;width:100%;font-size:15px}}
@media(hover:none){.service-row:hover .service-preview{visibility:hidden;opacity:0}.service-row:focus-visible .service-preview{visibility:visible;opacity:1}}
@media(prefers-reduced-motion:reduce){.feedback-layout:not([hidden]){animation:none}.service-preview,.archive-toggle-icon{transition:none}}
/* Supporting pages share the homepage's editorial design system. */
.inner-page{--muted2:var(--muted);background:#15110e}
.inner-page .site-nav{border-bottom:1px solid var(--border)}
.inner-page .site-nav .nav-links a{font-family:var(--font-primary);font-size:12px;font-weight:400;line-height:1.55}
.inner-page .nav-links a[aria-current="page"]{color:var(--accent-color)}
.inner-page .site-nav .identity small{display:block}
.inner-page main>.hero,.inner-page main>.case-hero{padding:64px 0 48px!important;background:radial-gradient(ellipse at 90% 20%,#44271555,transparent 60%);border-bottom:1px solid var(--border)}
.inner-page main h1.hero-title,.inner-page main .case-title{font-family:var(--font-primary);font-size:clamp(36px,4.4vw,64px)!important;line-height:1.08;font-weight:400;letter-spacing:-1.8px;max-width:1100px;margin:0 0 24px}
.inner-page .hero-subtitle,.inner-page .hero-sub,.inner-page .case-sub,.inner-page .hero .js-hero-line.text-muted-2{font-family:var(--font-primary);font-size:17px;line-height:1.65;font-weight:400;max-width:760px}
.inner-page .hero-kicker,.inner-page .kicker{font-family:var(--font-primary);font-size:11px;font-weight:700;letter-spacing:1.8px;color:var(--accent-color);text-transform:uppercase;margin-bottom:20px}
.inner-page main h2:not(.eyebrow){font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.8px;line-height:1.15;margin-bottom:20px}
.inner-page main h3,.inner-page main h4{font-family:var(--font-primary);font-weight:500;line-height:1.3;margin-bottom:12px}
.inner-page main p{margin-bottom:18px;line-height:1.7}.inner-page main li{line-height:1.8}
.inner-page .section-pad,.inner-page .case-body,.inner-page main>.section{padding:52px 0;border-bottom:1px solid var(--border)}
.inner-page .section-light,.inner-page .section-alt{background:transparent;backdrop-filter:none}
.inner-page .panel,.inner-page .card,.inner-page .stat-card,.inner-page .step,.inner-page .quote,.inner-page .faq-item{background:#1b1612;border:1px solid var(--border);border-radius:5px;box-shadow:none;backdrop-filter:none}
.inner-page .panel:hover,.inner-page .card:hover{background:#211a14;border-color:#806954;box-shadow:none;transform:none!important}
.inner-page .btn{font-family:var(--font-primary);font-size:12px;line-height:1.5;font-weight:700;border-radius:4px;min-height:46px;padding:13px 23px;box-shadow:none}
.inner-page .btn-gradient,.inner-page .btn-primary{background:var(--accent-color);color:#211207!important}
.inner-page .btn-outline-glow,.inner-page .btn-secondary{background:transparent;color:var(--text);border:1px solid #806954!important}
.inner-page .icon-pill,.inner-page .card-icon{background:transparent;border:1px solid var(--border);border-radius:4px;color:var(--accent-color)}
.inner-page .hero-media{max-height:530px;border-radius:5px;background:radial-gradient(ellipse at center,#442715,transparent);box-shadow:none}
.inner-page .hero-media img{height:530px;object-fit:contain;object-position:bottom}.inner-page .float-card{background:#201914ed;border-radius:4px;box-shadow:none}
.inner-page .project-thumb{border-radius:5px;aspect-ratio:16/10;height:auto;overflow:hidden;background:var(--panel)}
.inner-page .project-thumb img{display:block;width:100%;height:auto;min-height:100%;object-fit:cover;object-position:top}
.inner-page .cta-strip{background:transparent;border:1px solid var(--border);border-radius:5px;box-shadow:none}
.inner-page .toc{top:24px;border-left:2px solid var(--accent-color)}
.inner-page .table{--bs-table-bg:transparent;--bs-table-color:var(--text);--bs-table-border-color:var(--border);--bs-table-striped-bg:#201914;--bs-table-striped-color:var(--text);color:var(--text)}
.inner-page .table thead th{background:#2a211b;color:var(--text);border-color:var(--border)}
.inner-page .table-compare{background:var(--panel);border-color:var(--border);box-shadow:none}
.inner-page .table-compare tbody th[scope="row"]{color:var(--text);background:var(--panel);font-weight:700;opacity:1;padding:1.5rem;border-bottom:1px solid var(--border)}
.inner-page .table-compare .table{margin-bottom:0}
.inner-page .tag,.inner-page .tag-pill,.inner-page .chip{background:transparent;border:1px solid var(--border);border-radius:4px;color:var(--muted);font-size:11px}
.inner-page .contact-section{margin-top:0}.inner-page .contact-section h2{font-size:48px}.inner-page .contact-section p.eyebrow{line-height:1.55}.inner-page .contact-copy p{font-size:13px;line-height:1.55;margin-bottom:0}
.inner-page .portfolio-footer{background:transparent}.inner-page .portfolio-footer .footer-brand{font-weight:400;letter-spacing:normal}.inner-page .portfolio-footer .footer-bottom{border:0;padding-top:0}
.inner-page .portfolio-footer a{font-weight:400}.inner-page .portfolio-footer p{margin:0}
.inner-page .hero-bg{display:none}.inner-page .prose{max-width:900px}
@media(max-width:720px){.inner-page main>.hero,.inner-page main>.case-hero{padding:36px 0!important}.inner-page main h1.hero-title,.inner-page main .case-title{font-size:36px!important;letter-spacing:-1px}.inner-page .section-pad,.inner-page .case-body{padding:34px 0}.inner-page .hero-media,.inner-page .hero-media img{height:390px}.inner-page .contact-section h2{font-size:40px}.inner-page .site-nav{padding-inline:0}.inner-page .table-responsive{overflow-x:auto}.inner-page .case-grid,.inner-page .hero-grid{grid-template-columns:1fr}}
.projects-intro{padding-block:65px 52px}.projects-intro h1{font-size:clamp(38px,4.5vw,66px);font-weight:400;line-height:1.08;letter-spacing:-1.8px;margin-bottom:25px}.projects-intro>p:last-child{max-width:650px;font-size:17px;color:var(--muted)}
.projects-page .work-accordion-toggle{padding-block:32px}
.archive-link{display:flex;align-items:center;justify-content:space-between;gap:32px;width:fit-content;max-width:100%;padding:18px 24px;background:var(--accent-color);color:#211207!important;border-radius:5px;font-size:16px;font-weight:700}.archive-link:hover{background:#ffb673}.archive-link>span{font-size:24px}
.projects-page .laptop-screen img{min-height:100%;object-fit:cover}
@media(min-width:1001px) and (max-width:1200px){.site-nav>.action{display:none}}
@media(max-width:720px){.projects-intro{padding-block:36px}.projects-page .work-accordion-toggle{padding-block:23px}.projects-page .work-heading h2{font-size:30px}.projects-page .work-heading{gap:18px;flex-wrap:wrap}.archive-link{width:100%;font-size:15px}}
/* Projects hero: introduction beside the creative workspace image. */
.projects-intro{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(28px,5vw,80px);align-items:center}
.projects-intro-copy>p:last-child{max-width:650px;font-size:17px;color:var(--muted);line-height:1.65}
.projects-hero-media{overflow:hidden;border:1px solid var(--border);border-radius:8px;background:var(--panel);box-shadow:0 20px 55px #0003}
.projects-hero-media img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
@media(max-width:850px){.projects-intro{grid-template-columns:1fr;gap:28px}.projects-hero-media{width:100%}}
/* Supporting-page visuals with consistent orange line icons. */
.editorial-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(28px,5vw,76px);align-items:center}
.editorial-media{position:relative;overflow:hidden;border-radius:7px;border:1px solid var(--border);background:var(--panel);isolation:isolate}
.editorial-media>img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;animation:editorial-drift 16s ease-in-out infinite alternate}
.editorial-caption{position:absolute;bottom:0;left:0;right:0;display:flex;gap:14px;align-items:center;padding:35px 22px 20px;background:linear-gradient(transparent,#15110ef2);color:var(--text);font-size:13px}
.visual-icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:42px;height:42px;color:var(--accent-color);border:1px solid #ff963f40;border-radius:6px;background:#241b13}
.visual-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.service-card-image{overflow:hidden;aspect-ratio:16/10;margin-bottom:20px;border-radius:4px;background:var(--panel)}
.service-card-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .6s ease}
.visual-page .panel>.visual-icon{margin-bottom:16px}.visual-page .panel:hover .service-card-image img,.visual-page .panel:focus-within .service-card-image img{transform:scale(1.045)}
.engagement-label{display:flex;align-items:center;gap:14px;min-width:190px}.engagement-label .visual-icon{width:36px;height:36px}.engagement-label svg{width:23px;height:23px}
.article-card-image{position:relative;display:block;overflow:hidden;aspect-ratio:16/9;margin-bottom:24px;border-radius:4px;background:var(--panel)}
.article-card-image>img{width:100%;height:100%;display:block;object-fit:cover;object-position:top;transition:transform .6s ease}
.article-card-image:hover>img,.article-card-image:focus-visible>img{transform:scale(1.05)}
.article-image-label{position:absolute;inset:auto 0 0;display:flex;align-items:center;gap:12px;padding:35px 16px 14px;background:linear-gradient(transparent,#15110ef5);color:var(--text);font-size:12px}.article-image-label>span:last-child{margin-left:auto;font-size:20px}
@keyframes editorial-drift{from{transform:scale(1)}to{transform:scale(1.045) translateY(-4px)}}
@keyframes visual-arrive{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.visual-arrived{animation:visual-arrive .7s ease both}
@media(max-width:850px){.editorial-hero-grid{grid-template-columns:1fr}.editorial-media>img{aspect-ratio:3/2}.editorial-caption{padding-inline:16px}.article-image-label{font-size:11px}.engagement-label{min-width:175px}}
@media(prefers-reduced-motion:reduce){.editorial-media>img,.visual-arrived{animation:none}.service-card-image img,.article-card-image>img{transition:none;transform:none!important}}
/* Font-independent arrows: explicit SVG geometry for Safari and other browsers. */
svg.ui-arrow{display:inline-block;width:20px;height:20px;min-width:20px;flex:0 0 20px;vertical-align:middle;overflow:visible;fill:none!important;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.round-button svg.ui-arrow{display:block;margin:auto}
.arrow:has(>svg.ui-arrow){display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}
.footer-bottom svg.ui-arrow,.footer-email svg.ui-arrow,.about-stats svg.ui-arrow{width:13px;height:13px;min-width:13px;flex-basis:13px}
/* Bordered client-logo cells, matching the reference strip. */
@media(max-width:720px){.portfolio .intro .portrait-note,.portfolio .intro .portrait-caption,.portfolio .intro .intro-facts{display:none}}
.logo-marquee{border-top:1px solid var(--border);border-bottom:1px solid var(--border);border-left:0;border-right:0;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 8%,#000 92%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,#000 8%,#000 92%,transparent 100%)}
.logo-group{gap:0;padding-right:0;justify-content:stretch;width:calc(100vw - 90px);min-width:640px}
.client-logo{flex:1 0 160px;border-right:1px solid var(--border);height:92px;padding:14px 24px}
.client-logo img{max-width:128px;height:64px}
@media(max-width:720px){.logo-group{width:540px;min-width:540px;gap:0;padding-right:0}.client-logo{flex-basis:135px;height:80px;padding:14px 18px}.client-logo img{max-width:105px;height:52px}}
@media(prefers-reduced-motion:reduce){.logo-group{width:100%;min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.client-logo{min-width:0}.client-logo:last-child{border-right:0}}
@media(prefers-reduced-motion:reduce) and (max-width:600px){.logo-group{grid-template-columns:repeat(2,minmax(0,1fr))}.client-logo:nth-child(2){border-right:0}.client-logo:nth-child(-n+2){border-bottom:1px solid var(--border)}}
