/* Art direction, section compositions, and interaction states. */
/* Cap the hero on very tall screens so the next section stays discoverable. */
.hero{min-height:min(900px,calc(100svh - 104px))}
.hero h1{animation:hero-in 1.1s cubic-bezier(.2,.8,.2,1) both}.hero-copy{animation:hero-in 1.1s .15s both}.hero .orbit-star{animation:star-turn 35s linear infinite}.impact{display:inline-block}.hero .impact:hover{color:#d4d9cc;transition:color .4s}.work .project-visual{padding:32px 5% 26px;min-height:0;background:#333b32;perspective:1200px}.work .project-visual:before{width:900px;height:900px;right:-180px;top:-420px}.project-meta,.project-bottom-line{display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.12em;position:relative}.project-meta{margin-bottom:35px;color:#c9d5c2}.project-window{position:relative;width:88%;margin:auto;border:1px solid #c0cbb84d;border-radius:8px;overflow:hidden;transform:rotate(-2deg);box-shadow:0 28px 70px #0005;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.project-card:hover .project-window{transform:rotate(0) translateY(-7px)}.window-bar{height:34px;background:#242b24;display:flex;align-items:center;gap:5px;padding:0 14px}.window-bar i{width:5px;height:5px;background:#a4b299;border-radius:50%}.window-bar span{position:absolute;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:.04em;color:#b3bdac}.window-bar b{margin-left:auto;font-size:12px}.project-window img{display:block;width:100%;height:auto}.project-bottom-line{margin-top:37px;color:#d1dbcb}.project-bottom-line span:first-child{font-size:14px;letter-spacing:0}.services{max-width:none;background:#202320}.services-intro{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:60px}.services-intro>p{color:var(--muted);max-width:325px;font-size:17px}.service{border-top:1px solid var(--line)}.service:last-child{border-bottom:1px solid var(--line)}.service summary{display:grid;grid-template-columns:55px 1fr 170px 28px;gap:22px;align-items:center;min-height:115px;cursor:pointer;list-style:none;padding:20px 0}.service summary::-webkit-details-marker{display:none}.service summary:focus-visible{outline:2px solid var(--orange);outline-offset:5px}.service summary h3{font-size:clamp(1.6rem,2.7vw,2.6rem);letter-spacing:-.05em;transition:color .3s}.service summary:hover h3,.service[open] h3{color:var(--orange)}.service-number{font-size:13px;color:var(--muted)}.service-type{font-size:10px;letter-spacing:.1em;color:var(--muted)}.service-toggle{font-size:28px;color:var(--muted);font-weight:400;line-height:1;transition:transform .3s}.service[open] .service-toggle{transform:rotate(45deg);color:var(--orange)}.service-body{padding:0 190px 40px 77px}.service-body>p{max-width:630px;color:#b8beb6;font-size:16px;line-height:1.8}.tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.tags span{font-size:12px;padding:7px 13px;border:1px solid #b8beb634;border-radius:99px;color:#c6cdc2}.text-link{display:inline-flex;gap:30px;font-size:14px;border-bottom:1px solid #ffffff50;padding-bottom:7px;margin-top:25px;transition:color .25s}.text-link:hover{color:var(--orange)}.service-note{display:flex;align-items:center;gap:40px;margin-top:30px}.service-note>span{font-size:10px;letter-spacing:.12em;color:var(--muted)}.service-note a{font-size:13px}.service-note a:hover{color:var(--orange)}.craft{padding:22px;background:var(--bg)}.craft-frame{height:min(790px,85vw);min-height:610px;position:relative;overflow:hidden;border-radius:3px;background:#30362c}.craft video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.78)}.craft-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#10170e45 0%,#10170e08 30%,#10170e40 55%,#10170ed9 100%)}.craft-top,.craft-bottom{position:absolute;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;z-index:2;gap:20px}.craft-top{top:35px}.craft-top .eyebrow{color:#fff;text-shadow:0 1px 10px #0008}.craft-copy{position:absolute;bottom:125px;left:5%;right:5%;z-index:2}.craft-small{font-size:14px;margin-bottom:22px;color:#edf0e5}.craft-copy h2{margin:0!important;font-size:clamp(2.6rem,5.7vw,6rem);text-shadow:0 2px 25px #0002;max-width:850px;line-height:1.13}.craft-copy>p:last-child{font-size:15px;color:#e3e7da;margin-top:22px;line-height:1.7}.craft-bottom{bottom:30px;border-top:1px solid #ffffff50;padding-top:20px}.craft-bottom>span{font-size:9px;letter-spacing:.13em;color:#e3e7da}.video-control{border:1px solid #ffffff65;border-radius:99px;background:#1c231c80;padding:10px 17px;font-size:12px;cursor:pointer;min-width:117px;backdrop-filter:blur(10px)}.video-control span{margin-right:9px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:65px}.step-index{display:flex;justify-content:space-between;color:var(--orange);border-top:1px solid var(--line);padding-top:22px;font-size:12px}.step-index span{font-size:22px;line-height:1}.process-grid h3{font-size:30px;margin-top:45px;letter-spacing:-.04em}.process-grid p{color:var(--muted);font-size:15px;line-height:1.8;margin-top:17px;max-width:300px}.about{background:#202320;max-width:none}.about-intro{max-width:850px}.about-intro h2{margin-top:30px}.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;margin-top:60px;align-items:center}.founder-card{border:1px solid #525b4e;background:#30392e;min-height:390px;display:flex;flex-direction:column;padding:30px;overflow:hidden;position:relative}.founder-card:before{content:'';position:absolute;width:350px;height:350px;border:1px solid #aab69d22;border-radius:50%;right:-160px;top:-150px;box-shadow:0 0 0 65px #aab69d0b}.founder-monogram{font-family:'Playfair Display',serif;font-style:italic;font-size:160px;line-height:1.6;letter-spacing:-.1em;position:relative;color:#d9e0cc}.founder-monogram>span{font-family:var(--font);font-style:normal;color:var(--orange);font-size:58px;position:absolute;top:10px;right:10px;letter-spacing:0}.founder-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #b6c5a837;padding-top:22px;margin-top:auto;position:relative}.founder-bottom h3{font-size:22px;letter-spacing:-.03em}.founder-bottom p{font-size:12px;margin-top:7px;color:#b3c0a8}.founder-bottom>span{font-size:28px}.about-copy .large-copy{font-size:clamp(1.4rem,2.2vw,2rem);letter-spacing:-.03em;line-height:1.5;color:var(--text)}.about-copy>p{color:var(--muted);font-size:16px;line-height:1.9;margin-top:24px}.about-copy>p:first-child{margin-top:0}.studio-facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:35px 0;margin-top:75px}.studio-facts>div{display:flex;align-items:center;gap:22px}.studio-facts>div:not(:first-child){padding-left:12%;border-left:1px solid var(--line)}.studio-facts strong{font-family:var(--display);font-weight:500;font-size:50px;letter-spacing:-.05em}.studio-facts span{font-size:12px;color:var(--muted)}.technology{margin-top:65px}.tech-list{display:flex;gap:15px 25px;flex-wrap:wrap;margin-top:28px}.tech-list span{font-size:22px;color:#b4bbae;letter-spacing:-.04em;transition:color .3s}.tech-list span:hover{color:var(--orange)}.tech-list span:not(:last-child):after{content:'/';color:#5d6758;margin-left:25px}.contact{background:#dbe1d1;color:#1b2119;max-width:none;position:relative;overflow:hidden;padding-top:65px}.contact-top{display:flex;align-items:center;justify-content:space-between}.contact .eyebrow{font-size:11px}.contact-spark{font-size:62px;line-height:1;color:#56624b}.contact h2{font-size:clamp(3.4rem,8.2vw,8.5rem);margin-top:30px!important;max-width:1000px;line-height:1.13}.contact .serif{color:#4b5e3f}.contact-bottom{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-top:48px}.button-dark{background:#1b2119;color:#f2f1e9;margin:0}.button-dark:hover{background:#3a4831}.contact-bottom p{font-size:12px;margin-top:17px;color:#596350}.contact-details{display:grid;gap:8px;font-size:17px;text-align:right}.contact-details a:hover{color:#526941}.footer{padding-top:45px;padding-bottom:25px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:40px}.footer-top>span{color:var(--muted);font-size:13px}.back-top{font-size:13px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:22px;gap:20px;font-size:10px;color:var(--muted)}.footer-bottom>span:last-child{letter-spacing:.12em}.footer-bottom button{border:0;background:none;color:var(--muted);font-size:11px;cursor:pointer;padding:8px}.floating-whatsapp{position:fixed;right:24px;bottom:24px;z-index:40;background:#e2e8d8;color:#212a1c;padding:14px;border-radius:50%;box-shadow:0 4px 30px #0003;display:flex;align-items:center;gap:10px;transition:transform .3s,background .3s}.floating-whatsapp svg{width:26px;height:26px}.floating-whatsapp>span{font-size:13px;max-width:0;opacity:0;overflow:hidden;white-space:nowrap;transition:max-width .3s,opacity .3s}.floating-whatsapp:hover{border-radius:40px;background:var(--orange);transform:translateY(-3px)}.floating-whatsapp:hover>span{max-width:100px;opacity:1}.floating-whatsapp:not(:hover){gap:0}.reveal{opacity:1;transform:none}.motion-enabled .reveal.waiting{opacity:0;transform:translateY(35px)}.motion-enabled .reveal{transition:opacity .85s ease,transform .85s cubic-bezier(.2,.8,.2,1)}.motion-off *,.motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important}.motion-off{scroll-behavior:auto}.motion-off .reveal.waiting{opacity:1;transform:none}.header nav a.active{color:var(--orange)}
@keyframes hero-in{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes star-turn{to{transform:rotate(360deg)}}
@media(hover:hover) and (pointer:fine){body.has-custom-cursor,body.has-custom-cursor a,body.has-custom-cursor button,body.has-custom-cursor summary{cursor:none}.has-custom-cursor .cursor{display:flex;position:fixed;left:0;top:0;width:22px;height:22px;align-items:center;justify-content:center;border:1px solid var(--orange);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);opacity:0;transition:width .25s,height .25s,background .25s,opacity .2s;mix-blend-mode:normal}.cursor:after{content:'';position:absolute;width:4px;height:4px;border-radius:50%;background:var(--orange)}.cursor.is-link{width:46px;height:46px;background:#ff80551a}.cursor.is-project{width:85px;height:85px;background:var(--orange);color:var(--bg);border:0}.cursor.is-project:after{display:none}.cursor span{font-size:13px;white-space:nowrap;font-weight:600}.motion-off body.has-custom-cursor,.motion-off body.has-custom-cursor a,.motion-off body.has-custom-cursor button,.motion-off body.has-custom-cursor summary{cursor:auto}.motion-off .cursor{display:none}}
@media(min-width:1600px){.services,.about,.contact{padding-left:max(100px,calc((100vw - 1400px)/2));padding-right:max(100px,calc((100vw - 1400px)/2))}}
@media(max-width:1000px){.service summary{grid-template-columns:35px 1fr 28px;gap:20px}.service-type{display:none}.service-body{padding-left:55px;padding-right:55px}.services-intro>p{max-width:260px}.about-grid{gap:7%;grid-template-columns:1fr 1fr}.founder-card{padding:25px;min-height:350px}.founder-monogram{font-size:135px}.studio-facts>div{gap:13px}.studio-facts strong{font-size:40px}.studio-facts>div:not(:first-child){padding-left:8%}.contact-details{font-size:15px}}
@media(max-width:700px){.services-intro{display:block;margin-bottom:35px}.services-intro>p{max-width:500px;margin-top:25px;font-size:16px}.service summary{min-height:95px;gap:12px;grid-template-columns:25px 1fr 20px}.service summary h3{font-size:25px;line-height:1.2}.service-body{padding-left:37px;padding-right:0}.service-body>p{font-size:15px}.service-note{display:block}.service-note>span{display:block;margin-bottom:10px}.craft{padding:10px}.craft-frame{min-height:660px}.craft-top>.eyebrow:last-child{display:none}.craft-copy{bottom:135px;left:7%;right:7%}.craft-copy h2{font-size:10.5vw;line-height:1.16}.craft-top,.craft-bottom{left:7%;right:7%}.craft-bottom>span{font-size:8px;max-width:150px}.craft video{object-position:51% center}.craft-overlay{background:linear-gradient(180deg,#10170e40 0%,#10170e05 20%,#10170e55 45%,#10170eef 100%)}.process-grid{grid-template-columns:1fr;gap:40px;margin-top:35px}.process-grid h3{margin-top:24px;font-size:29px}.process-grid p{max-width:none}.about-grid{grid-template-columns:1fr;gap:40px;margin-top:38px}.founder-card{min-height:320px;max-width:450px}.founder-monogram{font-size:135px;line-height:1.4}.about-copy .large-copy{font-size:25px}.studio-facts{margin-top:45px;gap:0;padding:25px 0}.studio-facts>div{flex-direction:column;align-items:flex-start;gap:7px}.studio-facts>div:not(:first-child){padding-left:16px}.studio-facts strong{font-size:36px}.studio-facts span{font-size:11px;line-height:1.5;max-width:70px}.technology{margin-top:40px}.tech-list{gap:13px 17px}.tech-list span{font-size:19px}.tech-list span:not(:last-child):after{margin-left:17px}.contact-top{gap:20px}.contact-top .eyebrow{font-size:10px;max-width:220px}.contact-spark{font-size:43px}.contact h2{font-size:12vw;line-height:1.18}.contact-bottom{display:block;margin-top:35px}.contact-details{text-align:left;margin-top:34px;font-size:16px;overflow-wrap:anywhere}.footer-top{flex-wrap:wrap}.footer-top>span{order:3;width:100%;font-size:12px}.footer-bottom{flex-wrap:wrap;justify-content:flex-start;gap:10px 20px;padding-bottom:50px}.footer-bottom>span:last-child{display:none}.floating-whatsapp{bottom:18px;right:18px;padding:12px}.project-meta{font-size:8px;margin-bottom:23px}.project-window{width:94%}.window-bar{height:25px;padding:0 9px}.window-bar span{font-size:7px}.window-bar i{width:4px;height:4px}.project-bottom-line{margin-top:25px;font-size:8px}.project-bottom-line span:first-child{font-size:11px;max-width:120px}.work .project-visual{padding:25px 6%}.project-caption p{font-size:12px}.project-caption h3{font-size:22px}.round-link{flex-shrink:0;margin-left:15px}.hero{min-height:690px}}
@media(prefers-reduced-motion:reduce){.motion-enabled .reveal.waiting{opacity:1;transform:none}.cursor{display:none!important}body.has-custom-cursor,body.has-custom-cursor a,body.has-custom-cursor button,body.has-custom-cursor summary{cursor:auto!important}}
/* Small labels retain readable sizes even on narrow screens. */
.section-description,.process-grid p,.service-body>p,.craft-copy>p:last-child{font-size:1rem}
.eyebrow,.contact .eyebrow,.contact-top .eyebrow,.hero-footer,.project-meta,.project-bottom-line,.craft-bottom>span,.service-type,.service-note>span,.footer-bottom,.footer-bottom button,.studio-facts span{font-size:.75rem}
.tags span,.video-control,.service-note a,.founder-bottom p,.project-caption p,.contact-bottom p{font-size:.875rem}
.hero-note,.footer-top>span{font-size:.875rem}
.orbit-label,.orbit-bottom{font-size:.625rem;letter-spacing:.08em}
@media(max-width:700px){.hero-footer{flex-wrap:wrap;gap:12px}.hero-footer>a{margin-left:auto}.project-meta{flex-wrap:wrap;gap:6px}.project-bottom-line{gap:12px;align-items:center}.project-bottom-line span:last-child{max-width:130px;text-align:right}.craft-bottom>span{max-width:170px;letter-spacing:.08em}.studio-facts span{max-width:85px}.service-note a{line-height:1.7}.footer-bottom{padding-right:40px}.orbit{width:130px;height:130px}.orbit-star{font-size:45px}.orbit-label,.orbit-bottom{font-size:.55rem}.contact-details{font-size:1rem}.window-bar span{font-size:10px}.project-caption{gap:15px}.project-caption p{max-width:260px}.contact-top .eyebrow{max-width:240px}}
@media(max-width:600px){.hero .orbit{margin-top:20px}.hero-footer{padding-right:40px}}
