/* Shared page surfaces: the homepage is cinematic; inner pages use ordinary document flow. */
:root{--page-width:1280px;--gold:#d9bc7f;--neutral-glass:rgba(255,255,255,.035)}
[id]{scroll-margin-top:112px}.inner-page{background:#171819;color:#f5f5f1}.inner-page .soft-white{color:#a7a8a6}.page-atmosphere{position:fixed;inset:0;z-index:-1;background:radial-gradient(ellipse at 85% 8%,#34333155,transparent 50%),radial-gradient(ellipse at 5% 65%,#33353744,transparent 52%);pointer-events:none}.inner-page .header{background:linear-gradient(#171819f5,#17181900)}.inner-page .header.scrolled{background:#171819ec;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid #ffffff0c}.inner-page .nav-contact{background:#ffffff05}.inner-page .nav-contact:hover,.nav-contact[aria-current=page]{background:var(--paper);color:var(--ink)}.inner-page .mobile-nav{background:#202122f5}.inner-page .eyebrow{text-shadow:none;color:#c7c8c5}.inner-page .eyebrow>span{color:#d9bc7f;border-color:#d9bc7f50}.inner-page .bottom-meta{color:#b4b5b0}.inner-page .bottom-meta button{color:#b4b5b0;text-shadow:none}.page-main{width:min(var(--page-width),calc(100% - var(--gutter) * 2));margin:0 auto;padding-top:166px}.page-hero{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:30px;padding:36px 0 70px;min-height:580px}.page-hero h1,.contact-intro h1{font-size:clamp(68px,7vw,112px);font-weight:450;letter-spacing:-.065em;line-height:1.02;margin:0;text-wrap:balance}.page-lead{font-size:18px;line-height:1.7;letter-spacing:-.02em;color:#bfc0bc;margin:30px 0 0;max-width:560px}.text-link{display:inline-flex;align-items:center;gap:35px;font-size:14px;line-height:1.5;margin-top:30px;border-bottom:1px solid #ffffff45;padding-bottom:10px;transition:border-color .2s}.text-link>span{font-size:23px;transition:transform .25s}.text-link:hover{border-color:#eee}.text-link:hover>span{transform:translate(3px,-3px)}.page-apple-scene{position:relative;aspect-ratio:1;max-width:460px;width:100%;justify-self:end;display:grid;place-items:center;isolation:isolate}.page-apple-scene:before{content:'';position:absolute;inset:10%;background:radial-gradient(ellipse,#cba76310,transparent 68%);z-index:-1}.turning-apple{width:82%;height:82%;object-fit:contain;filter:drop-shadow(0 32px 24px #0006);animation:apple-turn 13s ease-in-out infinite;transform-style:preserve-3d}.apple-orbit{position:absolute;width:96%;height:40%;border:1px solid #ffffff14;border-radius:50%;transform:rotate(-25deg);z-index:-1}.art-caption{position:absolute;bottom:0;font-size:10px;letter-spacing:2px;color:#8e8f8c}.collection-top{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #ffffff24;padding-top:24px;margin-bottom:26px;font-size:12px;letter-spacing:1.5px;color:#b1b2ae}.collection-top p{margin:0;color:#e7e7e1}.collection-top>span{font-size:10px;letter-spacing:1px}.service-directory{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:36px}.service-directory a{font-size:14px;color:#d0d0ca;border:1px solid #ffffff24;border-radius:30px;padding:10px 16px;transition:background .2s,border-color .2s}.service-directory a:hover{background:#ffffff09;border-color:#ffffff80}.static-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;padding-bottom:44px}.static-service-grid .service-detail{height:auto;min-height:330px;padding:34px 38px;background:linear-gradient(130deg,#ffffff08,#ffffff00 70%),var(--neutral-glass);border:1px solid #ffffff1f;border-top-color:#ffffff3e;box-shadow:inset 0 1px 0 #ffffff05,0 18px 50px #00000010;overflow:visible;backdrop-filter:none;-webkit-backdrop-filter:none}.static-service-grid .service-detail:nth-child(even){transform:translateY(44px)}.static-service-grid .service-detail:target{border-color:#d9bc7f80;background-color:#ffffff07}.static-service-grid .service-detail:hover{border-color:#ffffff65;background-color:#ffffff06}.static-service-grid .card-top{margin-bottom:32px;flex-direction:row;align-items:center}.static-service-grid .card-top svg{width:34px;height:34px;stroke:#d7d8d2}.static-service-grid .card-top>span{font-size:11px;letter-spacing:1.4px;color:#a9aaa5}.static-service-grid h3{font-size:32px;line-height:1.12;margin-bottom:18px;color:#f5f5f0}.static-service-grid p{font-size:16px;line-height:1.7;color:#b4b6b0;max-width:470px}.static-service-grid .card-foot{font-size:13px;color:#ddddd7;margin-top:auto;padding-top:28px}.static-service-grid .card-foot span{font-size:23px;transition:transform .25s}.static-service-grid .card-foot:hover span{transform:translate(3px,-3px)}.page-closing{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:80px 0 15px}.page-closing p{font-size:clamp(28px,3vw,46px);line-height:1.2;letter-spacing:-.045em;margin:0}.page-closing p>span{color:#989a94}.outline-link{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;border:1px solid #ffffff55;padding:18px 25px;border-radius:40px;font-size:14px;white-space:nowrap;transition:background .25s,color .25s}.outline-link>span{font-size:24px;line-height:1}.outline-link:hover{background:#f4f4ed;color:#191a18}.site-footer{width:min(var(--page-width),calc(100% - var(--gutter) * 2));margin:100px auto 0;padding:32px 0 66px;display:flex;align-items:center;gap:26px;border-color:#ffffff23;text-shadow:none}.site-footer .footer-caption{font-size:11px;color:#a3a59e;flex-shrink:0}.site-footer nav{display:flex;gap:28px;margin-left:auto;font-size:13px;color:#c0c2ba}.site-footer nav a:hover{color:white}.site-footer .back-to-top{margin-left:30px}.home-page .site-footer{background:#171b18cf;padding-left:28px;padding-right:28px;border-radius:18px 18px 0 0;margin-top:0}.motion-paused .turning-apple{animation-play-state:paused}
/* Original supplied identity, cropped to the wordmark through its viewport. */
.wordmark,.footer-wordmark{display:block;flex:none;line-height:0;letter-spacing:normal}
.wordmark-image{display:block;width:154px;height:28px;overflow:hidden}
.footer-wordmark .wordmark-image{width:143px;height:26px}
/* Independent partners page. */
.partners-hero h1{font-size:clamp(64px,6.3vw,102px)}.partner-collection .logo-window{width:100%;margin:48px 0 0}.partner-collection .logo-track{gap:20px;animation-duration:34s}.partner-collection .logo-track.reverse{margin-top:20px;margin-left:-130px;animation-duration:39s}.partner-collection .logo-group{gap:20px}.partner-collection .brand-logo{width:280px;height:156px;background:linear-gradient(135deg,#ffffff07,#ffffff01);border-color:#ffffff22;backdrop-filter:none;-webkit-backdrop-filter:none;font-size:49px;color:#dadcd5;border-radius:20px}.partner-collection .brand-orbit{font-size:45px}.partner-collection .brand-mono{font-size:43px}.partner-collection .brand-arch{font-size:38px}.partner-collection .draft-note{color:#959790;margin-top:26px;font-size:12px;line-height:1.6}.partner-collection .logo-track{animation-name:partner-marquee}@keyframes partner-marquee{to{transform:translateX(calc(-50% - 10px))}}
/* Contact stands on its own, with the existing WhatsApp flow. */
.contact-main{padding-top:184px}.contact-page-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(40px,7vw,110px);align-items:start}.contact-intro h1{font-size:clamp(62px,6.2vw,98px)}.contact-intro .page-lead{font-size:17px;line-height:1.7}.contact-apple-line{display:flex;align-items:center;gap:28px;margin-top:12px}.contact-apple-line .apple-target{width:220px;height:220px;margin:0 0 0 -26px}.contact-apple-line>p{font-size:14px;line-height:1.65;letter-spacing:-.01em;color:#9b9d95}.contact-intro .contact-direct{align-items:flex-start;flex-direction:column;gap:10px;margin-top:15px;text-shadow:none}.contact-intro .contact-direct>span{font-size:12px;color:#95978f}.contact-intro .contact-direct a{font-size:20px;letter-spacing:-.02em}.brief-panel{padding-top:4px;scroll-margin-top:120px}.form-eyebrow{font-size:12px;letter-spacing:2px;margin:0 0 27px;color:#c4c5bf}.inner-page .contact-form{padding:32px;background:linear-gradient(140deg,#ffffff08,#ffffff02);border-color:#ffffff29;border-top-color:#ffffff55;backdrop-filter:none;-webkit-backdrop-filter:none}.inner-page .contact-form label{font-size:14px;color:#c7c9c1;letter-spacing:0;margin-bottom:27px}.inner-page .contact-form input,.inner-page .contact-form textarea{font-size:16px;padding:13px 0;border-color:#ffffff29;line-height:1.5}.inner-page .contact-form textarea{min-height:110px;max-height:280px}.inner-page .contact-form input::placeholder,.inner-page .contact-form textarea::placeholder{color:#797d73}.inner-page .form-row{gap:24px}.inner-page .form-submit{margin-top:33px;flex-wrap:wrap;row-gap:18px}.inner-page .form-submit p{font-size:12px;color:#a3a69b}.inner-page .send-button{padding:16px 20px}.inner-page .form-status{font-size:14px}.contact-page-layout:target{scroll-margin-top:135px}
/* The homepage's new final scene replaces the long service conveyor. */
.home-page .hero{height:220svh}.home-page .approach{height:155svh}.effect-scene{height:290svh;position:relative}.effect-stage{align-items:center}.effect-content{width:min(790px,64vw);position:relative}.effect-core{display:grid;grid-template-columns:1fr 285px;gap:18px;align-items:center}.effect-core h2{font-size:clamp(62px,6.4vw,102px);letter-spacing:-.065em}.morph-object{position:relative;width:285px;height:285px;margin:0;isolation:isolate}.morph-object:before{content:'';position:absolute;inset:15%;border-radius:50%;background:radial-gradient(ellipse,#cba14b1c,transparent 70%);filter:blur(20px)}.morph-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;will-change:transform,opacity,filter;filter:drop-shadow(0 18px 18px #0007)}.morph-image:first-child{opacity:1}.effect-notes{display:grid;margin-top:20px;min-height:128px;max-width:580px}.effect-step{grid-area:1/1;opacity:0;will-change:opacity,transform;pointer-events:none}.effect-step:first-child{opacity:1}.effect-step h3{margin:0 0 12px;font-size:24px;line-height:1.3;font-weight:450;letter-spacing:-.035em;text-shadow:0 2px 20px #0009}.effect-step p{margin:0;font-size:17px;line-height:1.65;color:#e2e6dc;letter-spacing:-.02em;text-shadow:0 2px 15px #000,0 1px 5px #0007}.morph-chapters{display:flex;gap:28px;list-style:none;padding:0;margin:27px 0 0;border-top:1px solid #ffffff35;width:max-content;max-width:100%}.morph-chapters li{padding:15px 0 0;font-size:12px;color:#a1aaa0;position:relative;transition:color .2s}.morph-chapters li>span{font-size:10px;margin-right:9px;font-variant-numeric:tabular-nums}.morph-chapters li:before{content:'';position:absolute;top:-1px;left:0;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .25s}.morph-chapters li.is-current{color:#f8f7e9}.morph-chapters li.is-current:before{transform:scaleX(1)}.effect-link{margin-top:32px;font-size:14px}.home-page .effect-content:after{content:'';position:absolute;z-index:-1;inset:-35px -30px -25px;background:radial-gradient(ellipse at 25% 50%,#0c150c3d,transparent 74%);pointer-events:none}.home-page .site-footer{position:relative}.home-page .site-footer nav{color:#e2e7dd}.home-page .site-footer .footer-caption{color:#bec7b6}
@keyframes apple-turn{0%,100%{transform:perspective(800px) rotateY(-16deg) rotateZ(-8deg) translateY(0)}50%{transform:perspective(800px) rotateY(19deg) rotateZ(7deg) translateY(-13px)}}
@media(min-width:1700px){.effect-content{width:870px}.effect-core{grid-template-columns:1fr 320px}.morph-object{width:320px;height:320px}}
@media(max-width:1100px){.page-main{padding-top:145px}.page-hero{min-height:490px;grid-template-columns:1.2fr .8fr;gap:16px;padding-bottom:55px}.page-hero h1,.contact-intro h1{font-size:clamp(56px,7.2vw,82px)}.page-lead{font-size:16px}.page-lead br{display:none}.page-apple-scene{max-width:340px}.static-service-grid .service-detail{padding:28px;min-height:360px}.static-service-grid h3{font-size:29px}.contact-page-layout{gap:40px;grid-template-columns:1fr 1.05fr}.inner-page .contact-form{padding:26px}.inner-page .form-row{grid-template-columns:1fr;gap:0}.contact-apple-line .apple-target{width:175px;height:175px}.contact-apple-line{gap:16px}.site-footer nav{gap:18px}.site-footer .back-to-top{margin-left:10px}.effect-content{width:72vw}.effect-core{grid-template-columns:1fr 225px;gap:8px}.morph-object{width:225px;height:225px}.effect-core h2{font-size:7.5vw}.effect-notes{max-width:550px}.partners-hero h1{font-size:7.1vw}}
@media(max-width:760px){[id]{scroll-margin-top:100px}.page-main{padding-top:127px}.page-hero{grid-template-columns:1fr;gap:10px;min-height:0;padding:18px 0 46px}.page-hero h1,.contact-intro h1{font-size:clamp(54px,12.5vw,84px)}.page-hero .eyebrow,.contact-intro .eyebrow{font-size:11px;margin-bottom:25px}.page-lead{font-size:16px;line-height:1.65;margin-top:25px}.text-link{font-size:14px;margin-top:25px;gap:25px}.page-apple-scene{width:min(100%,290px);justify-self:center;margin:20px 0 0}.art-caption{font-size:9px;letter-spacing:1.5px}.collection-top{align-items:flex-start;gap:15px;font-size:10px;letter-spacing:1px;padding-top:22px;margin-bottom:24px}.collection-top>span{font-size:9px;line-height:1.5;max-width:145px;text-align:right}.service-directory{gap:8px;margin-bottom:26px}.service-directory a{font-size:12px;padding:9px 13px}.static-service-grid{grid-template-columns:1fr;gap:16px;padding-bottom:0}.static-service-grid .service-detail{padding:28px 26px;min-height:300px;border-radius:20px}.static-service-grid .service-detail:nth-child(even){transform:none}.static-service-grid .card-top{margin-bottom:27px}.static-service-grid .card-top>span{font-size:10px}.static-service-grid .card-top svg{width:29px;height:29px}.static-service-grid h3{font-size:30px}.static-service-grid p{font-size:16px;line-height:1.65}.static-service-grid .card-foot{font-size:13px;padding-top:25px}.page-closing{flex-direction:column;align-items:flex-start;gap:28px;padding:55px 0 0}.page-closing p{font-size:32px;line-height:1.22}.outline-link{font-size:14px;padding:15px 22px}.site-footer{margin-top:70px;gap:20px;padding-top:26px;padding-bottom:74px;flex-wrap:wrap}.site-footer .footer-caption{font-size:10px}.site-footer nav{width:100%;order:3;justify-content:space-between;gap:12px;margin:3px 0 0;font-size:12px}.site-footer .back-to-top{margin-left:auto;font-size:11px;gap:9px}.site-footer .footer-wordmark{font-size:35px}.home-page .site-footer{padding-left:18px;padding-right:18px}.partners-hero h1{font-size:clamp(50px,11.1vw,78px)}.partner-collection .logo-window{width:calc(100% + 24px);margin:30px 0 0 -12px}.partner-collection .logo-track,.partner-collection .logo-group{gap:12px}.partner-collection .logo-track.reverse{margin-top:12px;margin-left:-72px}.partner-collection .brand-logo{width:190px;height:120px;font-size:36px;border-radius:16px}.partner-collection .brand-arch{font-size:29px}.partner-collection .draft-note{font-size:12px;line-height:1.6;margin-top:22px}.partner-collection .logo-track{animation-name:marquee}.contact-main{padding-top:146px}.contact-page-layout{grid-template-columns:1fr;gap:48px}.contact-intro .page-lead{font-size:16px}.contact-apple-line{margin-top:10px}.contact-apple-line .apple-target{width:185px;height:185px;margin-left:-20px}.contact-apple-line>p{font-size:14px}.contact-intro .contact-direct{gap:12px;margin-top:10px}.contact-intro .contact-direct a{font-size:20px}.brief-panel{padding:0}.form-eyebrow{font-size:11px;letter-spacing:1.8px;margin-bottom:21px}.inner-page .contact-form{padding:26px 22px}.inner-page .contact-form label{font-size:14px;margin-bottom:24px}.inner-page .form-submit{flex-direction:column;align-items:flex-start;gap:20px}.inner-page .form-submit p{font-size:12px}.inner-page .send-button{width:100%;justify-content:space-between;font-size:14px;padding:15px 20px}.inner-page .contact-form textarea{min-height:105px}.home-page .hero{height:220svh}.home-page .approach{height:155svh}.effect-scene{height:300svh}.effect-content{width:100%}.effect-stage{padding-top:112px;padding-bottom:65px;min-height:630px}.effect-core{grid-template-columns:1fr 138px;gap:0}.effect-core h2{font-size:clamp(45px,10.4vw,70px);position:relative;z-index:1}.morph-object{width:170px;height:190px;max-width:none;margin-left:-12px}.effect-content .eyebrow{font-size:10px;letter-spacing:1.1px;margin-bottom:16px}.effect-notes{min-height:143px;margin-top:22px}.effect-step h3{font-size:22px;margin-bottom:13px}.effect-step p{font-size:16px;line-height:1.65}.effect-step p br{display:none}.morph-chapters{gap:24px;margin-top:20px}.morph-chapters li{font-size:12px;padding-top:14px}.morph-chapters li>span{font-size:9px;margin-right:7px}.effect-link{margin-top:28px;font-size:14px}.home-page .effect-content:after{inset:-20px}.home-page .bottom-meta>span{font-size:8px}}
@media(max-width:370px){.effect-core{grid-template-columns:1fr 118px}.effect-core h2{font-size:43px}.morph-object{width:145px;height:170px;margin-left:-8px}.static-service-grid .service-detail{padding:25px 22px}.site-footer .footer-caption{font-size:9px}}
@media(max-height:660px) and (min-width:761px){.effect-stage{min-height:550px;padding-top:85px;padding-bottom:55px}.effect-content .eyebrow{margin-bottom:15px}.effect-core{grid-template-columns:1fr 210px}.effect-core h2{font-size:66px}.morph-object{width:210px;height:185px}.effect-notes{margin-top:12px;min-height:100px}.effect-step h3{font-size:20px;margin-bottom:8px}.effect-step p{font-size:16px}.morph-chapters{margin-top:12px}.effect-link{margin-top:18px}.page-main{padding-top:135px}}
@media(prefers-reduced-motion:reduce){.turning-apple{animation:none}.morph-image,.effect-step{will-change:auto}.apple-orbit{transform:rotate(-25deg)}}
@media print{.page-atmosphere,.page-apple-scene,.morph-object{display:none}.page-main{width:100%;padding:0}.page-hero,.contact-page-layout{display:block}.page-hero h1,.contact-intro h1,.page-lead{color:black}.effect-scene{height:auto}.effect-content{width:100%}.effect-notes{display:block}.effect-step{opacity:1!important;transform:none!important;margin:20px 0}.static-service-grid .service-detail{height:auto;transform:none!important;break-inside:avoid}.static-service-grid p,.static-service-grid h3{color:black}.site-footer{width:100%}}

/* Real client marks retain their original pixels and transparent backgrounds. */
.partner-collection .logo-track{animation-duration:54s}
.partner-collection .logo-track.reverse{animation-duration:49s}
.client-logo{flex:none;transition:border-color .3s,background .3s}
.client-logo .brand-art{display:block;width:calc(100% - 56px);height:98px;overflow:hidden;opacity:.82;transition:filter .45s ease,opacity .35s ease,transform .45s ease}
.client-logo.logo-compact .brand-art{width:164px;height:102px}
.client-logo.logo-color .brand-art{filter:grayscale(1) brightness(0) invert(.93)}
.client-logo:hover,.client-logo:focus-visible{border-color:#ffffff50;background:#ffffff05}
.client-logo:hover .brand-art,.client-logo:focus-visible .brand-art{opacity:1;transform:scale(1.035)}
.client-logo.logo-color:hover .brand-art,.client-logo.logo-color:focus-visible .brand-art{filter:grayscale(0) brightness(1) invert(0)}
.client-logo:focus-visible{outline:2px solid var(--gold);outline-offset:-4px}
.logo-window:focus-within .logo-track{animation-play-state:paused}
.golden-tree-scene{max-width:480px;align-self:center;overflow:visible}
.golden-tree-scene:before{inset:12% 4% 0;background:radial-gradient(ellipse,#cba76315,transparent 70%)}
.golden-tree{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 25px 20px #0004);transform-origin:50% 90%;animation:tree-sway 11s ease-in-out infinite}
.golden-tree-scene .art-caption{bottom:-14px;font-size:11px;letter-spacing:1.7px}
.motion-paused .golden-tree{animation-play-state:paused}
@keyframes tree-sway{0%,100%{transform:rotate(-1deg)}50%{transform:rotate(1deg)}}
@media(max-width:1100px){.golden-tree-scene{max-width:390px}}
@media(max-width:760px){
  .wordmark-image{width:118px;height:22px}.footer-wordmark .wordmark-image{width:110px;height:20px}
  .client-logo .brand-art{width:calc(100% - 36px);height:76px}.client-logo.logo-compact .brand-art{width:120px;height:80px}
  .golden-tree-scene{width:min(100%,330px);margin-top:22px;margin-bottom:12px}.golden-tree-scene .art-caption{font-size:10px;bottom:-9px}
}
@media(prefers-reduced-motion:reduce){.golden-tree{animation:none}.client-logo .brand-art{transition:none}}

/* A soft mobile scrim keeps the portrait film visible behind the story. */
@media(max-width:760px){
  .home-page .film-stage::after{
    content:'';
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(180deg,rgba(0,0,0,.32) 0%,rgba(0,0,0,.44) 32%,rgba(0,0,0,.50) 65%,rgba(0,0,0,.36) 100%);
  }
}
