:root{--paper:#f5f5ef;--ink:#191d19;--muted:#656960;--line:#d9ddd2;--lime:#c7ef6a;--lime-dark:#91b93c;--white:#fff;--font:'DM Sans',sans-serif;--display:'Manrope',sans-serif;--shell:1280px}
*,*::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(--font);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}img{display:block;max-width:100%;height:auto}svg{display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);font-weight:650;line-height:1.12;letter-spacing:-.055em}h2{font-size:clamp(38px,4.5vw,62px);margin-bottom:0}h3{font-size:26px}p{margin-bottom:0}::selection{background:var(--lime);color:var(--ink)}:focus-visible{outline:3px solid #496c14;outline-offset:5px}.shell{max-width:var(--shell);width:calc(100% - 112px);margin-inline:auto}.section{padding-block:112px}.eyebrow,.small-label,.project-number,.art-caption,.studio-art-label,.studio-coordinate,.process-deliverable{font-size:11px;font-weight:650;letter-spacing:.095em;text-transform:uppercase;line-height:1.5}.eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:26px}.section-index{color:var(--muted);margin-bottom:22px}.status-dot{display:inline-block;flex-shrink:0;width:7px;height:7px;border-radius:50%;background:#6c8f36;box-shadow:0 0 0 4px #85ad4120}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:55px;padding:14px 23px;border-radius:5px;font-size:14px;font-weight:600;line-height:1.4;transition:background .2s,transform .2s,box-shadow .2s}.button span[aria-hidden]{font-size:23px;line-height:1}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:var(--paper);border:1px solid var(--ink)}.button-dark:hover{background:#333d2d;box-shadow:0 7px 20px #1c271519}.button-outline{border:1px solid #bbc0b4;background:transparent}.button-outline:hover{background:#e8ecdf}.text-link{display:inline-flex;align-items:center;gap:22px;padding:5px 0;border-bottom:1px solid currentColor;font-weight:550;font-size:14px;line-height:1.5;background:none;text-align:left}.text-link span[aria-hidden]{font-size:20px;transition:transform .2s}.text-link:hover span[aria-hidden]{transform:translate(3px,-2px)}.sr-only{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:15px;top:-80px;padding:12px 20px;background:var(--lime);z-index:1000}.skip-link:focus{top:12px}[hidden]{display:none!important}
/* Header */
.site-header{position:sticky;top:0;z-index:50;background:#f5f5eff2;backdrop-filter:blur(18px);border-bottom:1px solid #d9ddd280}.header-inner{height:92px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:inline-flex;align-items:center;gap:5px;font-family:var(--display);font-size:28px;font-weight:800;letter-spacing:-1.5px;line-height:1}.brand-icon{width:34px;height:34px;margin-right:3px}.brand-period{color:#7f9e45;margin-left:-3px}.brand [data-brand]{text-transform:lowercase}.main-nav{display:flex;gap:34px;align-items:center;font-size:13px;font-weight:550}.main-nav>a{transition:color .2s}.main-nav>a:hover{color:#658b28}.main-nav .nav-contact{display:flex;align-items:center;gap:24px;padding:12px 17px;border:1px solid #c2c8b8;border-radius:5px;margin-left:6px}.nav-contact span{font-size:20px}.menu-toggle{display:none}
/* Hero */
.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:34px;align-items:center;padding-top:74px;padding-bottom:70px;min-height:715px}.hero .eyebrow{font-size:10px;letter-spacing:.06em;white-space:nowrap}.hero h1{font-size:clamp(57px,5.65vw,83px);line-height:1.075;letter-spacing:-.066em;font-weight:650;margin-bottom:30px}.highlight-word{position:relative;white-space:nowrap;z-index:1}.highlight-word svg{position:absolute;left:0;bottom:-10px;width:100%;height:20px;z-index:-1;stroke:var(--lime);stroke-width:8;fill:none;stroke-linecap:round}.hero-description{font-size:16px;line-height:1.75;color:var(--muted);max-width:440px}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:31px}.hero-actions .text-link{font-size:12px;gap:10px;border:0}.hero-note{display:flex;gap:15px;align-items:center;margin-top:41px;color:var(--muted);font-size:11px;line-height:1.6}.hero-note strong{font-weight:500;color:var(--ink)}.mini-brackets{font-size:30px;font-family:var(--display);color:#839864;letter-spacing:-5px;padding-right:5px}.hero-art{position:relative;width:100%;height:511px;background:#e5e9dd;border:1px solid #d9dfcf;border-radius:9px;isolation:isolate;overflow:hidden}.art-grid{position:absolute;inset:0;background-image:linear-gradient(#9baa8b24 1px,transparent 1px),linear-gradient(90deg,#9baa8b24 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(120deg,#000,transparent)}.art-caption{position:absolute;left:24px;top:22px;font-size:9px;color:#57634c}.floating-label{position:absolute;z-index:5;background:#f8faf3;border:1px solid #d5dcc9;padding:10px 14px;display:flex;align-items:center;gap:9px;border-radius:4px;font-size:10px;box-shadow:0 7px 18px #2a3d1610}.label-top{top:55px;right:23px}.hero-screen{position:absolute;border-radius:6px;overflow:hidden;background:var(--white);border:1px solid #b6bfa8;box-shadow:0 25px 35px #25351424}.browser-bar{height:27px;background:#f9faf6;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 12px;font-size:7px;color:#73786b;letter-spacing:.02em;border-bottom:1px solid #e4e7de}.window-dots{display:flex;gap:3px}.window-dots i{width:4px;height:4px;border-radius:50%;background:#c4cabb}.browser-bar>span:nth-child(2){overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.screen-back{width:82%;top:85px;left:49px;transform:rotate(7deg)}.screen-front{width:86%;top:195px;left:24px;transform:rotate(-5deg);z-index:3}.hero-screen img{width:100%;height:auto}.art-spark{width:87px;height:87px;border-radius:50%;background:var(--lime);position:absolute;right:12px;bottom:85px;z-index:4;box-shadow:0 10px 24px #52683b21}.art-spark svg{width:100%;height:100%;padding:18px;stroke:var(--ink);stroke-width:6}.art-foot{position:absolute;bottom:20px;left:24px;right:23px;display:flex;justify-content:space-between;align-items:center;font-size:9px;line-height:1.8;letter-spacing:.03em}.art-foot strong{font-size:11px;font-weight:550;letter-spacing:0}.circle-arrow{display:grid;place-items:center;border:1px solid #a9b69a;border-radius:50%;width:32px;height:32px;font-size:22px;transition:background .2s}.art-foot:hover .circle-arrow{background:var(--lime)}.capabilities-strip{border-block:1px solid var(--line);padding-block:24px}.strip-inner{display:flex;justify-content:space-between;align-items:center;gap:18px;font-size:12px;font-weight:550}.strip-cross{font-size:20px;line-height:1;color:#859a63}
/* Projects */
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:52px}.heading-aside{font-size:14px;line-height:1.8;color:var(--muted);max-width:305px;padding-bottom:6px}.serif-accent{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-.055em}.projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.project-visual{position:relative;width:100%;aspect-ratio:1.35;overflow:hidden;border-radius:7px;display:block;text-align:left;padding:0}.project-adventure{background:#dce4d2}.project-airport{background:#dfe3ec}.project-number{position:absolute;top:23px;left:26px;font-size:9px;color:#5f6a55;z-index:1}.project-airport .project-number{color:#5b6477}.project-browser{position:absolute;left:9%;right:9%;top:24%;border-radius:5px;overflow:hidden;box-shadow:0 25px 34px #18241524;border:1px solid #9aa98a;transition:transform .45s}.project-airport .project-browser{border-color:#a6afc3;top:21%;transform:rotate(-3deg)}.project-adventure .project-browser{transform:rotate(3deg)}.project-visual:hover .project-browser{transform:rotate(0) translateY(-8px)}.project-browser .browser-bar{height:24px}.project-browser img{width:100%}.project-open{position:absolute;right:22px;bottom:22px;display:grid;place-items:center;width:39px;height:39px;border-radius:50%;background:#fff9;font-size:23px;transition:background .2s}.project-visual:hover .project-open{background:var(--ink);color:var(--paper)}.project-meta{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-top:23px}.project-meta h3{font-size:24px;letter-spacing:-.04em;margin-bottom:7px}.project-meta p{color:var(--muted);font-size:12px;line-height:1.6}.project-case{white-space:nowrap;background:none;padding:4px 0;font-size:11px;display:flex;gap:10px;align-items:center}.project-case span{font-size:20px}.project-case:hover{text-decoration:underline;text-underline-offset:4px}.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:19px}.tags span{border:1px solid #d9ddd1;border-radius:20px;padding:4px 11px;font-size:9px;color:var(--muted)}.projects-bottom{border-top:1px solid var(--line);padding-top:25px;margin-top:41px;display:flex;align-items:center;gap:12px;font-size:12px;color:var(--muted)}.projects-bottom .text-link{margin-left:auto;font-size:12px;color:var(--ink)}
/* Services */
.services-section{background:#eaece3}.service-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:stretch}.service-tabs{display:flex;flex-direction:column}.service-tabs [role=tab]{display:flex;align-items:center;gap:22px;padding:23px 10px 23px 0;text-align:left;background:none;border-bottom:1px solid #cdd3c1;font-family:var(--display);font-size:clamp(17px,1.6vw,22px);font-weight:550;letter-spacing:-.035em;min-height:79px;transition:padding .2s,background .2s}.service-order{font:10px var(--font);color:#8b9381;letter-spacing:.02em;flex-shrink:0}.service-arrow{margin-left:auto;font-size:24px;color:#8b9381;opacity:.5}.service-tabs [aria-selected=true]{background:var(--lime);padding-left:18px;padding-right:18px;border-radius:4px;border-color:var(--lime)}.service-tabs [aria-selected=true] .service-order,.service-tabs [aria-selected=true] .service-arrow{color:var(--ink);opacity:1}.service-tabs button:hover:not([aria-selected=true]){padding-left:12px;background:#e0e4d6}.service-panel{background:var(--paper);border:1px solid #dfe3d6;border-radius:8px;padding:32px 35px;display:flex;flex-direction:column;min-height:482px}.service-panel-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:34px}.service-symbol{font-family:var(--display);font-size:32px;line-height:1;width:50px;height:50px;display:grid;place-items:center;border:1px solid #cbd6bc;border-radius:10px;background:#edf1e4}.service-panel .small-label{font-size:9px;color:#818b76;text-align:right}.service-panel h3{font-size:30px;margin-bottom:15px;max-width:370px}.service-panel>p{font-size:13px;line-height:1.8;color:var(--muted);min-height:70px}.check-list{list-style:none;padding:0;margin:23px 0 28px}.check-list li{position:relative;padding-left:22px;font-size:12px;line-height:1.65;margin-bottom:11px}.check-list li::before{content:'✓';position:absolute;left:0;top:0;color:#697d4b;font-weight:600}.service-panel .text-link{align-self:flex-start;margin-top:auto;font-size:12px}
/* Interactive lab */
.lab-section{background:var(--ink);color:var(--paper)}.lab-section .section-index{color:#a9b09d}.lab-section .heading-aside{color:#a3ab9a}.lab-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:65px;align-items:center}.demo-label{display:inline-flex;align-items:center;gap:8px;font-size:10px;color:var(--lime);border:1px solid #48513c;padding:5px 10px;border-radius:20px;margin-bottom:22px}.demo-label .status-dot{background:var(--lime);width:5px;height:5px;box-shadow:none}.lab-copy h3{font-size:43px;font-weight:550;letter-spacing:-.055em;margin-bottom:20px}.lab-copy>p{font-size:13px;line-height:1.85;color:#aeb5a5;max-width:300px}.segmented{display:flex;background:#272e24;border:1px solid #3b4634;padding:4px;border-radius:5px;margin:26px 0 17px;gap:3px;max-width:308px}.segmented button{background:transparent;color:#c1c8b8;font-size:11px;padding:10px 13px;flex:1;border-radius:3px;white-space:nowrap;transition:color .2s,background .2s}.segmented button.active{background:var(--lime);color:var(--ink)}.lab-copy .lab-detail{font-size:11px;min-height:60px;margin-bottom:23px}.lab-copy .text-link{color:var(--lime);font-size:11px;gap:15px}.demo-stage{position:relative;min-width:0;background:#252e21;border:1px solid #414a38;border-radius:8px;padding:28px}.demo-window{background:#fff;border-radius:6px;color:var(--ink);overflow:hidden;box-shadow:0 20px 25px #0002}.demo-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 21px;border-bottom:1px solid #e3e5de}.demo-header>span:nth-child(2){font-size:6px;letter-spacing:.08em;color:#7c8472}.demo-header>span:last-child{font-size:20px}.demo-brand{display:flex;gap:6px;align-items:center;font-family:var(--display);font-weight:800;font-size:18px;letter-spacing:-.06em}.demo-brand svg{width:24px;height:24px}.demo-body{display:grid;grid-template-columns:.68fr 1fr}.demo-tour-picture{position:relative;min-height:340px;background:#d8ddcb;overflow:hidden}.landscape-sun{position:absolute;top:45px;right:31px;width:66px;height:66px;border-radius:50%;background:#e9f0dc}.landscape-hill{position:absolute;bottom:-60px;height:250px;width:350px;transform:rotate(-40deg);border-radius:40%}.hill-one{left:-100px;background:#7b8e63;bottom:-10px}.hill-two{left:60px;background:#a0b286;bottom:-40px}.hill-three{left:-55px;background:#354c35;bottom:-185px;transform:rotate(15deg)}.landscape-caption{position:absolute;top:24px;left:19px;color:#45583c;font-size:8px;font-weight:600;letter-spacing:.09em;writing-mode:vertical-rl}.demo-booking{padding:25px 23px;min-width:0}.demo-booking .small-label{font-size:7px;color:#909681;display:block;margin-bottom:6px}.demo-booking>select{border:none;padding:4px 18px 4px 0;width:100%;font-family:var(--display);font-size:18px;line-height:1.5;font-weight:700;letter-spacing:-.04em;background-color:transparent;text-overflow:ellipsis;outline-offset:3px}.tour-facts{display:flex;gap:7px;font-size:7px;flex-wrap:wrap;margin:8px 0 25px;color:#7c8570}.tour-facts span+span{border-left:1px solid #ccd2c2;padding-left:7px}.demo-fields{display:grid;grid-template-columns:1fr .72fr;gap:12px}.demo-fields label{font-size:8px;font-weight:550;display:block;margin-bottom:5px}.demo-fields input{width:100%;min-width:0;padding:9px 7px;border:1px solid #dfe3d7;border-radius:4px;background:white;height:37px;font-size:10px;color:#56624b}.stepper{height:37px;border:1px solid #dfe3d7;border-radius:4px;display:flex;align-items:center;justify-content:space-between}.stepper button{background:none;width:27px;align-self:stretch;font-size:15px}.stepper button:hover{background:#eef3e6}.stepper button:disabled{color:#bdc3b4;cursor:not-allowed}.stepper output{font-size:11px}.demo-price{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e4e7de;margin-top:25px;padding-top:17px;margin-bottom:17px}.demo-price>span{font-size:9px;color:#66725b}.demo-price small{display:block;font-size:7px;color:#939c88;margin-top:3px}.demo-price>strong{font-family:var(--display);font-size:26px;font-weight:700;letter-spacing:-.05em}.demo-price strong span{font-size:9px;letter-spacing:0;font-family:var(--font)}.demo-submit{width:100%;font-size:10px;padding:11px 12px;min-height:38px;border-radius:3px}.demo-submit span[aria-hidden]{font-size:16px}.demo-hint{font-size:7px;text-align:center;color:#919985;margin-top:8px;line-height:1.5}.demo-footer{display:flex;align-items:center;justify-content:center;gap:7px;padding:12px 10px;background:#f7f9f1;font-size:7px;color:#808973;text-align:center;line-height:1.6}.demo-footer .status-dot{width:4px;height:4px;box-shadow:none}.demo-result{background:#edf4e2;border-radius:5px;padding:18px 20px;margin-top:16px;color:var(--ink);border-left:3px solid var(--lime);font-size:12px;line-height:1.8}.demo-result strong{display:block;font-size:13px;margin-bottom:5px}.demo-result p+p{margin-top:8px}.demo-result .demo-result-note{font-size:10px;color:#657257}.demo-result button{margin-top:10px;background:var(--ink);color:white;padding:8px 12px;border-radius:4px;font-size:10px}.demo-result .result-badge{display:inline-flex;border:1px solid #a2ba84;padding:2px 7px;font-size:9px;border-radius:20px;margin-bottom:7px}.demo-result .result-row{display:flex;justify-content:space-between;border-bottom:1px solid #d0debf;padding:4px 0;font-size:11px}
/* Process + packages */
.approach-section{background:#efefe7}.process-grid{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:34px;padding:0;margin:0}.process-grid li{border-top:1px solid #c7ccbe;padding-top:22px}.process-number{display:inline-grid;place-items:center;width:32px;height:32px;border:1px solid #bcc4ad;border-radius:50%;font-size:10px;color:#68745a;margin-bottom:28px}.process-grid h3{font-size:19px;letter-spacing:-.04em;margin-bottom:14px}.process-grid p{font-size:12px;color:var(--muted);line-height:1.8;margin-bottom:25px}.process-deliverable{font-size:8px;color:#6f7a60;border-bottom:1px solid #b8c4a7;padding-bottom:6px}.solutions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.solution-card{border:1px solid #d4daca;border-radius:6px;padding:30px 29px;display:flex;flex-direction:column;align-items:flex-start}.solution-card .small-label{font-size:9px;color:#6b775e}.solution-card h3{font-size:30px;font-weight:600;margin-top:25px;margin-bottom:18px;line-height:1.18}.solution-card>p{font-size:12px;color:var(--muted);line-height:1.8}.solution-card .check-list{margin-top:25px;margin-bottom:30px}.solution-card .check-list li{font-size:11px}.solution-card .button{width:100%;margin-top:auto;font-size:12px;min-height:48px;padding:12px 16px}.solution-card.featured{background:var(--lime);border-color:var(--lime);position:relative}.solution-card.featured .small-label,.solution-card.featured .check-list li::before{color:#4d6332}.solution-card.featured>p{color:#4d6332}.solution-top{display:flex;width:100%;align-items:center;justify-content:space-between;height:14px}.solution-icon{font-size:24px;line-height:1}.scope-note{text-align:center;margin-top:25px;color:#838975;font-size:11px;max-width:780px;margin-inline:auto}
/* Studio */
.studio-section{border-block:1px solid var(--line)}.studio-layout{display:grid;grid-template-columns:1fr 1fr;min-height:580px}.studio-art{position:relative;display:flex;align-items:center;justify-content:center;background:#e4e8dc;isolation:isolate;overflow:hidden;margin-left:calc((min(var(--shell), 100vw - 112px) - 100vw)/2);padding-left:calc((100vw - min(var(--shell), 100vw - 112px))/2)}.studio-art::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent,transparent 42px,#92a67d14 42px,#92a67d14 43px);z-index:-1}.studio-art-label{position:absolute;left:calc((100vw - min(var(--shell), 100vw - 112px))/2);top:35px;color:#758465;font-size:9px}.studio-mark{width:280px;height:280px;fill:var(--ink);filter:drop-shadow(13px 15px 0 #c7ef6a);transform:rotate(-9deg);margin-left:-20px}.studio-coordinate{position:absolute;bottom:35px;left:calc((100vw - min(var(--shell), 100vw - 112px))/2);right:30px;display:flex;justify-content:space-between;gap:20px;color:#758465;font-size:7px}.studio-copy{padding:75px 0 75px 75px}.studio-copy h2{margin-bottom:25px}.studio-copy>p:not(.eyebrow){font-size:13px;line-height:1.9;color:var(--muted);margin-bottom:15px;max-width:400px}.team-signature{display:flex;align-items:center;gap:13px;margin:27px 0}.team-mark{width:42px;height:42px;background:#e1e8d5;border:1px solid #c6d3b4;border-radius:50%;display:grid;place-items:center;font-size:12px;font-family:var(--display);font-weight:600}.team-signature strong{display:block;font-size:13px;font-weight:600}.team-signature div>span{font-size:10px;color:#7a8370;display:block;margin-top:3px}.studio-copy .text-link{font-size:12px}
/* FAQs */
.faq-section{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.faq-intro h2{margin-bottom:25px}.faq-intro>p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.8;margin-bottom:22px}.faq-intro .text-link{font-size:12px}.faq-list{padding-top:9px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;cursor:pointer;list-style:none;font-size:14px;font-weight:500;line-height:1.6}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:22px;font-weight:400;color:#7d8c6c;transition:transform .2s;flex-shrink:0}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details[open] summary{padding-bottom:12px}.faq-list details>p{font-size:12px;line-height:1.9;color:var(--muted);padding:0 40px 25px 0;max-width:630px}
/* Contact */
.contact-section{background:var(--lime);padding:95px 0 90px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.contact-copy .eyebrow{font-size:9px;letter-spacing:.04em;margin-bottom:35px}.contact-copy h2{font-size:clamp(40px,4.1vw,61px);line-height:1.12;position:relative;font-weight:550}.contact-copy h2>span{color:#4e6b2d}.contact-copy h2 svg{width:60px;height:60px;position:absolute;right:10px;bottom:0;stroke:var(--ink);stroke-width:3;fill:none}.contact-copy>p:not(.eyebrow){font-size:13px;color:#4c622f;margin-top:28px;max-width:330px;line-height:1.9}.contact-email{display:inline-flex;align-items:center;gap:16px;margin-top:32px;font-size:clamp(12px,1.3vw,18px);font-weight:500;border-bottom:1px solid #66873b;padding-bottom:4px;overflow-wrap:anywhere}.contact-email span{font-size:25px}.contact-caption{display:block;color:#5b753c;font-size:10px;margin-top:12px}.contact-form-wrap{padding-top:5px;min-width:0}fieldset{margin:0;padding:0;border:none;min-width:0}legend{font-size:12px;font-weight:550;margin-bottom:14px}.interest-options{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.interest-options label{position:relative;cursor:pointer}.interest-options input{position:absolute;width:1px;height:1px;opacity:0}.interest-options label>span{display:block;padding:7px 12px;border:1px solid #9fc453;border-radius:25px;font-size:10px;transition:background .2s,color .2s}.interest-options input:checked+span{background:var(--ink);color:var(--lime);border-color:var(--ink)}.interest-options input:focus-visible+span{outline:3px solid #496c14;outline-offset:3px}.interest-options label:hover>span{border-color:#4c682a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-field{display:flex;flex-direction:column;gap:8px;margin-bottom:21px;min-width:0}.form-field label{font-size:11px;font-weight:550}.form-field label span{color:#5c792f}.form-field input,.form-field select,.form-field textarea{background:transparent;color:var(--ink);border:0;border-bottom:1px solid #97b952;padding:9px 0 12px;min-width:0;max-width:100%;border-radius:0;font-size:12px;line-height:1.6;transition:border-color .2s;outline-offset:3px}.form-field textarea{resize:vertical;min-height:100px}.form-field input::placeholder,.form-field textarea::placeholder{color:#668040;opacity:1}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--ink)}.form-field select{padding-right:20px;min-height:42px}.form-explainer{font-size:10px;line-height:1.7;color:#536d33;margin:3px 0 17px}.contact-submit{width:100%;font-size:12px;min-height:51px}.form-feedback{border:1px solid #94b74c;border-radius:4px;background:#d4f38f;margin-top:20px;padding:18px;font-size:12px;line-height:1.8}.form-feedback>p{font-size:11px;margin-top:5px}.feedback-actions{display:flex;flex-wrap:wrap;gap:15px;margin-top:13px}.feedback-actions button{background:none;border-bottom:1px solid currentColor;padding:2px 0;font-size:11px}.form-feedback .copy-feedback{font-size:10px;color:#496725;min-height:17px}
/* Footer and dialogs */
.site-footer{background:var(--ink);color:var(--paper);padding:42px 0 25px}.footer-top{display:flex;align-items:center;gap:50px;padding-bottom:35px}.footer-top .brand{font-size:27px}.footer-top .brand-period{color:var(--lime)}.footer-top>p{font-size:11px;color:#9aa68e;line-height:1.8}.back-top{display:flex;align-items:center;gap:20px;margin-left:auto;font-size:11px}.back-top span{border:1px solid #4a5740;width:33px;height:33px;border-radius:50%;display:grid;place-items:center;font-size:16px}.back-top:hover span{background:var(--lime);color:var(--ink)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px;border-top:1px solid #36412d;padding-top:22px;font-size:9px;color:#98a38e}.privacy-button{background:none;color:#abb79e;font-size:9px;padding:0}.privacy-button:hover{text-decoration:underline}dialog{border:1px solid #cdd5bf;background:var(--paper);color:var(--ink);border-radius:10px;max-height:90dvh;width:min(800px,calc(100% - 36px));padding:0;overscroll-behavior:contain}dialog::backdrop{background:#121b13a6;backdrop-filter:blur(6px)}.project-dialog-inner,.privacy-inner{padding:40px;position:relative}.dialog-close{position:absolute;top:15px;right:15px;width:30px;height:30px;border-radius:50%;background:#e6ebdc;font-size:25px;line-height:1;display:grid;place-items:center;z-index:2}.dialog-close:hover{background:var(--lime)}.project-dialog-inner>.eyebrow{margin-bottom:10px;color:var(--muted);font-size:9px}.project-dialog-inner h2{font-size:40px;padding-right:25px;margin-bottom:25px}.project-dialog-inner>img{border:1px solid #d5ddc9;border-radius:5px;margin-bottom:27px;width:100%}.project-dialog-inner h3{font-size:23px;max-width:550px;margin-bottom:15px;line-height:1.3}.project-dialog-inner>p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.8}.dialog-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.dialog-actions .button{font-size:12px;min-height:45px;padding:10px 16px}.dialog-actions .text-link{font-size:12px}.privacy-inner h2{font-size:32px;margin-bottom:25px}.privacy-inner>p:not(.eyebrow){font-size:13px;line-height:1.9;color:var(--muted);margin-top:16px}.privacy-inner a{border-bottom:1px solid #7b8b69;overflow-wrap:anywhere}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--paper);border:1px solid #748961;box-shadow:0 5px 25px #17220f30;z-index:100;padding:12px 22px;font-size:12px;border-radius:5px;max-width:calc(100% - 32px);text-align:center}
@media(min-width:1450px){.hero{padding-block:88px;gap:60px;min-height:760px}.hero-art{height:535px}.screen-front{top:201px}.screen-back{top:85px}.hero h1{font-size:85px}.hero-description{font-size:17px}}
@media(max-width:1100px){.shell{width:calc(100% - 72px)}.main-nav{gap:22px}.hero{gap:30px;padding-block:60px;min-height:660px}.hero h1{font-size:64px}.hero-art{height:455px}.screen-back{top:90px;left:38px}.screen-front{top:190px;left:16px}.art-spark{width:70px;height:70px;bottom:80px}.hero-actions{gap:20px}.hero-actions .button{padding:13px 16px;font-size:12px;gap:15px}.hero-actions .text-link{gap:8px;font-size:11px}.hero-description{font-size:15px}.section{padding-block:90px}.service-layout{gap:38px}.service-tabs [role=tab]{gap:16px;font-size:18px}.service-panel{padding:28px}.service-panel h3{font-size:28px}.lab-layout{gap:32px;grid-template-columns:.65fr 1.35fr}.demo-stage{padding:18px}.demo-header{padding:13px 15px;gap:8px}.demo-booking{padding:21px 17px}.demo-booking>select{font-size:15px}.demo-body{grid-template-columns:.5fr 1fr}.demo-header>span:nth-child(2){font-size:5px}.contact-layout{gap:45px}.process-grid{gap:25px}.solution-card{padding:27px 23px}.solution-card h3{font-size:27px}.studio-copy{padding-left:45px}.studio-art{margin-left:-36px;padding-left:36px}.studio-art-label,.studio-coordinate{left:36px}.studio-coordinate{flex-direction:column;gap:6px}.faq-section{gap:55px}.project-meta{gap:12px}.project-meta h3{font-size:20px}.project-meta p{font-size:11px}.project-case{font-size:10px;gap:6px}.hero .eyebrow{font-size:9px}.strip-inner{font-size:11px;gap:12px}}
@media(max-width:900px){.main-nav{gap:18px;font-size:12px}.main-nav .nav-contact{padding:10px 12px;gap:12px}.brand{font-size:25px}.brand-icon{width:30px;height:30px}.hero h1{font-size:54px}.hero .eyebrow{font-size:8px}.hero-art{height:410px}.screen-back{top:89px;left:30px}.screen-front{top:185px}.hero-actions{flex-wrap:wrap;gap:14px}.hero-note{margin-top:27px}.art-caption{font-size:8px;left:17px}.label-top{font-size:8px;padding:8px 10px;top:53px;right:15px}.art-foot{left:18px;font-size:8px}.art-foot strong{font-size:9px}.art-spark{height:57px;width:57px;bottom:75px;right:6px}.art-spark svg{padding:13px}.section-heading{gap:30px}.heading-aside{font-size:12px}.service-tabs [role=tab]{font-size:15px;gap:12px;min-height:74px}.service-panel{padding:24px}.service-panel h3{font-size:24px}.service-panel>p{font-size:12px}.service-panel .check-list li{font-size:11px}.service-panel-top{gap:12px;margin-bottom:25px}.service-panel .small-label{font-size:7px}.service-panel{min-height:452px}.lab-layout{grid-template-columns:1fr}.lab-copy{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;align-items:start}.lab-copy .demo-label{grid-column:1;justify-self:start}.lab-copy h3{grid-column:1;grid-row:2/5;font-size:42px}.lab-copy h3 br:nth-of-type(2){display:none}.lab-copy>p:not(.lab-detail){grid-column:2;grid-row:1/3;max-width:none;font-size:12px}.lab-copy .segmented{grid-column:2;grid-row:3;margin:12px 0}.lab-copy .lab-detail{grid-column:2;grid-row:4;min-height:auto;margin-bottom:15px}.lab-copy>.text-link{grid-column:1/3;justify-self:start;margin-top:12px}.demo-stage{max-width:690px;width:100%;margin-inline:auto;padding:30px}.demo-body{grid-template-columns:.7fr 1fr}.demo-booking>select{font-size:19px}.demo-header>span:nth-child(2){font-size:7px}.demo-booking{padding:28px}.demo-fields label{font-size:10px}.demo-fields input{font-size:12px}.demo-footer{font-size:8px}.process-grid{grid-template-columns:1fr 1fr;gap:40px}.process-grid p{max-width:260px}.solutions-grid{gap:12px}.solution-card{padding:25px 17px}.solution-card h3{font-size:24px}.solution-card>p{font-size:11px}.solution-card .check-list li{font-size:10px}.solution-card .button{font-size:10px;padding:10px;gap:10px}.solution-card .small-label{font-size:7px}.studio-mark{width:230px;height:230px}.studio-copy{padding-block:60px}.studio-copy h2{font-size:40px}.studio-copy>p:not(.eyebrow){font-size:12px}.team-signature div>span{font-size:8px}.faq-section{gap:35px;grid-template-columns:.65fr 1.35fr}.faq-list summary{font-size:12px}.contact-layout{gap:30px}.contact-copy h2{font-size:43px}.contact-copy h2 svg{width:43px;height:43px;right:0}.contact-copy .eyebrow{font-size:8px}.contact-copy>p:not(.eyebrow){font-size:12px}.form-row{gap:15px}.interest-options label>span{font-size:9px;padding:6px 9px}.contact-email{font-size:12px;gap:8px}.contact-email span{font-size:21px}}
@media(max-width:720px){html{scroll-padding-top:88px}.shell{width:calc(100% - 40px)}.header-inner{height:75px}.brand{font-size:26px}.brand-icon{width:30px;height:30px}.menu-toggle{display:flex;flex-direction:column;gap:6px;justify-content:center;align-items:center;width:42px;height:42px;border:1px solid #cbd3be;border-radius:5px;background:none;z-index:2}.menu-toggle span{display:block;width:18px;height:1px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.main-nav{display:none;position:absolute;top:75px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:24px 20px 28px;gap:0;align-items:stretch;box-shadow:0 18px 20px #1920190a}.main-nav.is-open{display:flex;flex-direction:column}.main-nav>a{padding:12px 3px;font-size:16px}.main-nav .nav-contact{margin:15px 0 0;justify-content:space-between;padding:13px;background:var(--lime);border-color:var(--lime);font-size:14px}.hero{grid-template-columns:1fr;gap:38px;padding-top:44px;padding-bottom:38px;min-height:auto}.hero .eyebrow{font-size:9px;white-space:normal;margin-bottom:22px;gap:9px}.hero h1{font-size:clamp(49px,10.3vw,72px);line-height:1.1;margin-bottom:24px}.hero-description{font-size:15px;max-width:420px}.desktop-break{display:none}.hero-actions{gap:22px;margin-top:25px}.hero-actions .button{font-size:12px;min-height:49px;padding:13px 17px;gap:18px}.hero-actions .text-link{font-size:11px}.hero-note{margin-top:25px;font-size:10px}.hero-art{height:430px;max-width:540px;margin-inline:auto}.screen-back{width:80%;top:80px;left:12%}.screen-front{top:170px;left:5%;width:84%}.art-caption{top:17px;left:20px;font-size:8px}.floating-label{font-size:9px;top:47px;right:20px}.art-foot{left:20px;right:20px;bottom:18px;font-size:9px}.art-foot strong{font-size:11px}.art-spark{width:72px;height:72px;bottom:74px;right:13px}.art-spark svg{padding:17px}.capabilities-strip{padding:19px 0;overflow:hidden}.strip-inner{width:max-content;max-width:none;gap:23px;margin-left:20px;padding-right:20px;font-size:11px}.strip-cross{font-size:17px}.section{padding-block:69px}.section-heading{display:block;margin-bottom:33px}.section-index{font-size:9px;margin-bottom:18px}h2{font-size:43px}.heading-aside{margin-top:22px;font-size:12px;max-width:none;padding:0}.heading-aside br{display:none}.projects-grid{grid-template-columns:1fr;gap:37px}.project-visual{aspect-ratio:1.35}.project-meta{margin-top:19px}.project-meta h3{font-size:23px}.project-meta p{font-size:11px}.project-case{font-size:11px}.tags{margin-top:15px}.tags span{font-size:9px}.projects-bottom{flex-wrap:wrap;margin-top:32px;padding-top:20px;gap:10px}.projects-bottom p{font-size:10px}.projects-bottom .text-link{margin-left:17px;margin-top:7px;font-size:11px}.service-layout{grid-template-columns:1fr;gap:24px}.service-tabs [role=tab]{font-size:17px;min-height:60px;padding-block:17px;gap:16px}.service-tabs [aria-selected=true]{padding-left:14px;padding-right:14px}.service-panel{min-height:420px;padding:25px}.service-panel h3{font-size:28px}.service-panel>p{font-size:13px;min-height:0;max-width:none}.service-panel .check-list li{font-size:12px}.service-panel-top{margin-bottom:25px}.service-panel .small-label{font-size:8px}.service-panel .text-link{font-size:12px}.lab-layout{gap:30px}.lab-copy{display:block}.lab-copy .demo-label{font-size:9px}.lab-copy h3{font-size:37px;margin-bottom:17px}.lab-copy h3 br{display:none}.lab-copy h3 br::after{content:' '}.lab-copy h3{max-width:300px}.lab-copy>p:not(.lab-detail){font-size:13px;max-width:420px}.lab-copy .segmented{margin:22px 0 15px}.lab-copy .lab-detail{font-size:12px;max-width:420px;min-height:44px}.lab-copy>.text-link{margin-top:7px;font-size:11px}.demo-stage{padding:16px;border-radius:6px}.demo-body{grid-template-columns:1fr}.demo-tour-picture{min-height:128px;max-height:128px}.landscape-caption{writing-mode:horizontal-tb;font-size:9px;top:19px;left:22px}.landscape-sun{width:55px;height:55px;right:33px;top:18px}.landscape-hill{height:160px;width:400px}.hill-one{bottom:-95px;left:-80px;transform:rotate(-18deg)}.hill-two{left:100px;bottom:-70px;transform:rotate(-24deg)}.hill-three{left:-80px;bottom:-120px;transform:rotate(7deg)}.demo-header{padding:13px 17px}.demo-header>span:nth-child(2){font-size:5px}.demo-brand{font-size:18px}.demo-booking{padding:23px}.demo-booking .small-label{font-size:8px}.demo-booking>select{font-size:20px}.tour-facts{font-size:8px;margin-bottom:21px}.demo-fields{gap:18px;grid-template-columns:1.1fr 1fr}.demo-fields label{font-size:10px}.demo-fields input{height:41px;font-size:12px;padding:9px}.stepper{height:41px}.stepper button{width:35px;font-size:19px}.stepper output{font-size:13px}.demo-price{margin-top:21px;padding-top:18px}.demo-price>span{font-size:10px}.demo-price small{font-size:8px}.demo-price>strong{font-size:30px}.demo-submit{min-height:43px;font-size:12px;padding-inline:15px}.demo-submit span[aria-hidden]{font-size:20px}.demo-hint{font-size:8px}.demo-footer{font-size:7px;padding:12px 8px}.demo-result{font-size:12px;padding:16px}.process-grid{gap:30px 22px}.process-number{margin-bottom:18px}.process-grid h3{font-size:17px}.process-grid p{font-size:11px;margin-bottom:18px}.process-deliverable{font-size:7px}.solutions-grid{grid-template-columns:1fr;gap:17px}.solution-card{padding:27px}.solution-card h3{font-size:31px;margin-top:21px}.solution-card>p{font-size:13px;max-width:400px}.solution-card h3 br{display:none}.solution-card .small-label{font-size:9px}.solution-card .check-list{margin-block:24px}.solution-card .check-list li{font-size:12px}.solution-card .button{font-size:12px;min-height:48px;padding-inline:17px}.scope-note{font-size:10px;text-align:left;margin-top:22px}.studio-layout{grid-template-columns:1fr}.studio-art{height:325px;margin-inline:-20px;padding:0}.studio-art-label{top:22px;left:25px;font-size:8px}.studio-mark{width:215px;height:215px;margin:0}.studio-coordinate{left:25px;right:25px;bottom:20px;flex-direction:row;font-size:6px}.studio-copy{padding:50px 0 57px}.studio-copy h2{font-size:44px}.studio-copy>p:not(.eyebrow){font-size:13px;max-width:none}.studio-copy .eyebrow{font-size:9px}.team-signature div>span{font-size:9px}.studio-copy .text-link{font-size:12px}.faq-section{grid-template-columns:1fr;gap:30px}.faq-intro>p:not(.eyebrow){font-size:12px}.faq-intro>p br{display:none}.faq-intro h2 br{display:none}.faq-intro .text-link{font-size:11px}.faq-list{padding:0}.faq-list summary{font-size:13px;padding-block:21px;gap:15px}.faq-list details>p{font-size:12px;padding-right:18px}.contact-section{padding-block:64px}.contact-layout{grid-template-columns:1fr;gap:43px}.contact-copy .eyebrow{font-size:8px;margin-bottom:24px}.contact-copy h2{font-size:52px;max-width:440px}.contact-copy h2 svg{width:48px;height:48px;right:12px}.contact-copy>p:not(.eyebrow){font-size:13px;max-width:360px;margin-top:22px}.contact-email{font-size:16px;margin-top:22px}.contact-caption{font-size:10px}.contact-form-wrap{padding:0}legend{font-size:12px}.interest-options{gap:8px;margin-bottom:25px}.interest-options label>span{font-size:10px;padding:8px 12px}.form-row{gap:20px}.form-field label{font-size:11px}.form-field input,.form-field select,.form-field textarea{font-size:13px}.form-explainer{font-size:10px}.contact-submit{font-size:13px;min-height:53px}.site-footer{padding-block:33px 24px}.footer-top{gap:24px;align-items:flex-start;flex-wrap:wrap;padding-bottom:25px}.footer-top .brand{font-size:25px}.footer-top>p{font-size:10px;margin-left:auto}.back-top{margin:0;font-size:10px;flex-basis:100%;justify-content:space-between}.footer-bottom{flex-direction:column;align-items:flex-start;gap:12px;padding-top:20px;font-size:9px}.privacy-button{font-size:9px}.project-dialog-inner,.privacy-inner{padding:32px 22px 26px}.project-dialog-inner h2{font-size:30px;margin-bottom:22px}.project-dialog-inner h3{font-size:22px}.project-dialog-inner>p:not(.eyebrow){font-size:12px}.project-dialog-inner .check-list li{font-size:11px}.privacy-inner h2{font-size:28px}.privacy-inner>p:not(.eyebrow){font-size:12px}.dialog-actions{gap:17px}.toast{bottom:15px;font-size:11px;padding:10px 15px}}
@media(max-width:380px){.shell{width:calc(100% - 32px)}.hero h1{font-size:46px}.hero .eyebrow{font-size:8px}.hero-actions{gap:14px}.hero-actions .button{font-size:11px;padding:12px 14px}.hero-actions .text-link{font-size:10px}.hero-art{height:340px}.screen-back{top:76px}.screen-front{top:144px}.art-spark{width:57px;height:57px;bottom:70px}.art-spark svg{padding:13px}.art-foot strong{font-size:9px}.floating-label{font-size:8px;top:43px}.section h2{font-size:37px}.project-meta h3{font-size:20px}.project-meta p{font-size:10px}.project-case{font-size:10px}.project-number{font-size:8px;left:20px;top:19px}.service-tabs [role=tab]{font-size:15px}.demo-stage{padding:10px}.demo-booking{padding:19px}.demo-booking>select{font-size:18px}.demo-fields{gap:12px}.process-grid{grid-template-columns:1fr}.process-grid p{max-width:none}.contact-copy h2{font-size:47px}.contact-email{font-size:14px}.form-row{grid-template-columns:1fr;gap:0}.studio-art{margin-inline:-16px}.footer-top>p{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Mantener legible el acceso al laboratorio sobre las capturas del hero. */
.art-foot{z-index:6;background:var(--paper);padding:7px 11px;border:1px solid #d4dcc8;border-radius:5px;bottom:14px;left:17px;right:17px}

.team-signature strong [data-brand]{display:inline;font:inherit;color:inherit;margin:0}
