@font-face{font-family:Poynter;src:url('assets/poynter.ttf') format('truetype');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:40px}body{margin:0;background:#0B0D0F;color:#EEECE5;font-family:Arial,Helvetica,sans-serif;font-weight:400}a{color:inherit;text-decoration:none}button,summary,a{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:2px solid #C1A77D;outline-offset:6px}.skip{position:fixed;top:-60px;left:20px;background:#fff;color:#111;padding:12px;z-index:100}.skip:focus{top:10px}header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw}.brand{display:block;width:175px}.brand img{width:100%;display:block;object-fit:contain}.header-note{font-size:14px;color:#aaa}.header-contact{font-size:14px;border-bottom:1px solid #B49A72;padding-bottom:6px}nav{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:20;display:flex;gap:4px;border:1px solid #ffffff24;border-radius:18px;padding:6px;background:#171d19d9;backdrop-filter:blur(20px);box-shadow:0 10px 30px #0003}nav a{padding:15px 24px;border-radius:12px;font-size:14px;color:#c4c8c0;transition:background .3s,color .3s}nav a:hover,nav a.active{background:#ffffff10;color:#fff}nav .nav-contact{background:#B49A72;color:#11241c}.hero{margin:0 12px;min-height:calc(100svh - 108px);border-radius:26px;background:#1F3A31;position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:36px 4vw 45px}.hero-glow{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 79% 15%,#6d795c66,transparent 55%),radial-gradient(ellipse at 28% 75%,#091b14aa,transparent 65%),linear-gradient(155deg,#25463a,#173429 60%,#10261f);animation:light 14s ease-in-out infinite alternate}.hero-top,.hero-bottom{display:flex;justify-content:space-between;color:#c5ccbd;font-size:12px;letter-spacing:.12em}.hero-copy{text-align:center;padding:90px 0 100px;position:relative;z-index:2}h1{font-weight:400;letter-spacing:-.065em;font-size:clamp(54px,6.5vw,108px);line-height:1.08;margin:0 auto;max-width:1200px}em{font-family:Poynter,Georgia,serif;font-style:normal;letter-spacing:-.045em;color:#B49A72}h1 em{color:#C1A77D}p{font-size:17px;line-height:1.65;color:#aaaead}.hero-copy p{color:#c2ccbf;font-size:17px;line-height:1.55;margin:35px 0 30px}.button{display:inline-block;border:1px solid #c1a77d80;border-radius:999px;padding:16px 27px;font-size:14px;transition:background .3s,color .3s,transform .3s}.button:hover{background:#B49A72;color:#15291f;transform:translateY(-2px)}.hero-line{position:absolute;bottom:-390px;left:50%;width:950px;height:620px;border:1px solid #b49a7245;border-radius:50%;transform:translateX(-50%) rotate(-12deg);z-index:-1}.section{padding:110px 6vw}.eyebrow{font-size:12px;letter-spacing:.15em;color:#b6baa9;margin-bottom:45px}.intro{background:#1F3A31;margin:12px;border-radius:26px;padding-top:100px;padding-bottom:110px}.intro-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:10vw}h2{font-size:clamp(40px,4.9vw,78px);font-weight:400;line-height:1.08;letter-spacing:-.055em;margin:0}h2 em{line-height:1.15}.intro-body{max-width:480px}.intro-body .large{font-size:25px;line-height:1.5;color:#e4e7db;margin:0 0 32px}.intro-body p{color:#bbc6ba}.text-link{display:inline-block;font-size:15px;border-bottom:1px solid #B49A72;padding-bottom:8px;margin-top:20px}.section-top{display:flex;justify-content:space-between;align-items:baseline}.section-top>span{font-size:14px;color:#969a94}.work h2{margin-bottom:64px}.projects{display:grid;grid-template-columns:1fr 1fr;gap:65px 30px}.project-image{height:auto;aspect-ratio:1.48;background:#26372f;overflow:hidden;border-radius:18px;position:relative}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}.project:hover img{transform:scale(1.045)}.project-image.second{background:#443f36}.project-view{position:absolute;right:22px;bottom:22px;padding:13px 20px;border-radius:99px;background:#101614d9;font-size:14px;opacity:0;transform:translateY(6px);transition:.3s}.project:hover .project-view,.project:focus-visible .project-view{opacity:1;transform:none}.project-caption{display:flex;justify-content:space-between;gap:16px;align-items:baseline;margin-top:25px}.project h3{font-size:23px;font-weight:400;letter-spacing:-.03em;margin:0}.project-caption>span{font-size:12px;color:#B49A72;line-height:1.5}.project>p{font-size:15px;max-width:500px;margin:15px 0 0}.project-wide{grid-column:1/-1;width:80%;margin:auto}.project-wide .project-image{aspect-ratio:1.8}.services{background:#1F3A31;border-radius:26px;margin:12px}.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw}.services-grid>div>p{max-width:400px;color:#c2c9bd;margin:30px 0}.service-list{padding-top:0}details{border-top:1px solid #ffffff29}details:last-child{border-bottom:1px solid #ffffff29}summary{cursor:pointer;list-style:none;display:flex;align-items:center;padding:30px 0;gap:25px;font-size:27px;letter-spacing:-.035em}summary::-webkit-details-marker{display:none}.service-num{font-size:12px;letter-spacing:0;color:#B49A72}.toggle{margin-left:auto;font-size:24px;color:#B49A72;transition:transform .3s}details[open] .toggle{transform:rotate(45deg)}details p{font-size:16px;color:#bcc5b8;margin:0 35px 28px;max-width:420px}.process{display:grid;grid-template-columns:.85fr 1fr;gap:8vw;align-items:center}.process-art{height:780px;overflow:hidden;border-radius:20px}.process-art img{height:100%;width:100%;object-fit:cover}.process h2{font-size:clamp(38px,4vw,65px)}.process-copy>p{max-width:420px}.steps{margin-top:40px}.steps>div{display:grid;grid-template-columns:35px 1fr;gap:0 15px;padding:25px 0;border-top:1px solid #ffffff26}.steps span{font-size:12px;color:#B49A72;margin-top:5px}.steps h3{font-size:23px;font-weight:400;margin:0}.steps p{grid-column:2;font-size:15px;margin:10px 0 0;max-width:380px}.contact{margin:12px 12px 0;border-radius:26px 26px 0 0;background:radial-gradient(ellipse at 85% 0%,#43523b55,transparent 55%),#1F3A31;text-align:center;padding-bottom:125px}.contact h2{font-size:clamp(54px,7.8vw,120px)}.contact>p{color:#bbc8ba;margin:30px 0}.gold{background:#B49A72;color:#12251b;border-color:#B49A72}.gold:hover{background:#c3ad89}.contact-rule{height:1px;background:#ffffff25;margin:100px 0 45px}footer{text-align:left;display:flex;justify-content:space-between;align-items:center;gap:30px}footer>div{display:flex;gap:25px;font-size:14px}footer>span{font-size:12px;line-height:1.8;color:#aebcae;text-align:right}@keyframes light{from{opacity:.65;transform:scale(1)}to{opacity:1;transform:scale(1.05)}}@media(min-width:1600px){.section{padding-left:max(6vw,calc((100vw - 1400px)/2));padding-right:max(6vw,calc((100vw - 1400px)/2))}}@media(max-width:800px){header{height:80px}.header-note{display:none}.brand{width:145px}.hero{min-height:calc(100svh - 92px);padding:28px 24px 100px}.hero-top{font-size:10px;gap:30px}.hero-top span:last-child{display:none}.hero-copy{padding:70px 0}h1{font-size:clamp(47px,9.5vw,76px);letter-spacing:-.055em}h1 br{display:none}.hero-bottom span:last-child{display:none}.hero-bottom{font-size:10px}.section{padding:70px 25px}.intro-grid,.services-grid,.process{grid-template-columns:1fr;gap:40px}.eyebrow{margin-bottom:30px}.intro-body .large{font-size:22px}.projects{grid-template-columns:1fr;gap:40px}.project-wide{width:100%;grid-column:auto}.project-wide .project-image{aspect-ratio:1.48}.project-caption{flex-direction:column;gap:8px}.section-top>span{display:none}.work h2{margin-bottom:40px}nav{bottom:12px;max-width:calc(100vw - 24px);width:max-content;padding:5px;gap:0;border-radius:15px}nav a{padding:14px 14px;font-size:12px}nav a:nth-child(4){display:none}.process-art{height:480px;order:2}.process-copy{order:1}.contact h2{font-size:clamp(50px,11vw,85px)}.contact>p br{display:none}.contact-rule{margin:60px 0 30px}footer{flex-wrap:wrap}footer>span{text-align:left}footer>div{gap:18px}.contact{padding-bottom:110px}summary{font-size:24px;padding:25px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Centred wordmark and luminous frosted surfaces. */
header{justify-content:center;height:110px}header .brand{width:310px}header .brand img{max-height:82px;object-fit:contain}nav{background:linear-gradient(125deg,#ffffff24,#ffffff10 48%,#ffffff22);border:1px solid #ffffff35;backdrop-filter:blur(26px) saturate(145%);-webkit-backdrop-filter:blur(26px) saturate(145%);box-shadow:inset 0 1px 0 #ffffff24,inset 0 -1px 0 #ffffff08,0 12px 40px #0004;gap:0}nav a{color:#eceee8;border-radius:12px;position:relative}nav a+a:before{content:"";position:absolute;left:0;top:30%;height:40%;width:1px;background:#ffffff12}nav a.active,nav a:hover{background:#ffffff12}nav .nav-contact{background:linear-gradient(135deg,#b49a7266,#b49a7238);color:#fff;border:1px solid #ddc9a44d;box-shadow:inset 0 1px 0 #ffffff25}.hero{min-height:calc(100svh - 122px)}.service-list{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-content:start}.service-list details,.service-list details:last-child{border:1px solid #ffffff24;border-radius:20px;background:linear-gradient(135deg,#ffffff09,#0b0d0f28);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:inset 0 1px 0 #ffffff0b;transition:background .3s,border-color .3s}.service-list details:hover{background:linear-gradient(135deg,#b49a7215,#ffffff09);border-color:#b49a7255}.service-list summary{padding:26px 22px;font-size:22px;gap:12px;align-items:baseline}.service-list details p{margin:0 22px 26px;font-size:16px;color:#c2cabd}.service-list details[open]{grid-column:1/-1}.service-list .service-num{font-size:12px}.services-grid{grid-template-columns:.9fr 1.1fr}footer .brand{width:210px}.project-view{background:linear-gradient(135deg,#ffffff24,#141b1980);border:1px solid #ffffff35;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:inset 0 1px 0 #ffffff20}
@media(max-width:800px){header{height:94px}header .brand{width:245px}.hero{min-height:calc(100svh - 106px)}.services-grid{grid-template-columns:1fr}.service-list summary{font-size:20px;padding:23px 18px}.service-list details p{margin:0 18px 24px}nav a{padding:14px 13px}footer .brand{width:180px}}
@media(max-width:390px){.service-list{grid-template-columns:1fr}.service-list details[open]{grid-column:auto}}
@font-face{font-family:RomanLight;src:url('assets/roman-light.otf') format('opentype');font-display:swap}
nav a:hover,nav a.active:hover{background:transparent;color:#C1A77D;box-shadow:none;outline:none}nav .nav-contact{background:#ffffff10;color:#eee;border:1px solid #ffffff25;box-shadow:inset 0 1px 0 #ffffff16}nav .nav-contact:hover{background:linear-gradient(135deg,#b49a7266,#b49a7238);color:#fff;border-color:#ddc9a44d;box-shadow:inset 0 1px 0 #ffffff25}
.hero{--pointer-x:70%;--pointer-y:25%}.hero-glow{animation:none;background:radial-gradient(ellipse at var(--pointer-x) var(--pointer-y),#8b97744d,transparent 48%),radial-gradient(ellipse at 20% 85%,#091b14bb,transparent 64%),linear-gradient(150deg,#26483b,#173429 65%,#10261f);transition:opacity .5s}.hero-grain{position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('assets/grain.svg');opacity:.13;mix-blend-mode:soft-light}h1 em{font-family:RomanLight,Poynter,Georgia,serif;font-weight:400;letter-spacing:-.05em}.button,.gold{background:linear-gradient(135deg,#ffffff20,#ffffff09);border:1px solid #ffffff35;backdrop-filter:blur(22px) saturate(140%);-webkit-backdrop-filter:blur(22px) saturate(140%);box-shadow:inset 0 1px 0 #ffffff24,0 8px 24px #0001;color:#eee}.button:hover,.gold:hover{background:linear-gradient(135deg,#b49a723d,#1f3a3166);border-color:#b49a7270;color:#d9c19c}
.intro{background:#0B0D0F}.work{background:#1F3A31;margin:12px;border-radius:26px}.work .project-image{background:#142a20}.projects{display:flex;gap:30px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#b49a7270 #ffffff10;padding-bottom:22px;overscroll-behavior-x:contain}.project,.project-wide{flex:0 0 calc((100% - 30px)/2);width:auto;margin:0;min-width:0;scroll-snap-align:start}.project .project-image,.project-wide .project-image{aspect-ratio:1.48}.project-caption{flex-direction:column;gap:9px}.project>p{color:#c0c9be}.gallery-controls{display:flex;justify-content:flex-end;align-items:center;gap:25px;margin-top:22px}.gallery-controls button{border:1px solid #ffffff29;background:#ffffff08;color:#eee;padding:12px 18px;border-radius:999px;font-size:14px;cursor:pointer;backdrop-filter:blur(12px)}.gallery-controls button:hover{color:#C1A77D;border-color:#b49a7260}.gallery-controls button:disabled{opacity:.35;cursor:default}.gallery-count{font-size:12px;color:#b8c1b2;font-variant-numeric:tabular-nums}.services{background:#0B0D0F;text-align:center}.services-grid{display:block}.services-grid>div>p{max-width:570px;margin:28px auto}.services-grid .button{margin-bottom:55px}.service-list{display:grid;grid-template-columns:1fr;gap:18px}.service-card{position:relative;isolation:isolate;overflow:hidden;border:1px solid #ffffff24;background:#ffffff02;border-radius:22px;min-height:265px;padding:38px 45px;display:flex;flex-direction:column;align-items:center;justify-content:center;outline:none}.service-card:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 84% 25%,#B49A72aa,transparent 56%),linear-gradient(115deg,#182e25 10%,#233b2d 42%,#315944 73%,#6d7950);opacity:0;transition:opacity .6s}.service-card:hover:before,.service-card:focus-visible:before{opacity:1}.service-card:focus-visible{border-color:#B49A72}.service-card h3{font-family:RomanLight,Poynter,Georgia,serif;font-size:clamp(35px,4.4vw,64px);font-weight:400;letter-spacing:-.035em;margin:10px 0 15px}.service-card p{font-size:16px;line-height:1.55;color:#adb4ac;max-width:600px;margin:0;transition:color .4s}.service-card:hover p,.service-card:focus-visible p{color:#e5e8de}.service-card .service-num{color:#B49A72}
@media(max-width:800px){.project,.project-wide{flex-basis:88%;width:auto}.projects{gap:18px}.project-caption{flex-direction:column}.gallery-controls{justify-content:center;gap:16px}.service-list{grid-template-columns:1fr}.service-card{min-height:265px;padding:30px 24px}.services-grid>div>p{margin:25px auto}.services-grid .button{margin-bottom:40px}.service-card h3{font-size:39px}}@media(prefers-reduced-motion:reduce){.projects{scroll-behavior:auto}}
/* Seamless hero atmosphere and quiet service reveals. */
.hero{background:#0B0D0F;border-radius:0;margin:0 12px}.hero-glow{background:radial-gradient(ellipse 65% 80% at 88% 0%,#70896799 0%,#315c47bb 32%,transparent 77%),radial-gradient(ellipse 45% 75% at 0% 0%,#385a40aa 0%,#1f3a3177 37%,transparent 80%);mask-image:linear-gradient(#000 0%,#000 15%,transparent 98%);-webkit-mask-image:linear-gradient(#000 0%,#000 15%,transparent 98%)}.hero-cursor-glow{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle 180px at var(--pointer-x) var(--pointer-y),#8caa7055 0%,#436b4450 25%,#1f3a3125 60%,transparent 100%);mask-image:linear-gradient(#000 0%,#000 68%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#000 68%,transparent 100%)}.hero-grain{opacity:.32;mix-blend-mode:soft-light;mask-image:linear-gradient(#000 0%,#000 65%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#000 65%,transparent 100%)}.hero-line{display:none}h1 em{font-family:Poynter,Georgia,serif;font-weight:400;letter-spacing:-.045em}.services-grid>div>p{margin-bottom:55px}.service-card{min-height:0;padding:33px 35px;display:block;transition:background .5s,border-color .5s}.service-card h3{margin:0;font-size:clamp(35px,4.4vw,64px)}.service-trigger{font:inherit;color:inherit;letter-spacing:inherit;background:none;border:0;padding:8px 0;cursor:pointer;width:100%}.service-trigger:focus-visible{outline:1px solid #B49A72;outline-offset:8px;border-radius:6px}.service-reveal{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .55s ease,opacity .4s ease}.service-reveal>div{overflow:hidden;min-height:0}.service-reveal p{margin:20px auto 8px;max-width:600px}.service-card.is-expanded .service-reveal,.service-card:focus-within .service-reveal{grid-template-rows:1fr;opacity:1}.service-card.is-expanded:before,.service-card:focus-within:before{opacity:1}.service-card.is-expanded p,.service-card:focus-within p{color:#e5e8de}.service-card:hover:before{opacity:0}.service-card.is-expanded:hover:before,.service-card:focus-within:hover:before{opacity:1}@media(hover:hover){.service-card:hover .service-reveal{grid-template-rows:1fr;opacity:1}.service-card:hover:before{opacity:1}.service-card:hover p{color:#e5e8de}}@media(max-width:800px){.hero-cursor-glow{background:radial-gradient(circle 130px at 70% 25%,#8caa7030,transparent 100%)}.service-card{padding:27px 20px;min-height:0}.service-card h3{font-size:39px}.services-grid>div>p{margin-bottom:40px}}
/* Restore the rounded, brighter green hero with a soft circular gradient. */
.hero{background:#1F3A31;border-radius:26px;margin:0 12px}.hero-glow{mask-image:none;-webkit-mask-image:none;background:radial-gradient(circle 520px at var(--pointer-x) var(--pointer-y),#8b977447 0%,#687e5530 35%,transparent 78%),radial-gradient(ellipse at 20% 85%,#091b1490,transparent 64%),linear-gradient(150deg,#234335,#173226 65%,#10261f)}.hero-cursor-glow{display:none}.hero-grain{mask-image:none;-webkit-mask-image:none;opacity:.3}.hero-line{display:block}@media(max-width:800px){.hero-glow{background:radial-gradient(circle 320px at 70% 25%,#8b977447 0%,#687e5530 35%,transparent 78%),radial-gradient(ellipse at 20% 85%,#091b1490,transparent 64%),linear-gradient(150deg,#234335,#173226 65%,#10261f)}}
/* Layered green light, with a fade confined to the bottom edge. */
.hero{justify-content:center;background:#0B0D0F;border-radius:26px 26px 0 0}.hero-glow{background:radial-gradient(circle 520px at var(--pointer-x) var(--pointer-y),#a6b8834d 0%,#799e6740 35%,transparent 78%),radial-gradient(ellipse 65% 70% at 90% 12%,#507d5980 0%,transparent 72%),radial-gradient(ellipse 55% 65% at 6% 48%,#45694e70 0%,transparent 75%),radial-gradient(ellipse 50% 45% at 52% 80%,#10271b55,transparent 85%),linear-gradient(145deg,#2b503e,#224332 58%,#183725);mask-image:linear-gradient(to bottom,#000 0%,#000 78%,#000e 85%,#0007 94%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 78%,#000e 85%,#0007 94%,transparent 100%)}.hero-grain{mask-image:linear-gradient(#000 0%,#000 82%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#000 82%,transparent 100%)}.hero-line{display:none}@media(max-width:800px){.hero-glow{background:radial-gradient(circle 320px at 70% 25%,#a6b8834d 0%,#799e6740 35%,transparent 78%),radial-gradient(ellipse 85% 70% at 90% 12%,#507d5980,transparent 72%),radial-gradient(ellipse 65% 65% at 6% 48%,#45694e70,transparent 75%),linear-gradient(145deg,#2b503e,#224332 58%,#183725)}}
/* Natural colour drift, extending the green before its final fade. */
.hero{min-height:calc(100svh + 20px);padding-bottom:155px}.hero-glow{background:radial-gradient(circle at 70% 25%,#a6b8834d 0%,#799e6740 18%,transparent 46%),radial-gradient(ellipse at 90% 12%,#507d5980 0%,transparent 65%),radial-gradient(ellipse at 6% 48%,#45694e70 0%,transparent 65%),linear-gradient(145deg,#2b503e,#224332 58%,#183725);background-size:115% 115%,140% 125%,135% 120%,100% 100%;background-position:50% 50%,60% 40%,20% 50%,0 0;animation:green-drift 26s ease-in-out infinite alternate;mask-image:linear-gradient(to bottom,#000 0%,#000 83%,#000e 88%,#0009 94%,#0003 98%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 83%,#000e 88%,#0009 94%,#0003 98%,transparent 100%)}.hero-grain{mask-image:linear-gradient(#000 0%,#000 87%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#000 87%,transparent 100%)}@keyframes green-drift{0%{background-position:20% 25%,65% 20%,10% 60%,0 0}50%{background-position:70% 55%,25% 65%,75% 20%,0 0}100%{background-position:40% 75%,80% 45%,30% 75%,0 0}}
.testimonials{padding-top:45px;padding-bottom:120px}.testimonials h2{margin-bottom:65px}.testimonial-layout{display:grid;grid-template-columns:.75fr 1.35fr;gap:6vw;align-items:center}.testimonial-selectors{display:flex;flex-direction:column;gap:12px}.testimonial-selectors button{display:flex;align-items:center;gap:20px;text-align:left;font:inherit;font-size:19px;line-height:1.4;color:#858e86;background:transparent;border:0;border-bottom:1px solid #ffffff18;padding:24px 15px;cursor:pointer;transition:color .3s,background .3s}.testimonial-selectors button span{font-size:12px;color:#B49A72}.testimonial-selectors button[aria-selected=true]{color:#edece3;background:linear-gradient(90deg,#1f3a3155,transparent);border-color:#b49a7260}.testimonial-selectors button:hover{color:#C1A77D}.testimonial-selectors button:focus-visible,.testimonial-next:focus-visible{outline:2px solid #B49A72;outline-offset:4px}.testimonial-stage{position:relative;border:1px solid #ffffff24;border-radius:24px;background:radial-gradient(ellipse at 100% 0%,#54644330,transparent 65%),linear-gradient(135deg,#ffffff07,#1f3a3120);box-shadow:inset 0 1px 0 #ffffff10;backdrop-filter:blur(20px);padding:40px 45px}.testimonial-stage:before{content:"";position:absolute;left:-1px;top:50px;width:2px;height:90px;background:linear-gradient(transparent,#B49A72,transparent)}.testimonial-panel{min-height:315px;animation:quote-in .45s ease}.testimonial-panel[hidden]{display:none}.quote-mark{display:block;font-family:Poynter,Georgia,serif;font-size:90px;line-height:.75;color:#B49A72}.testimonial-panel blockquote{font-family:Poynter,Georgia,serif;font-size:clamp(23px,2.25vw,34px);line-height:1.4;letter-spacing:-.02em;margin:25px 0 40px}.quote-credit{display:flex;justify-content:space-between;gap:20px;font-size:14px;color:#c0c9be}.quote-credit span:last-child{font-size:12px;color:#899486}.testimonial-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff19;margin-top:30px;padding-top:24px}.testimonial-counter{font-size:12px;color:#B49A72;font-variant-numeric:tabular-nums}.testimonial-next{font:inherit;font-size:14px;background:none;border:0;color:#c2c9bd;cursor:pointer;padding:8px 0}.testimonial-next:hover{color:#B49A72}@keyframes quote-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:800px){.hero{min-height:calc(100svh + 10px);padding-bottom:150px}.testimonial-layout{grid-template-columns:1fr;gap:25px}.testimonials h2{margin-bottom:35px}.testimonial-selectors{flex-direction:row;gap:8px;overflow-x:auto}.testimonial-selectors button{font-size:14px;flex:1 0 140px;padding:16px 10px;gap:10px}.testimonial-stage{padding:30px 25px}.testimonial-panel{min-height:310px}.testimonial-panel blockquote{font-size:25px}.quote-credit{flex-direction:column;gap:8px}.testimonials{padding-top:30px;padding-bottom:70px}}@media(prefers-reduced-motion:reduce){.hero-glow{animation:none}.testimonial-panel{animation:none}}
/* Soft, uneven green tails inspired by the supplied gradient reference. */
.hero{min-height:calc(100svh + 150px);padding-bottom:250px;--drift-x:0px;--drift-y:0px}.hero-glow{inset:0 -30px;background:radial-gradient(ellipse 75% 76% at 90% 12%,#507d5999 0%,#355c4240 55%,transparent 84%),radial-gradient(ellipse 60% 85% at 4% 35%,#55795b80 0%,#27442e30 58%,transparent 88%),radial-gradient(ellipse 65% 70% at 65% 25%,#a6b88344 0%,#799e672b 38%,transparent 79%),linear-gradient(150deg,#2b503e,#224332 48%,#183725 67%,#142d21 80%,#0e1b15 91%,#0B0D0F 100%);background-size:120% 110%,135% 115%,120% 115%,100% 100%;transform:translate3d(var(--drift-x),var(--drift-y),0);mask-image:linear-gradient(#000 0%,#000 65%,#000f 78%,#000c 88%,#0006 96%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#000 65%,#000f 78%,#000c 88%,#0006 96%,transparent 100%)}.hero-grain{mask-image:linear-gradient(#000 0%,#000 75%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#000 75%,transparent 100%)}.gold-reveal{position:relative;display:inline-block;--gold-x:50%;--gold-y:50%;--gold-opacity:0}.gold-reveal:after{content:attr(data-text);position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle 130px at var(--gold-x) var(--gold-y),#fff0c9 0%,#d7bd85 32%,transparent 100%);background-clip:text;-webkit-background-clip:text;color:transparent;opacity:var(--gold-opacity);transition:opacity .5s;white-space:nowrap}
.testimonials{padding-top:30px}.testimonial-layout{grid-template-columns:360px minmax(0,570px);justify-content:center;gap:7vw}.testimonial-wheel{width:360px;height:360px;position:relative}.testimonial-wheel:before,.testimonial-wheel:after{content:"";position:absolute;inset:40px;border:1px solid #ffffff20;border-radius:50%;pointer-events:none}.testimonial-wheel:after{inset:65px;border-color:#b49a7235}.wheel-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:11px;letter-spacing:.16em;color:#B49A72;pointer-events:none}.testimonial-selectors{position:absolute;inset:0;display:block;transform:rotate(var(--wheel-turn,0deg));transition:transform 1.1s cubic-bezier(.22,.75,.2,1)}.testimonial-selectors button{position:absolute;left:50%;top:50%;width:185px;min-height:65px;padding:12px;justify-content:center;text-align:center;gap:8px;font-size:15px;border:1px solid #ffffff20;border-radius:14px;background:#111713e8;backdrop-filter:blur(16px);transform:translate(-50%,-50%) rotate(var(--spoke)) translateY(-135px) rotate(calc(-1 * var(--spoke) - var(--wheel-turn,0deg)));transition:transform 1.1s cubic-bezier(.22,.75,.2,1),color .3s,background .3s}.testimonial-selectors button:nth-child(1){--spoke:0deg}.testimonial-selectors button:nth-child(2){--spoke:120deg}.testimonial-selectors button:nth-child(3){--spoke:240deg}.testimonial-selectors button[aria-selected=true]{background:linear-gradient(125deg,#3c5134dd,#1f3a31ee);border-color:#b49a7270;color:#e8d5ad}.testimonial-stage{padding:32px 35px;perspective:1000px}.quote-turner{transform-origin:50% 50%;transform-style:preserve-3d;will-change:transform,opacity}.testimonial-panel{min-height:285px;animation:none}.testimonial-panel blockquote{font-size:clamp(23px,2vw,29px);margin:18px 0 30px}.quote-mark{font-size:72px}.testimonial-footer{margin-top:20px;padding-top:18px}.testimonial-next{font-size:13px}
@media(max-width:800px){.hero{min-height:calc(100svh + 100px);padding-bottom:230px}.testimonial-layout{grid-template-columns:1fr;gap:15px}.testimonial-wheel{width:320px;height:320px;margin:0 auto}.testimonial-selectors{overflow:visible}.testimonial-selectors button{width:155px;font-size:13px;min-height:62px;transform:translate(-50%,-50%) rotate(var(--spoke)) translateY(-117px) rotate(calc(-1 * var(--spoke) - var(--wheel-turn,0deg)))}.testimonial-stage{padding:27px 25px;width:100%;max-width:570px;margin:auto}.testimonial-panel{min-height:295px}.testimonial-panel blockquote{font-size:25px}.hero-glow{background-size:120% 110%,135% 115%,120% 115%,100% 100%}}
@media(prefers-reduced-motion:reduce){.testimonial-selectors,.testimonial-selectors button{transition:none}.hero-glow{transform:none}.gold-reveal:after{display:none}}

/* Compact green atmosphere with soft, staggered lower tails. */
.hero{min-height:calc(100svh - 60px);padding:40px 4vw 105px;overflow:visible;clip-path:inset(0 -30px -135px);border-radius:26px 26px 0 0}
.hero-copy{padding:70px 0 95px}
.hero-glow{inset:0 0 -130px;border-radius:26px 26px 0 0;background:radial-gradient(ellipse at 85% 18%,#8ba96a99 0%,#5e8c5866 23%,transparent 60%),radial-gradient(ellipse at 12% 45%,#6d945c99 0%,transparent 60%),radial-gradient(ellipse at 58% 25%,#a6b88366 0%,transparent 53%),linear-gradient(145deg,#2b503e,#224332 58%,#1f3a31);background-size:160% 150%,180% 160%,170% 155%,100% 100%;mask-image:url('assets/hero-fade.svg');-webkit-mask-image:url('assets/hero-fade.svg');mask-size:100% 100%;-webkit-mask-size:100% 100%;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;animation:green-drift 12s ease-in-out infinite alternate}
.hero-grain{inset:0 0 -130px;border-radius:26px 26px 0 0;opacity:.36;mask-image:url('assets/hero-fade.svg');-webkit-mask-image:url('assets/hero-fade.svg');mask-size:100% 100%;-webkit-mask-size:100% 100%}
@keyframes green-drift{0%{background-position:0% 10%,100% 20%,10% 100%,0 0}50%{background-position:90% 65%,20% 90%,75% 10%,0 0}100%{background-position:35% 100%,80% 0%,100% 70%,0 0}}
.gold-reveal:after{white-space:normal}
.testimonials{background:#0B0D0F;padding:70px 8vw 110px}
.testimonial-direct{max-width:1100px;margin:0 auto;text-align:center}
.testimonial-direct blockquote{font-family:Poynter,Georgia,serif;font-size:clamp(30px,3.5vw,52px);font-weight:400;letter-spacing:-.025em;line-height:1.35;margin:0 0 38px;color:#eeece5}
.testimonial-direct figcaption{font-size:16px;color:#c1a77d}
.testimonial-direct figcaption span{display:block;margin-top:10px;font-size:14px;color:#929b93}
@media(max-width:800px){.hero{min-height:calc(100svh - 50px);padding-bottom:85px}.hero-copy{padding:55px 0 75px}.hero-glow,.hero-grain{inset:0 0 -100px}.testimonials{padding:55px 7vw 80px}}
@media(prefers-reduced-motion:reduce){.hero-glow{animation:none;transform:none}}

/* Stable Kairos green, softly displaced by the pointer. */
.hero-glow{animation:none;transform:none;background:radial-gradient(ellipse at 78% 25%,#4d705b 0%,transparent 63%),radial-gradient(ellipse at 12% 55%,#355a44 0%,transparent 65%),linear-gradient(145deg,#254739,#1f3a31 60%,#173429);background-size:100% 100%}
.gradient-fluid{width:100%;height:100%;display:block;border-radius:inherit;opacity:0}
.gradient-fluid.is-ready{opacity:1}
.testimonial-direct{position:relative;isolation:isolate;max-width:850px;padding:48px 46px 36px;border-radius:30px;text-align:left;outline:none}
.testimonial-direct:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;border:1px solid #ffffff25;background:radial-gradient(ellipse at 100% 0%,#54644325,transparent 65%),linear-gradient(135deg,#ffffff05,#1f3a3115);box-shadow:inset 0 1px 0 #ffffff08;opacity:0;transition:opacity .55s ease}
.testimonial-direct blockquote{font-size:clamp(27px,2.8vw,40px);line-height:1.4;margin:0 0 32px}
.testimonial-direct figcaption{display:flex;justify-content:space-between;align-items:center;opacity:0;transform:translateY(6px);transition:opacity .45s ease,transform .45s ease;color:#c0c9be}
.testimonial-direct figcaption span{display:inline;margin:0;color:#899486}
.testimonial-direct:hover:before,.testimonial-direct:focus:before{opacity:1}
.testimonial-direct:hover figcaption,.testimonial-direct:focus figcaption{opacity:1;transform:none}
.testimonial-direct:focus-visible{outline:1px solid #b49a72;outline-offset:5px}
@media(hover:none){.testimonial-direct:before,.testimonial-direct figcaption{opacity:1}.testimonial-direct figcaption{transform:none}}
@media(max-width:800px){.testimonial-direct{padding:32px 25px}.testimonial-direct blockquote{font-size:27px}}

/* Keep the entire fade within the hero so the next section cannot cut it off. */
.hero{overflow:hidden;clip-path:none;background:#0B0D0F}
.hero-glow,.hero-grain{inset:0;border-radius:26px 26px 0 0}
.testimonial-direct{text-align:center}
.testimonial-direct:after{content:"";position:absolute;left:0;top:42px;width:2px;height:100px;border-radius:2px;background:linear-gradient(transparent,#b49a72 35%,#cfb587 60%,transparent);opacity:0;transition:opacity .55s ease}
.testimonial-direct:hover:after,.testimonial-direct:focus:after{opacity:1}
.testimonial-direct figcaption{justify-content:center;gap:22px}
@media(hover:none){.testimonial-direct:after{opacity:1}}

/* Balance the quote between the adjoining sections. */
.services{padding-bottom:72px}
.testimonials{padding-top:72px;padding-bottom:144px}
@media(max-width:800px){.services{padding-bottom:48px}.testimonials{padding-top:48px;padding-bottom:96px}}

/* Give punctuation and serif overhang room in the gold reveal. */
.gold-reveal{padding:.08em .2em .12em .05em;margin:-.08em -.2em -.12em -.05em;overflow:visible}
.gold-reveal:after{padding:inherit;overflow:visible}
.project-view{transition:background .3s,border-color .3s,color .3s,transform .3s,opacity .3s}
.project-view:hover,.project:focus-visible .project-view{background:linear-gradient(135deg,#b49a723d,#1f3a3166);border-color:#b49a7270;color:#d9c19c;transform:translateY(-2px)}
footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
footer .brand{justify-self:start}
footer>.footer-intention{text-align:center;white-space:nowrap;font-size:14px}
footer>.footer-copyright{justify-self:end;text-align:right;white-space:nowrap;font-size:14px}
@media(max-width:800px){footer{gap:12px}footer .brand{width:clamp(90px,23vw,160px)}footer>.footer-intention,footer>.footer-copyright{font-size:clamp(12px,1.6vw,14px)}footer>.footer-copyright{white-space:normal;max-width:120px}}
@media(max-width:420px){footer{gap:8px}footer>.footer-intention{white-space:normal;max-width:85px}}
/* Portfolio: the homepage's green, charcoal, glass and gold in a quieter layout. */
.portfolio-heading,.case-heading{background:radial-gradient(ellipse at 80% 0%,#3e604b77,transparent 70%),#1f3a31;border-radius:26px;margin:0 12px;padding-top:85px;padding-bottom:95px}
.portfolio-heading h1,.case-heading h1{text-align:left;max-width:1100px;margin:0;font-size:clamp(48px,6vw,94px);line-height:1.08;letter-spacing:-.055em}
.portfolio-heading .eyebrow,.case-heading .eyebrow{font-size:14px;margin-bottom:30px}
.portfolio-overview{padding-top:70px}
.work-index-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px 32px}
.work-index-grid .project{width:100%}
.work-index-grid .project:last-child{grid-column:1/-1;max-width:100%}
.work-index-grid .project:last-child .project-image{aspect-ratio:2.2}
.work-index-grid .project-caption{flex-direction:row;flex-wrap:wrap;align-items:center}
.work-index-grid .project>p{max-width:700px}
.case-back{margin:0 0 38px;font-size:14px}
.case-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:40px;max-width:900px}
.case-tags span{padding:10px 15px;border:1px solid #ffffff20;background:#ffffff06;border-radius:999px;font-size:14px;color:#c2ccbd}
.case-cover{margin:35px 6vw 0;border-radius:24px;overflow:hidden;background:#182d23}
.case-cover img{display:block;width:100%;max-height:720px;object-fit:cover}
.case-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-top:65px;padding-bottom:65px;border-bottom:1px solid #ffffff18;margin:0 6vw;padding-left:0;padding-right:0}
.case-metrics>div{display:flex;flex-direction:column;gap:16px}
.case-metrics strong{font-family:Poynter,Georgia,serif;font-weight:400;font-size:clamp(28px,3.8vw,58px);line-height:1.1;color:#c1a77d}
.case-metrics span{font-size:14px;color:#aeb8ac}
.case-content{display:grid;grid-template-columns:1fr 1.2fr;gap:8vw;padding-top:75px;padding-bottom:65px}
.case-content h2{font-size:clamp(35px,4vw,62px)}
.case-copy{max-width:680px}.case-copy p{margin:0 0 22px;color:#bfc5bf;font-size:18px;line-height:1.65;overflow-wrap:anywhere}
.case-image-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-top:0;padding-bottom:35px}
.case-image-grid img{width:100%;height:100%;aspect-ratio:1.5;object-fit:cover;border-radius:18px;background:#1f3a31}
.case-next{border-top:1px solid #ffffff18;margin:0 6vw;padding-left:0;padding-right:0}
.case-next-link{display:flex;justify-content:space-between;align-items:center;gap:30px}.case-next-link h2{font-size:clamp(35px,4.5vw,68px)}.case-next-link .button{white-space:nowrap}
.portfolio-page .contact{margin-top:0}
@media(max-width:800px){.portfolio-heading,.case-heading{padding:55px 7vw 60px}.work-index-grid{grid-template-columns:1fr;gap:45px}.work-index-grid .project:last-child{grid-column:auto}.work-index-grid .project:last-child .project-image{aspect-ratio:1.48}.work-index-grid .project-caption{flex-direction:column;align-items:flex-start}.case-content{grid-template-columns:1fr;gap:30px;padding-top:55px;padding-bottom:30px}.case-metrics{gap:18px}.case-metrics strong{font-size:28px}.case-metrics span{font-size:14px}.case-tags{gap:8px}.case-tags span{font-size:14px}.case-image-grid{grid-template-columns:1fr;gap:18px}.case-next-link{align-items:flex-start;flex-direction:column}.case-cover{margin:25px 6vw 0}.case-copy p{font-size:17px}}
.case-results{display:grid;grid-template-columns:1fr 1fr;gap:30px}.case-results article{padding:25px 0;border-top:1px solid #b49a7235}.case-results h3{font-weight:400;font-size:23px;line-height:1.3;margin:0 0 15px;color:#eeece5}.case-results p{font-size:17px;margin:0}.case-visit{margin-top:35px}@media(max-width:800px){.case-results{grid-template-columns:1fr;gap:12px}}

/* Work overview: centred dark opening, equally weighted project rows. */
.work-overview-page .portfolio-heading{position:relative;isolation:isolate;text-align:center;background:#0B0D0F;padding-top:80px;padding-bottom:95px;overflow:hidden}
.work-overview-page .portfolio-heading:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at var(--work-x,75%) var(--work-y,40%),#1f3a3155,transparent 65%);transition:background .2s}
.work-overview-page .portfolio-heading h1{text-align:center;margin:auto}
.work-overview-page .portfolio-overview{position:relative;isolation:isolate;overflow:hidden;background:#1f3a31;border-radius:26px;margin:0 12px;padding-top:65px;padding-bottom:65px}
.work-atmosphere{position:absolute;inset:-70px;z-index:-1;background:radial-gradient(ellipse at 80% 20%,#476a4c66,transparent 60%),radial-gradient(ellipse at 15% 75%,#102b2288,transparent 65%);transform:translate3d(var(--work-dx,0px),var(--work-dy,0px),0);transition:transform 1s ease-out;pointer-events:none}
.work-overview-page .work-index-grid{display:flex;flex-direction:column;gap:30px}
.work-overview-page .work-index-grid .project{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:5vw;max-width:none;min-width:0;background:#0b0d0f18;border:1px solid #ffffff16;border-radius:24px;padding:24px}
.work-overview-page .work-index-grid .project .project-image{aspect-ratio:1.48;border-radius:16px}
.work-overview-page .project-info{padding:20px 20px 20px 0}
.work-overview-page .project-caption{display:block}.work-overview-page .project-caption h3{font-size:clamp(25px,2.8vw,42px);line-height:1.1;letter-spacing:-.035em;font-weight:400;margin:0 0 18px}
.work-overview-page .project-caption>span{font-size:14px;line-height:1.5;color:#bac9b9}
.work-overview-page .project-info p{font-size:17px;color:#c1ccbf;margin:24px 0}
.work-overview-page .project-view{display:none}
.work-overview-page .project:hover .button{background:linear-gradient(135deg,#b49a723d,#1f3a3166);border-color:#b49a7270;color:#d9c19c;transform:translateY(-2px)}
.work-services{display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:7vw;padding-top:110px;padding-bottom:110px}
.work-services-copy h2{font-size:clamp(36px,4.1vw,65px)}.work-services-copy p{max-width:470px;margin-top:30px}
.work-service-boxes{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.work-service-box{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;min-height:210px;padding:30px;border:1px solid #ffffff24;background:#ffffff02;border-radius:22px}
.work-service-box:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 84% 25%,#B49A72aa,transparent 56%),linear-gradient(115deg,#182e25 10%,#233b2d 42%,#315944 73%,#6d7950);opacity:0;transition:opacity .6s}
.work-service-box:hover:before,.work-service-box:focus-visible:before{opacity:1}.work-service-box h3{font-weight:400;font-size:clamp(22px,2vw,31px);line-height:1.2;letter-spacing:-.03em;margin:25px 0 0}.work-service-number{color:#B49A72;font-size:14px}
@media(max-width:800px){.work-overview-page .portfolio-heading{padding:55px 7vw 65px}.work-overview-page .portfolio-overview{padding:30px 5vw}.work-overview-page .work-index-grid .project{grid-template-columns:1fr;gap:5px;padding:16px}.work-overview-page .project-info{padding:20px 7px}.work-services{grid-template-columns:1fr;gap:35px;padding:70px 7vw}.work-service-box{padding:22px;min-height:180px}.work-service-box h3{font-size:25px}}
@media(prefers-reduced-motion:reduce){.work-atmosphere{transform:none;transition:none}}

.work-overview-page .portfolio-heading:before{background:radial-gradient(ellipse 58% 85% at 50% 48%,#344c3f22 0%,#25392f0e 45%,transparent 80%);transition:none}
/* Kingsgate case study: restore the visual and interactive story. */
.kg-section{padding-top:65px;padding-bottom:65px}.kg-section h2{margin-bottom:35px}.kg-lead{max-width:760px;font-size:21px;line-height:1.6;margin:0 0 45px}.kg-section .eyebrow{font-size:14px;margin-top:35px;margin-bottom:25px}
.kg-feature{display:block;width:100%;height:570px;border:0;background:transparent;margin:25px 0 40px}.kg-feature[src*="palette"]{height:460px}.kg-feature[src*="responsive"]{height:850px}
.kg-scope-grid,.kg-logo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.kg-scope-card{border:1px solid #ffffff24;border-radius:20px;overflow:hidden;background:#ffffff03;transition:border-color .3s,transform .4s}.kg-scope-card:hover{transform:translateY(-5px);border-color:#b49a7280}.kg-scope-card img,.kg-visual-card img{display:block;width:100%;aspect-ratio:1.48;object-fit:cover}.kg-scope-card>div{padding:25px}.kg-scope-card h3,.kg-visual-card h3{font-family:Poynter,Georgia,serif;font-size:30px;font-weight:400;margin:0 0 15px}.kg-scope-card p{font-size:16px;margin:0}.kg-logo-grid{margin-top:35px}.kg-visual-card img{border-radius:16px;margin-bottom:25px}.kg-visual-card>span{color:#b49a72;font-size:14px;display:block;margin-bottom:15px}.kg-visual-card p{font-size:17px}
.kg-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.kg-type-card{padding:38px;border:1px solid #ffffff20;border-radius:22px;background:radial-gradient(ellipse at 100% 0%,#1f3a3144,transparent 70%)}.kg-type-card h3{font-size:30px;font-weight:400;margin:0}.kg-type-sample{font-size:110px;line-height:1.3;color:#c1a77d}.kg-type-card.serif .kg-type-sample,.kg-type-card.serif .kg-alphabet,.kg-type-card.serif blockquote{font-family:Georgia,serif}.kg-alphabet{font-size:clamp(15px,1.5vw,22px);line-height:1.7;overflow-wrap:anywhere}.kg-type-card blockquote{font-size:24px;line-height:1.5;margin:30px 0}.kg-type-card dl{display:grid;grid-template-columns:80px 1fr;gap:15px;font-size:16px;line-height:1.5}.kg-type-card dt{color:#c1a77d}.kg-type-card dd{margin:0;color:#aeb8ae}
.kg-web-tags{display:flex;gap:20px;flex-wrap:wrap;color:#c1a77d;font-size:14px}.kg-marketing-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.kg-gallery-item{padding:0;background:#ffffff03;border:1px solid #ffffff20;border-radius:20px;overflow:hidden;text-align:left;color:inherit;cursor:pointer;font:inherit}.kg-gallery-item img{width:100%;display:block;aspect-ratio:1.5;object-fit:cover;transition:transform .6s}.kg-gallery-item:hover img{transform:scale(1.03)}.kg-gallery-item>span{display:block;padding:25px}.kg-gallery-item strong{display:block;font-size:24px;font-weight:400}.kg-gallery-item small{display:block;color:#b49a72;margin-top:10px;font-size:14px}.kg-lightbox{width:min(1100px,94vw);max-height:90svh;background:#101713;color:#eee;border:1px solid #b49a7255;border-radius:20px;padding:20px}.kg-lightbox::backdrop{background:#050907df;backdrop-filter:blur(12px)}.kg-lightbox img{display:block;max-width:100%;max-height:70svh;margin:auto;object-fit:contain}.kg-lightbox p{text-align:center}.kg-lightbox-close{display:block;margin:0 0 15px auto;border:1px solid #ffffff35;border-radius:999px;background:#ffffff08;color:#eee;padding:10px 20px;font-size:14px;cursor:pointer}
@media(max-width:800px){.kg-section{padding-top:45px;padding-bottom:45px}.kg-scope-grid,.kg-logo-grid,.kg-type-grid,.kg-marketing-grid{grid-template-columns:1fr}.kg-type-card{padding:27px}.kg-lead{font-size:18px}.kg-feature{height:440px}.kg-feature[src*="palette"]{height:1300px}.kg-feature[src*="responsive"]{height:650px}.kg-type-card dl{grid-template-columns:70px 1fr}.kg-type-sample{font-size:90px}}
/* Kingsgate: an editorial rhythm around the three core interactions. */
.kingsgate-story .case-heading{background:radial-gradient(ellipse at 50% 30%,#344c3f20,transparent 70%),#0B0D0F;text-align:center;padding-top:60px;padding-bottom:55px}.kingsgate-story .case-heading h1{text-align:center;margin:auto;font-size:clamp(50px,6.4vw,100px)}.kingsgate-story .case-back{display:block;width:max-content;margin:0 0 35px}.kg-opening{max-width:630px;margin:30px auto;font-size:20px}.kg-project-meta{display:flex;justify-content:center;gap:25px;color:#b3bcb2;font-size:14px;line-height:1.6}.kingsgate-story .case-cover{margin-top:0}.kingsgate-story .case-metrics{padding-top:50px;padding-bottom:50px}.kg-context{display:grid;grid-template-columns:1fr 1.1fr;gap:8vw;padding-top:100px;padding-bottom:95px}.kg-context .eyebrow{font-size:14px;margin-bottom:30px}.kg-chapter-links{display:flex;flex-wrap:wrap;gap:15px 25px;margin-top:30px;font-size:14px;color:#c1a77d}.kg-chapter-links a{border-bottom:1px solid #b49a7235;padding-bottom:8px}.kingsgate-story .kg-section{padding-top:65px;padding-bottom:65px}.kingsgate-story #branding{background:#1f3a31;border-radius:26px;margin:0 12px}.kingsgate-story .kg-section>h2{max-width:950px}.kingsgate-story .kg-lead{max-width:780px}.kg-section-intro{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:start;margin-bottom:40px}.kg-section-intro h2{font-size:clamp(36px,4.4vw,68px);margin:0}.kg-section-intro p{margin:0;font-size:18px}.kingsgate-story .kg-feature{margin-bottom:25px}.kingsgate-story .kg-logo-grid{gap:30px}.kingsgate-story .kg-type-card{background:#ffffff03}.kg-outcomes{background:#1f3a3125;margin:25px 12px 0;border-radius:26px}.kg-outcomes .eyebrow{font-size:14px}.kg-outcome-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:55px}.kg-outcome-grid article{border-top:1px solid #b49a7240;padding-top:25px}.kg-outcome-grid span{font-size:14px;color:#b49a72}.kg-outcome-grid h3{font-size:26px;font-weight:400;line-height:1.25;margin:22px 0 16px}.kg-outcome-grid p{font-size:17px;margin:0}.kg-closing{text-align:center;padding-top:90px;padding-bottom:90px}.kg-closing>p{font-size:clamp(30px,4vw,56px);font-family:Poynter,Georgia,serif;line-height:1.3;color:#eeece5;margin:0}.kingsgate-story .case-next{padding-top:60px;padding-bottom:65px}
@media(max-width:800px){.kg-context,.kg-section-intro{grid-template-columns:1fr;gap:25px}.kg-context{padding-top:65px;padding-bottom:60px}.kg-project-meta{flex-direction:column;gap:8px}.kg-opening{font-size:18px}.kg-outcome-grid{grid-template-columns:1fr;gap:35px}.kg-closing{padding-top:60px;padding-bottom:60px}.kingsgate-story .kg-section{padding-top:45px;padding-bottom:45px}}
/* Glass metrics and distinct green chapter headers. */
.kingsgate-story .case-metrics{margin:25px 6vw 0;padding:40px;position:relative;isolation:isolate;border:1px solid #ffffff24;border-radius:26px;background:radial-gradient(ellipse at 100% 0%,#54644325,transparent 65%),linear-gradient(135deg,#ffffff05,#1f3a3115);box-shadow:inset 0 1px 0 #ffffff10;backdrop-filter:blur(20px)}
.kingsgate-story .case-metrics:before{content:"";position:absolute;left:-1px;top:30%;height:40%;width:2px;background:linear-gradient(transparent,#b49a72,transparent)}
.kg-chapter-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-top:0;padding-bottom:70px}.kg-chapter-cards .work-service-box{min-height:170px;justify-content:center;align-items:center;text-align:center}.kg-chapter-cards h3{margin:0;font-size:28px}
.kg-chapter-header{background:#1f3a31;border-radius:26px;margin:0 12px;padding-top:55px;padding-bottom:55px}.kg-chapter-header .eyebrow{font-size:14px;margin-bottom:25px}.kg-chapter-header h2{max-width:1000px;margin-bottom:25px}.kg-chapter-header .kg-lead{margin:0;max-width:800px;font-size:19px}
.kg-chapter-feature{padding-top:45px;padding-bottom:70px;background:#0B0D0F}.kg-chapter-feature .kg-feature{margin-top:0}.kg-digital-feature{display:flex;flex-direction:column;align-items:center}.kg-digital-feature .kg-feature{max-width:880px;width:100%;margin:25px auto}.kg-digital-feature>.button{align-self:center}.kg-web-tags{justify-content:center}
.kg-compact{display:grid;grid-template-columns:.85fr 1.3fr;gap:6vw;align-items:center;padding-top:50px;padding-bottom:65px}.kg-compact h2{font-size:clamp(35px,4.2vw,64px)}.kg-compact>div>p{max-width:380px;font-size:17px;margin-top:25px}
.kg-palette-fan{position:relative;display:flex;gap:0;align-items:center;min-height:290px;padding:20px 0 20px 15px}.kg-swatch{flex:1;min-width:0;height:240px;margin-left:-15px;position:relative;border:1px solid #ffffff30;border-radius:17px;padding:22px 16px;background:var(--swatch);color:#eeece5;text-align:left;display:flex;flex-direction:column;justify-content:flex-end;gap:12px;transform:rotate(calc((var(--i) - 1.5)*3deg));box-shadow:0 10px 25px #0003;transition:transform .5s,margin .5s;cursor:pointer;font:inherit}.kg-swatch.light{color:#17251d}.kg-swatch>span{font-size:14px}.kg-swatch>span:first-child{margin-bottom:auto}.kg-swatch strong{font-family:Poynter,Georgia,serif;font-weight:400;font-size:24px;line-height:1.1}.kg-swatch small{font-size:14px;line-height:1.35;max-height:0;overflow:hidden;opacity:0;transition:opacity .3s,max-height .4s}.kg-swatch:hover,.kg-swatch:focus-visible{transform:translateY(-12px) rotate(0deg);z-index:2}.kg-swatch:hover small,.kg-swatch:focus-visible small{max-height:60px;opacity:1}.kg-palette-fan:hover .kg-swatch,.kg-palette-fan:focus-within .kg-swatch{margin-left:4px}
.kg-type-pair{border:1px solid #ffffff20;border-radius:22px;padding:25px 30px;background:#ffffff03}.kg-type-pair article+article{border-top:1px solid #ffffff20;margin-top:24px;padding-top:24px}.kg-type-pair article>span{font-size:14px;color:#b49a72}.kg-type-pair h3{font-size:20px;font-weight:400;margin:12px 0}.kg-pair-example{font-size:21px;line-height:1.4;color:#eee}.kg-pair-example.serif{font-family:Georgia,serif;font-size:30px}.kg-type-pair p{font-size:14px;color:#929c92;margin-bottom:0}
@media(max-width:800px){.kingsgate-story .case-metrics{padding:25px;gap:20px}.kg-chapter-cards{grid-template-columns:1fr;gap:14px;padding-bottom:45px}.kg-chapter-cards .work-service-box{min-height:115px}.kg-compact{grid-template-columns:1fr;gap:25px}.kg-palette-fan{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:10px 0}.kg-swatch,.kg-palette-fan:hover .kg-swatch{margin:0;transform:none;height:210px}.kg-chapter-header{padding-top:40px;padding-bottom:40px}.kg-chapter-feature{padding-top:30px;padding-bottom:50px}.kg-type-pair{padding:25px}.kg-chapter-header .kg-lead{font-size:17px}}
@media(hover:none){.kg-swatch small{opacity:1;max-height:60px}}
/* Kingsgate: connected scenes and deliberate discovery. */
.kingsgate-story .kg-chapter-header,.kingsgate-story #branding{position:relative;isolation:isolate;background:transparent;border-radius:0;margin:0;padding-top:130px;padding-bottom:100px;overflow:visible;text-align:center}
.kingsgate-story .kg-chapter-header:before{content:"";position:absolute;inset:-65px 0 -120px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 70% 55% at 83% 32%,#365d49b0,transparent 76%),radial-gradient(ellipse 60% 70% at 7% 15%,#1f3a31dd,transparent 78%),radial-gradient(ellipse 55% 50% at 60% 10%,#284c3b90,transparent 80%);animation:kg-atmosphere 18s ease-in-out infinite alternate}
.kingsgate-story .kg-chapter-header:after{content:"";position:absolute;inset:-65px 0 -120px;z-index:-1;pointer-events:none;background:url('/assets/grain.svg');opacity:.08;mask-image:linear-gradient(transparent,#000 20%,#000 55%,transparent)}
.kingsgate-story .kg-chapter-header h2,.kingsgate-story .kg-chapter-header .kg-lead{margin-left:auto;margin-right:auto}.kingsgate-story .kg-chapter-header h2{max-width:900px}.kingsgate-story .kg-chapter-header .kg-lead{max-width:630px}.kingsgate-story .kg-chapter-feature{background:transparent;padding-top:20px;padding-bottom:90px}
@keyframes kg-atmosphere{from{transform:translateY(-8px);opacity:.82}to{transform:translateY(12px);opacity:1}}
.kg-identity-reveal{margin:0 auto 35px;max-width:980px;text-align:center}.kg-identity-reveal img{width:100%;display:block;max-height:480px;object-fit:contain;border-radius:22px;background:#101512}.kg-identity-reveal figcaption,.kg-scene-caption{font-size:16px;color:#aeb8ae;text-align:center;margin:28px 0}
.kg-discovery{max-width:1100px;margin:0 auto;border-bottom:1px solid #b49a7230}.kg-discovery summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:22px 0;color:#d5c2a4;font-size:17px}.kg-discovery summary::-webkit-details-marker{display:none}.kg-discovery summary:after{content:'+';font-size:26px;font-weight:300}.kg-discovery[open] summary:after{content:'−'}.kg-discovery summary:focus-visible{outline:2px solid #b49a72;outline-offset:8px}.kg-discovery-content{padding:20px 0 40px}.kg-discovery .kg-logo-grid p{font-size:16px}
.kg-brand-system{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:7vw;padding-top:30px;padding-bottom:110px}.kg-brand-system h2{font-size:clamp(36px,4vw,62px)}.kg-brand-system>div>p{max-width:350px;margin-top:25px}.kg-brand-system .eyebrow{font-size:14px;line-height:1.6}.kg-system-tabs{display:flex;gap:26px;border-bottom:1px solid #ffffff20;margin-bottom:25px}.kg-system-tabs button{background:none;border:0;border-bottom:1px solid transparent;color:#aeb8ae;padding:15px 0;font:inherit;font-size:16px;cursor:pointer}.kg-system-tabs button[aria-selected=true]{color:#d5c2a4;border-color:#b49a72}.kg-system-feature [hidden]{display:none}.kg-system-feature [role=tabpanel]{min-height:330px}.kg-brand-system .kg-type-pair{padding:20px 25px}.kg-brand-system .kg-pair-example{font-size:18px}.kg-brand-system .kg-pair-example.serif{font-size:26px}
.kingsgate-story .kg-marketing-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:25px;padding-bottom:20px;scrollbar-width:thin;scrollbar-color:#b49a7260 transparent}.kg-marketing-grid .kg-gallery-item{flex:0 0 84%;scroll-snap-align:start}.kg-marketing-grid .kg-gallery-item img{aspect-ratio:1.8;object-fit:contain;background:#121714}.kg-gallery-controls{display:flex;justify-content:space-between;align-items:center;margin:25px 0;font-size:14px;color:#b49a72}.kg-gallery-controls>div{display:flex;gap:12px}.kg-gallery-controls button{background:#ffffff05;border:1px solid #ffffff25;border-radius:999px;color:#ddd;padding:12px 20px;font:inherit;cursor:pointer;transition:background .3s}.kg-gallery-controls button:hover{background:#1f3a31}.kg-gallery-controls button:disabled{opacity:.35;cursor:default}
.kingsgate-story .kg-outcomes{background:transparent;border-radius:0;margin:0;padding-top:20px;padding-bottom:30px}.kg-outcomes .kg-discovery-content>h2{font-size:clamp(32px,4vw,60px)}.kg-outcomes .kg-outcome-grid{margin-top:35px}.kg-closing{padding-top:100px;padding-bottom:120px}
.kg-motion-ready .kg-enter{opacity:0;transform:translateY(24px);transition:opacity 1s ease,transform 1s cubic-bezier(.2,.7,.2,1)}.kg-motion-ready .kg-enter.is-visible{opacity:1;transform:none}
@media(max-width:800px){.kingsgate-story .kg-chapter-header,.kingsgate-story #branding{padding-top:95px;padding-bottom:65px}.kg-brand-system{grid-template-columns:1fr;gap:30px;padding-bottom:60px}.kg-system-feature [role=tabpanel]{min-height:0}.kg-marketing-grid .kg-gallery-item{flex-basis:92%}.kg-gallery-item>span{padding:20px}.kg-gallery-controls button{padding:10px 15px}.kg-identity-reveal img{min-height:240px}.kg-closing{padding-top:65px;padding-bottom:75px}}
@media(prefers-reduced-motion:reduce){.kingsgate-story .kg-chapter-header:before{animation:none}.kg-motion-ready .kg-enter{opacity:1;transform:none;transition:none}}
/* Kingsgate refinements: visual chapter invitations and quieter glass surfaces. */
.kg-context .case-copy{max-width:560px;align-self:center}.kg-context{padding-bottom:65px}.kg-chapter-cards .work-service-box{padding:0;display:block;text-align:left;min-height:0;background:#ffffff03}.kg-chapter-preview{overflow:hidden;height:220px;position:relative}.kg-chapter-preview img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s,opacity .5s}.kg-chapter-cards .work-service-box:first-child img{object-fit:contain;background:#121714}.kg-chapter-cards .work-service-box:nth-child(2) img{object-position:top}.kg-chapter-cards .work-service-box:before{z-index:1;pointer-events:none;opacity:0;mix-blend-mode:soft-light}.kg-chapter-cards .work-service-box:hover:before,.kg-chapter-cards .work-service-box:focus-visible:before{opacity:.7}.kg-chapter-cards .work-service-box:hover img{transform:scale(1.035)}.kg-chapter-cards h3{position:relative;z-index:2;font-size:23px;padding:23px 25px}
.kingsgate-story .kg-chapter-header,.kingsgate-story #branding{margin:0 12px;border-radius:28px 28px 0 0;overflow:hidden;padding-top:95px;padding-bottom:115px;background:radial-gradient(ellipse 80% 100% at 88% 0%,#52704ddd 0%,transparent 70%),radial-gradient(ellipse 85% 95% at 5% 5%,#315d46 0%,transparent 78%),linear-gradient(180deg,#1f3a31 0%,#1f3a3170 42%,#0b0d0f00 100%)}
.kingsgate-story .kg-chapter-header:before{inset:0;background:radial-gradient(ellipse 60% 75% at 65% 0%,#54744b75,transparent 85%);mask-image:linear-gradient(#000,transparent 95%)}.kingsgate-story .kg-chapter-header:after{inset:0}
.kg-logo-grid .kg-visual-card{border:1px solid #ffffff26;border-radius:22px;background:#ffffff03;padding:25px;display:flex;flex-direction:column}.kg-logo-grid .kg-visual-card img{border-radius:12px;aspect-ratio:1.45;object-fit:contain;background:#101512}.kg-logo-grid .kg-visual-card h3{font-family:Arial,sans-serif;font-size:25px}.kg-logo-grid .kg-visual-card p{margin-top:auto;padding-top:20px;margin-bottom:0}
.kg-palette-fan{gap:12px;padding:0;min-height:330px}.kg-swatch,.kg-palette-fan:hover .kg-swatch,.kg-palette-fan:focus-within .kg-swatch{margin:0;transform:none;height:300px;padding:20px 14px}.kg-swatch:hover,.kg-swatch:focus-visible{transform:scale(1.04);z-index:2}.kg-swatch strong{font-size:22px}.kg-swatch small{opacity:1;max-height:65px;min-height:38px}.kg-system-feature [role=tabpanel]{min-height:330px}.kg-system-feature .kg-type-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px;min-height:330px;box-sizing:border-box;align-items:center}.kg-type-pair article+article{border-top:0;border-left:1px solid #ffffff20;margin:0;padding:0 0 0 20px}.kg-type-pair article{min-width:0}.kg-brand-system .kg-pair-example.serif{font-size:25px}
.kingsgate-story .kg-digital-feature{padding-bottom:150px}.kg-marketing-grid,.kg-gallery-controls{max-width:700px;margin-left:auto;margin-right:auto}.kg-marketing-grid .kg-gallery-item{flex-basis:88%}.kg-gallery-item strong{font-size:21px}.kg-gallery-item>span{padding:20px}.kg-gallery-item img{aspect-ratio:1.55}
.kingsgate-story .kg-outcomes{margin:30px 12px 0;border-radius:26px;padding-top:65px;padding-bottom:70px;background:#151b17}.kg-outcomes>h2{font-size:clamp(36px,4vw,62px)}.kg-outcomes .kg-outcome-grid article{border:1px solid #ffffff24;border-radius:22px;padding:28px;background:#ffffff02;display:flex;flex-direction:column;min-height:260px}.kg-outcome-grid h3{margin-top:20px}.kg-outcome-grid p{margin-top:auto;padding-top:25px}.kingsgate-story .kg-closing{padding-top:160px;padding-bottom:160px}.kg-closing>p{line-height:1.5;max-width:1000px;margin:auto}.kg-closing em{display:inline-block;margin-top:20px}
.kingsgate-story .case-next{padding-top:25px;padding-bottom:100px}.case-next-link{border:1px solid #ffffff28;border-radius:26px;padding:40px;background:radial-gradient(ellipse at 100% 0%,#54644325,transparent 65%),linear-gradient(135deg,#ffffff08,#1f3a3115);box-shadow:inset 0 1px 0 #ffffff12;backdrop-filter:blur(18px);gap:25px}.kingsgate-story .case-next>.eyebrow{margin-bottom:25px}
@media(max-width:800px){.kg-chapter-preview{height:210px}.kg-chapter-cards h3{padding:20px}.kg-logo-grid .kg-visual-card{padding:22px}.kg-palette-fan{min-height:0;gap:12px}.kg-swatch,.kg-palette-fan:hover .kg-swatch{height:230px}.kg-system-feature [role=tabpanel]{min-height:0}.kg-system-feature .kg-type-pair{min-height:0;gap:18px;padding:20px}.kg-brand-system .kg-pair-example.serif{font-size:22px}.kg-type-pair article+article{padding-left:18px}.kingsgate-story .kg-chapter-header,.kingsgate-story #branding{padding-top:65px;padding-bottom:85px}.kingsgate-story .kg-digital-feature{padding-bottom:100px}.kg-gallery-controls,.kg-marketing-grid{max-width:100%}.kg-outcomes .kg-outcome-grid article{min-height:230px}.kingsgate-story .kg-closing{padding-top:100px;padding-bottom:100px}.case-next-link{padding:28px;flex-wrap:wrap}}
@media(max-width:480px){.kg-system-feature .kg-type-pair{grid-template-columns:1fr;gap:22px}.kg-type-pair article+article{border-left:0;border-top:1px solid #ffffff20;padding:22px 0 0}}
/* Soft, continuous chapter light and unified glass cards. */
.kingsgate-story .kg-context{padding-top:140px;padding-bottom:120px;gap:10vw}.kingsgate-story .kg-chapter-cards{padding-bottom:100px}
.kingsgate-story .kg-chapter-header,.kingsgate-story #branding{background:transparent;isolation:isolate;border:0;box-shadow:none;padding-top:105px;padding-bottom:125px;border-radius:28px 28px 0 0}
.kingsgate-story .kg-chapter-header:before{inset:0;transform:none;animation:none;opacity:1;background:radial-gradient(ellipse 75% 110% at 87% -5%,#62845a 0%,#3b644b 40%,transparent 79%),radial-gradient(ellipse 80% 78% at 4% 0%,#416f52 0%,#1f3a31 43%,transparent 89%),radial-gradient(ellipse 60% 92% at 48% -20%,#345d46 0%,transparent 88%);mask-image:none;z-index:-2}.kingsgate-story .kg-chapter-header:after{inset:0;background:url('/assets/grain.svg');opacity:.075;z-index:-1;mask-image:linear-gradient(#000,transparent 96%)}
.kg-evolution-view{max-width:1000px;margin:0 auto 65px}.kg-evolution-tabs{display:flex;justify-content:center;gap:10px;margin:0 auto 35px;width:max-content;max-width:100%;padding:7px;border:1px solid #ffffff16;border-radius:999px;background:#ffffff05;backdrop-filter:blur(16px)}.kg-evolution-tabs button{font:inherit;font-size:15px;color:#aeb8ae;border:1px solid transparent;border-radius:999px;padding:12px 23px;background:transparent;cursor:pointer}.kg-evolution-tabs button[aria-selected=true]{color:#eee;background:linear-gradient(135deg,#ffffff18,#1f3a3135);border-color:#ffffff20;box-shadow:inset 0 1px 0 #ffffff12}.kg-evolution-tabs button:hover{color:#d9c19c}.kg-evolution-view [hidden]{display:none}.kg-evolution-caption{text-align:center;font-size:16px;color:#aeb8ae;margin-bottom:25px}.kg-evolution-view .kg-feature{margin:0}.kg-identity-reveal{margin-bottom:0}
.kg-swatch small{opacity:0;max-height:0;min-height:0;transition:opacity .3s,max-height .3s}.kg-swatch{border-color:#ffffff22;outline:1px solid transparent;outline-offset:3px}.kg-swatch:hover,.kg-swatch:focus-visible{outline-color:#b49a72;border-color:#d5bc91}.kg-swatch:hover small,.kg-swatch:focus-visible small{opacity:1;max-height:65px}
.kingsgate-story .case-metrics,.kingsgate-story .kg-type-pair article,.kingsgate-story .kg-visual-card,.kingsgate-story .kg-outcome-grid article,.kingsgate-story .case-next-link{position:relative;isolation:isolate;border:1px solid #ffffff16;background:radial-gradient(ellipse at 100% 0%,#ffffff06,transparent 65%),linear-gradient(135deg,#ffffff06,#1f3a310b);box-shadow:inset 0 1px 0 #ffffff0b;backdrop-filter:blur(18px);transition:border-color .5s,box-shadow .5s,background .5s}
.kingsgate-story .case-metrics:after,.kingsgate-story .kg-type-pair article:after,.kingsgate-story .kg-visual-card:after,.kingsgate-story .kg-outcome-grid article:after,.kingsgate-story .case-next-link:after{content:"";position:absolute;inset:-1px;border-radius:inherit;pointer-events:none;background:radial-gradient(ellipse at 0% 20%,#b49a7227,transparent 64%);opacity:0;transition:opacity .6s;z-index:-1}
.kingsgate-story .case-metrics:hover,.kingsgate-story .kg-type-pair article:hover,.kingsgate-story .kg-visual-card:hover,.kingsgate-story .kg-outcome-grid article:hover,.kingsgate-story .case-next-link:hover,.kingsgate-story .case-next-link:focus-visible{border-color:#b49a7245;box-shadow:inset 0 1px 0 #e3cc9b20,0 0 30px #b49a7209}
.kingsgate-story .case-metrics:hover:after,.kingsgate-story .kg-type-pair article:hover:after,.kingsgate-story .kg-visual-card:hover:after,.kingsgate-story .kg-outcome-grid article:hover:after,.kingsgate-story .case-next-link:hover:after,.kingsgate-story .case-next-link:focus-visible:after{opacity:1}
.kingsgate-story .kg-type-pair{padding:0;border:0;background:none;border-radius:0;backdrop-filter:none;gap:16px;align-items:stretch}.kingsgate-story .kg-type-pair article{padding:25px;border-radius:22px;display:flex;flex-direction:column;justify-content:center}.kingsgate-story .kg-type-pair article+article{margin:0;border-left:1px solid #ffffff16;padding:25px}
.kingsgate-story .kg-marketing-grid,.kingsgate-story .kg-gallery-controls{max-width:none;width:100%}.kingsgate-story .kg-marketing-grid .kg-gallery-item{flex-basis:calc(60% - 12px)}.kingsgate-story .kg-marketing-grid .kg-gallery-item img{height:340px;aspect-ratio:auto;object-fit:contain}.kingsgate-story .kg-gallery-item{background:#ffffff03;border-color:#ffffff16}
@media(max-width:800px){.kingsgate-story .kg-context{padding-top:95px;padding-bottom:90px;gap:30px}.kingsgate-story .kg-chapter-cards{padding-bottom:65px}.kingsgate-story .kg-chapter-header,.kingsgate-story #branding{padding-top:70px;padding-bottom:90px}.kingsgate-story .kg-type-pair article,.kingsgate-story .kg-type-pair article+article{padding:22px}.kingsgate-story .kg-marketing-grid .kg-gallery-item{flex-basis:88%}.kingsgate-story .kg-marketing-grid .kg-gallery-item img{height:270px}.kg-evolution-tabs button{padding:12px 18px}}
/* Restrained gold edge glints, shared pill controls and compact scene spacing. */
.kingsgate-story .case-metrics:before{opacity:0;transition:opacity .5s}.kingsgate-story .case-metrics:hover:before{opacity:1}
.kingsgate-story .case-metrics:after,.kingsgate-story .kg-type-pair article:after,.kingsgate-story .kg-visual-card:after,.kingsgate-story .kg-outcome-grid article:after,.kingsgate-story .case-next-link:after{inset:auto;left:-1px;top:25%;height:50%;width:1px;border-radius:0;background:linear-gradient(transparent,#b49a72,transparent);z-index:2}
.kingsgate-story .case-metrics:hover,.kingsgate-story .kg-type-pair article:hover,.kingsgate-story .kg-visual-card:hover,.kingsgate-story .kg-outcome-grid article:hover,.kingsgate-story .case-next-link:hover,.kingsgate-story .case-next-link:focus-visible{border-color:#ffffff16;box-shadow:inset 0 1px 0 #ffffff0b}
.kg-digit{display:inline-block;height:1em;line-height:1;overflow:hidden;vertical-align:bottom}.kg-digit-strip{display:flex;flex-direction:column;transform:translateY(0);transition:transform 1.7s cubic-bezier(.2,.65,.2,1);will-change:transform}.kg-digit-strip>span{display:block;height:1em;line-height:1;flex-shrink:0}
.kingsgate-story .kg-chapter-header,.kingsgate-story #branding{padding-bottom:65px}.kingsgate-story .kg-chapter-feature{padding-top:10px}.kg-evolution-view{margin-bottom:25px}.kg-evolution-view .kg-logo-grid{margin-top:40px}.kg-swatch,.kg-swatch:hover,.kg-swatch:focus-visible{outline:0;border-color:#ffffff22}.kg-swatch:hover,.kg-swatch:focus-visible{transform:scale(1.035)}
.kingsgate-story .kg-marketing-grid .kg-gallery-item{flex-basis:calc(50% - 12.5px)}.kingsgate-story .kg-marketing-grid .kg-gallery-item img{width:100%;height:340px;object-fit:cover;object-position:center}.kg-gallery-controls{justify-content:flex-end}.kg-gallery-item>span{padding:18px 22px}
@media(max-width:800px){.kingsgate-story .kg-chapter-header,.kingsgate-story #branding{padding-bottom:45px}.kingsgate-story .kg-marketing-grid .kg-gallery-item{flex-basis:88%}.kingsgate-story .kg-marketing-grid .kg-gallery-item img{height:270px}}
/* Preserve the original title rhythm and full-size rolling numerals. */
.kingsgate-story .case-heading{padding-bottom:145px}
.kingsgate-story .case-metrics strong span{font-size:inherit;color:inherit;font-family:inherit;font-weight:inherit}
.kingsgate-story .kg-palette-fan .kg-swatch:hover,.kingsgate-story .kg-palette-fan .kg-swatch:focus-visible{transform:scale(1.06);z-index:3}
@media(max-width:800px){.kingsgate-story .case-heading{padding-bottom:110px}}
/* Keep the logo/header seamless. */
.kingsgate-story .case-heading{background:#0B0D0F}.kingsgate-story>header{background:#0B0D0F;border:0;box-shadow:none}.kingsgate-story>header:after{display:none}
/* Restore green chapter previews and show complete application images. */
.kingsgate-story .kg-chapter-cards .work-service-box:before{display:block;content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at 84% 25%,#B49A72aa,transparent 56%),linear-gradient(115deg,#182e25 10%,#233b2d 42%,#315944 73%,#6d7950);opacity:0;mix-blend-mode:soft-light;transition:opacity .6s}
.kingsgate-story .kg-chapter-cards .work-service-box:hover:before,.kingsgate-story .kg-chapter-cards .work-service-box:focus-visible:before{opacity:.7}
.kingsgate-story .kg-marketing-grid .kg-gallery-item img{object-fit:contain;object-position:center;background:#121714}
.kingsgate-story .kg-marketing-grid .kg-gallery-item:hover img{transform:none}
/* Closely cropped chapter preview, restored carousel proportions and fading glass edges. */
.kingsgate-story .kg-chapter-cards .work-service-box:first-child img{object-fit:cover;transform:scale(1.2)}.kingsgate-story .kg-chapter-cards .work-service-box:first-child:hover img{transform:scale(1.24)}
.kingsgate-story .kg-marketing-grid .kg-gallery-item{flex-basis:calc(60% - 12px)}
.kingsgate-story :is(.case-metrics,.kg-type-pair article,.kg-visual-card,.kg-outcome-grid article,.case-next-link,.kg-gallery-item,.kg-chapter-cards .work-service-box){position:relative;border-color:transparent;box-shadow:none}
.kingsgate-story :is(.case-metrics,.kg-type-pair article,.kg-visual-card,.kg-outcome-grid article,.case-next-link,.kg-gallery-item,.kg-chapter-cards .work-service-box):hover{border-color:transparent;box-shadow:none}
.kingsgate-story .kg-glass-edge{position:absolute!important;inset:-1px!important;padding:1px!important;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#ffffff24 0%,#ffffff12 35%,#ffffff04 60%,#ffffff15 100%);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;z-index:3;display:block!important;margin:0!important;border:0!important;width:auto!important;height:auto!important}
.kg-type-pair article>.kg-glass-edge{font-size:0!important}.kg-gallery-item>.kg-glass-edge{padding:1px!important}.kg-visual-card>.kg-glass-edge{margin:0!important}
@media(max-width:800px){.kingsgate-story .kg-marketing-grid .kg-gallery-item{flex-basis:88%}}
.kingsgate-story .case-metrics strong .kg-number-window{display:inline-block;overflow:hidden;height:1.1em;line-height:1.1;vertical-align:bottom}.kingsgate-story .case-metrics strong .kg-number-strip{display:flex;flex-direction:column;transition:transform 1.7s cubic-bezier(.2,.65,.2,1);will-change:transform}.kg-number-strip>span{display:block;height:1.1em;line-height:1.1;flex-shrink:0;white-space:nowrap}
.kingsgate-story .kg-marketing-grid{align-items:flex-start}.kingsgate-story .kg-marketing-grid .kg-gallery-item{flex:0 0 calc(340px * var(--image-ratio,1.5));max-width:none}.kingsgate-story .kg-marketing-grid .kg-gallery-item img{height:340px;width:100%;aspect-ratio:auto;object-fit:contain;display:block}.kingsgate-story .kg-gallery-item>span:not(.kg-glass-edge){box-sizing:border-box}
@media(max-width:800px){.kingsgate-story .kg-marketing-grid .kg-gallery-item{flex-basis:calc(270px * var(--image-ratio,1.5))}.kingsgate-story .kg-marketing-grid .kg-gallery-item img{height:270px}}
/* Carry the chapter colour beneath the subtitle before its uneven fade. */
.kingsgate-story .kg-chapter-header:before{background:radial-gradient(ellipse 90% 135% at 87% 10%,#62845a 0%,#3b644b 48%,transparent 88%),radial-gradient(ellipse 90% 125% at 4% 5%,#416f52 0%,#1f3a31 55%,transparent 93%),radial-gradient(ellipse 85% 130% at 48% 0%,#345d46 0%,transparent 95%);mask-image:linear-gradient(#000 0%,#000 67%,transparent 100%)}
/* Give the closing statement room around it, keeping the words together. */
.kingsgate-story .kg-closing{padding:170px 10vw}.kingsgate-story .kg-closing>p{font-size:clamp(30px,4vw,56px);line-height:1.3;max-width:1100px;margin:auto}.kingsgate-story .kg-closing em{display:inline;margin-top:0}
@media(max-width:800px){.kingsgate-story .kg-closing{padding:110px 9vw}}
/* Keep the gold overlay aligned with a single text box. */
.kingsgate-story .kg-closing em.gold-reveal{display:inline-block;margin:-.08em -.2em -.12em -.05em;line-height:inherit}.kingsgate-story .kg-closing em.gold-reveal:after{line-height:inherit;white-space:nowrap}
/* Extend the light beyond the subtitle with an irregular, seamless fall-off. */
.kingsgate-story .kg-chapter-header,.kingsgate-story #branding{overflow:visible}
.kingsgate-story .kg-chapter-header:before{inset:0 0 -100px;border-radius:28px 28px 0 0;mask-image:none;background:radial-gradient(ellipse 85% 110% at 90% 0%,#62845a 0%,#3b644b 48%,transparent 90%),radial-gradient(ellipse 90% 140% at 3% 0%,#416f52 0%,#1f3a31 48%,transparent 93%),radial-gradient(ellipse 55% 100% at 58% 5%,#345d46 0%,#294d3b80 53%,transparent 96%)}
.kingsgate-story .kg-chapter-header:after{inset:0 0 -100px;border-radius:28px 28px 0 0;mask-image:linear-gradient(#000,transparent 100%)}
@media(max-width:800px){.kingsgate-story .kg-chapter-header:before,.kingsgate-story .kg-chapter-header:after{bottom:-70px}}
/* Reference-led drop-off: colour persists below the copy, with a deeper right-hand pool. */
.kingsgate-story .kg-chapter-header:before{bottom:-190px;background:radial-gradient(ellipse 85% 135% at 95% 3%,#62845a 0%,#3b644b 48%,#274b3870 65%,transparent 94%),radial-gradient(ellipse 85% 105% at 1% 2%,#416f52 0%,#1f3a31 48%,transparent 93%),radial-gradient(ellipse 50% 115% at 57% 0%,#345d46 0%,#294d3b60 48%,transparent 96%);mask-image:none}.kingsgate-story .kg-chapter-header:after{bottom:-190px}
.kingsgate-story .case-next-link,.kingsgate-story .case-next-link:hover,.kingsgate-story .case-next-link:focus-visible{border:1px solid transparent;border-radius:26px;box-shadow:none}.kingsgate-story .case-next-link>.kg-glass-edge,.kingsgate-story .case-metrics>.kg-glass-edge{background:linear-gradient(135deg,#ffffff24 0%,#ffffff12 35%,#ffffff04 60%,#ffffff15 100%);padding:1px!important;inset:-1px!important;border-radius:26px}
@media(max-width:800px){.kingsgate-story .kg-chapter-header:before,.kingsgate-story .kg-chapter-header:after{bottom:-140px}}
/* Fade remaining colour to zero before the gradient layer ends. */
.kingsgate-story .kg-chapter-header:before{mask-image:linear-gradient(#000 0%,#000 66%,#000b 80%,#0004 92%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#000 66%,#000b 80%,#0004 92%,transparent 100%)}
.kingsgate-story .kg-chapter-header:after{mask-image:linear-gradient(#000 0%,#0008 65%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#0008 65%,transparent 100%)}
.kingsgate-story .kg-chapter-feature{position:relative;z-index:1}.kingsgate-story .kg-evolution-view{position:relative;isolation:isolate}.kingsgate-story .kg-identity-reveal img{position:relative;z-index:1}
/* Let the application track reach the viewport edge, retaining its left alignment. */
.kingsgate-story .kg-chapter-feature:has(.kg-marketing-grid){padding-right:0;overflow:hidden}.kingsgate-story .kg-marketing-grid{width:100%;padding-right:0}.kingsgate-story .kg-gallery-controls{width:auto;margin-right:max(6vw,calc((100vw - 1400px)/2))}
@media(max-width:800px){.kingsgate-story .kg-gallery-controls{margin-right:25px}}
/* Trial: bring the opening statistics into the Kairos green colour story. */
.kingsgate-story .case-metrics,.kingsgate-story .case-metrics:hover{background:radial-gradient(ellipse at 100% 0%,#62845a75,transparent 70%),radial-gradient(ellipse at 5% 90%,#102a2290,transparent 75%),linear-gradient(125deg,#1f3a31,#315540 70%,#3e6247);backdrop-filter:blur(18px)}.kingsgate-story .case-metrics>div>span{color:#d0d8ce}
/* Remove the statistic panel edge, retaining the green surface. */
.kingsgate-story .case-metrics>.kg-glass-edge,.kingsgate-story .case-metrics:before,.kingsgate-story .case-metrics:after{display:none!important}.kingsgate-story .case-metrics,.kingsgate-story .case-metrics:hover{border-color:transparent;box-shadow:none}
/* Blend the interior tonal transition without changing the outer fade. */
.kingsgate-story .kg-chapter-header:before{background:radial-gradient(ellipse 60% 75% at 52% 27%,#41694f65,transparent 90%),radial-gradient(ellipse 85% 135% at 95% 3%,#62845a 0%,#3b644b 48%,#274b3870 65%,transparent 94%),radial-gradient(ellipse 85% 105% at 1% 2%,#416f52 0%,#1f3a31 48%,transparent 93%),radial-gradient(ellipse 50% 115% at 57% 0%,#345d46 0%,#294d3b60 48%,transparent 96%)}
/* Align the track with the chapter's outer edge; finish with the opening inset. */
.kingsgate-story .kg-chapter-feature:has(.kg-marketing-grid){padding-right:12px}.kingsgate-story .kg-marketing-grid{padding-right:max(6vw,calc((100vw - 1400px)/2));scroll-padding-right:max(6vw,calc((100vw - 1400px)/2))}
@media(max-width:800px){.kingsgate-story .kg-marketing-grid{padding-right:25px;scroll-padding-right:25px}}
.kingsgate-story .kg-marketing-grid{padding-right:calc(max(6vw,calc((100vw - 1400px)/2)) - 12px);scroll-padding-right:calc(max(6vw,calc((100vw - 1400px)/2)) - 12px)}
@media(max-width:800px){.kingsgate-story .kg-marketing-grid{padding-right:13px;scroll-padding-right:13px}}
.kingsgate-story .case-metrics,.kingsgate-story .case-metrics:hover{border:0!important;outline:0!important;box-shadow:none!important}.kingsgate-story .case-metrics:before,.kingsgate-story .case-metrics:after{content:none!important}
.kingsgate-story .kg-marketing-grid{scroll-snap-type:none}
/* Match both carousel clipping edges to the green chapter edges. */
.kingsgate-story .kg-chapter-feature:has(.kg-marketing-grid){padding-left:12px;padding-right:12px}.kingsgate-story .kg-marketing-grid{padding-left:calc(max(6vw,calc((100vw - 1400px)/2)) - 12px)}
@media(max-width:800px){.kingsgate-story .kg-marketing-grid{padding-left:13px}}

/* Keep the application carousel free of a full-width scrollbar rule. */
.kingsgate-story .kg-marketing-grid{scrollbar-width:none}
.kingsgate-story .kg-marketing-grid::-webkit-scrollbar{display:none}

/* Equal statistic columns with centred values and captions. */
.kingsgate-story .case-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
.kingsgate-story .case-metrics>div{min-width:0;align-items:center;text-align:center}
.kingsgate-story .case-metrics>div>strong{width:100%;text-align:center}
.kingsgate-story .case-metrics>div>span{max-width:26ch;line-height:1.5;text-align:center}

.kingsgate-story .kg-outcomes{background:#0d1314}

.kingsgate-story .kg-identity-reveal img{background:#0d1314}

/* Studio: spacious editorial sections within the Kairos visual language. */
.studio-page header{justify-content:center}.studio-page .studio-hero{text-align:center;position:relative;padding-top:90px;padding-bottom:115px;background:radial-gradient(ellipse 55% 70% at 50% 25%,#36513f24,transparent 85%)}
.studio-hero h1{font-size:clamp(54px,7.2vw,112px);max-width:1100px}.studio-hero p{margin:35px auto;color:#b9c2b8}.studio-hero .button span{margin-left:20px}
.studio-perspective,.studio-founder,.studio-approach{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}.studio-page .eyebrow{margin-bottom:28px}.studio-page h2{font-size:clamp(42px,4.8vw,74px)}.studio-copy p{max-width:540px}.studio-copy .studio-lead{font-size:clamp(22px,2.1vw,30px);line-height:1.45;color:#eeece5;margin-top:0}.studio-perspective{padding-top:115px;padding-bottom:125px}.studio-perspective .studio-copy p:last-child{color:#bdc5ba}
.studio-beliefs{margin:0 12px;border-radius:28px;background:radial-gradient(ellipse at 90% 0%,#55744e60,transparent 60%),#1f3a31;padding-top:95px;padding-bottom:100px}.studio-section-top{margin-bottom:55px}.studio-belief-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.studio-belief-grid article{position:relative;overflow:hidden;border:1px solid #ffffff12;border-radius:22px;background:linear-gradient(135deg,#ffffff07,#ffffff01);padding:30px 25px;min-height:270px;transition:transform .4s,background .4s;outline-offset:4px}.studio-belief-grid article:hover,.studio-belief-grid article:focus-visible{transform:translateY(-5px);background:radial-gradient(ellipse at 100% 0%,#73936745,transparent 65%),#ffffff06}.studio-belief-grid article:after{content:'';position:absolute;left:0;top:22%;width:1px;height:55%;background:linear-gradient(transparent,#b49a72,transparent);opacity:0;transition:opacity .4s}.studio-belief-grid article:hover:after,.studio-belief-grid article:focus-visible:after{opacity:1}.studio-index{font-size:12px;color:#b49a72}.studio-belief-grid h3{font-size:25px;font-weight:400;letter-spacing:-.03em;margin:50px 0 18px}.studio-belief-grid p{font-size:15px;color:#c0cbbd;margin:0}
.studio-founder{padding-top:140px;padding-bottom:140px;gap:7vw}.studio-founder-art{height:660px;border-radius:26px;overflow:hidden;background:#1f3a31}.studio-founder-art img{width:100%;height:100%;object-fit:cover}.studio-founder .studio-lead{margin-top:35px}.studio-approach{align-items:start;padding-top:65px;padding-bottom:135px}.studio-process details{border-color:#ffffff16}.studio-process summary{font-size:27px;gap:24px;padding:25px 0}.studio-process summary>span:first-child{font-size:12px;color:#b49a72}.studio-plus{margin-left:auto;color:#b49a72;font-size:22px;transition:transform .3s}.studio-process details[open] .studio-plus{transform:rotate(45deg)}.studio-process p{margin:0 0 26px 39px;color:#aeb8ac;max-width:430px}.studio-process details:last-child{border-bottom:1px solid #ffffff16}
@media(max-width:1000px){.studio-belief-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-founder-art{height:540px}}
@media(max-width:800px){.studio-page .studio-hero{padding-top:65px;padding-bottom:85px}.studio-hero h1{font-size:clamp(47px,9vw,72px)}.studio-perspective,.studio-founder,.studio-approach{grid-template-columns:1fr;gap:40px}.studio-perspective{padding-top:65px;padding-bottom:85px}.studio-beliefs{padding-top:70px;padding-bottom:70px}.studio-belief-grid{gap:14px}.studio-belief-grid article{padding:24px 20px;min-height:250px}.studio-belief-grid h3{font-size:23px;margin-top:35px}.studio-founder{padding-top:85px;padding-bottom:75px}.studio-founder-art{height:420px}.studio-approach{padding-top:35px;padding-bottom:85px}.studio-approach .studio-section-top{margin-bottom:0}}
@media(max-width:480px){.studio-belief-grid{grid-template-columns:1fr}.studio-belief-grid article{min-height:0}.studio-belief-grid h3{margin-top:25px}}

/* Etched glass sculpture: layered perspective, soft edge light and cursor response. */
.studio-page .studio-hero{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;text-align:left;gap:2vw;min-height:760px;padding-top:75px;padding-bottom:110px;overflow:hidden;background:radial-gradient(ellipse 50% 60% at 78% 45%,#36513f20,transparent 85%)}
.studio-hero-copy{position:relative;z-index:2}.studio-page .studio-hero h1{font-size:clamp(55px,5.5vw,88px);margin:0;max-width:800px}.studio-hero-copy p{margin-left:0;margin-right:0}.studio-sculpture{height:530px;position:relative;perspective:1100px;isolation:isolate;--disc-rx:0deg;--disc-ry:0deg;--disc-x:0px;--disc-y:0px;--shine-x:32%;--shine-y:18%}.disc-scene{position:absolute;inset:0;transform-style:preserve-3d;transform:translate3d(var(--disc-x),var(--disc-y),0) rotateX(var(--disc-rx)) rotateY(var(--disc-ry));will-change:transform}.disc-light{position:absolute;inset:6% -10% 0;background:radial-gradient(ellipse at 52% 43%,#40634b38,transparent 65%);filter:blur(25px)}.disc-float{position:absolute;transform-style:preserve-3d}.disc-float-front{width:365px;height:365px;left:7%;top:26%;animation:disc-float-front 10s ease-in-out infinite}.disc-float-back{width:345px;height:345px;left:31%;top:5%;animation:disc-float-back 12s ease-in-out infinite}.glass-disc{position:absolute;inset:0;border-radius:50%;transform-style:preserve-3d;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid #b0c3ac40;background:radial-gradient(ellipse at var(--shine-x) var(--shine-y),#e8eddd24,transparent 42%),radial-gradient(ellipse at 80% 82%,#183c2c70,transparent 68%),linear-gradient(130deg,#77958119,#203d3030 48%,#0c1b1755);box-shadow:inset 3px 3px 7px #d8e3cd24,inset -6px -4px 12px #06110cb0,0 25px 55px #0005;overflow:hidden}.disc-front{transform:rotateY(-24deg) rotateX(10deg) rotateZ(-13deg);box-shadow:inset 3px 3px 7px #d8e3cd2a,inset -6px -4px 12px #06110cb0,5px 6px 0 #18312990,7px 8px 0 #94a78920,0 30px 65px #0007}.disc-back{transform:rotateY(30deg) rotateX(-17deg) rotateZ(18deg);background:radial-gradient(ellipse at 30% 15%,#b2c1a22a,transparent 50%),linear-gradient(145deg,#536c4930,#142f2655 70%);box-shadow:inset 3px 3px 9px #e7eddb30,inset -5px -5px 14px #03110aaa,4px 5px 0 #263f3060,0 20px 55px #0005}.disc-rim{position:absolute;inset:5px;border:1px solid #dae2c721;border-radius:50%;pointer-events:none}.disc-front .disc-rim{border-color:#c3ab782c}.disc-engraving{position:absolute;inset:21%;background:linear-gradient(135deg,#f0e6c685,#c1a77d48 45%,#b8c6ad38 75%,#ead9b775);mask:url('/assets/kairos-engraving.png') center/contain no-repeat;-webkit-mask:url('/assets/kairos-engraving.png') center/contain no-repeat;opacity:.62;filter:drop-shadow(1px 1px 1px #08170b);transition:opacity .7s}.studio-hero:hover .disc-engraving{opacity:.9}.disc-reflection{position:absolute;inset:-30%;background:linear-gradient(115deg,transparent 30%,#ffffff0e 43%,#e9e9d916 44%,transparent 49%);transform:translateX(var(--disc-x));pointer-events:none}.disc-shadow{position:absolute;width:75%;height:45px;bottom:0;left:18%;border-radius:50%;background:#0007;filter:blur(20px);z-index:-1}
@keyframes disc-float-front{0%,100%{transform:translateY(0) rotateZ(-2deg)}50%{transform:translateY(-17px) rotateZ(3deg)}}@keyframes disc-float-back{0%,100%{transform:translateY(0) rotateZ(2deg)}50%{transform:translateY(16px) rotateZ(-4deg)}}
@media(min-width:1600px){.studio-sculpture{transform:scale(1.1)}}
@media(max-width:1050px){.disc-float-front{width:300px;height:300px;left:0;top:29%}.disc-float-back{width:280px;height:280px;left:25%;top:12%}.studio-sculpture{height:460px}}
@media(max-width:800px){.studio-page .studio-hero{grid-template-columns:1fr;text-align:center;padding-top:60px;padding-bottom:70px;gap:0;min-height:0}.studio-page .studio-hero h1{font-size:clamp(48px,8.5vw,72px);margin:auto}.studio-hero-copy p{margin-left:auto;margin-right:auto}.studio-sculpture{width:min(100%,460px);height:420px;margin:20px auto 0}.disc-float-front{left:8%;top:26%;width:280px;height:280px}.disc-float-back{left:34%;top:8%;width:260px;height:260px}.disc-shadow{bottom:8px}}
@media(max-width:420px){.studio-sculpture{height:340px}.disc-float-front{width:230px;height:230px;left:2%}.disc-float-back{width:215px;height:215px;left:29%}}
@media(prefers-reduced-motion:reduce){.disc-float{animation:none}.disc-scene{transform:none}}

/* Optical glass lenses replace the flat disc treatment where WebGL is available. */
.studio-sculpture{height:590px}.studio-sculpture canvas{position:absolute;inset:0;width:100%;height:100%;z-index:2}.studio-sculpture.has-glass-3d .disc-scene{display:none}.studio-sculpture.has-glass-3d .disc-light{background:radial-gradient(ellipse at 50% 55%,#31514038,transparent 70%)}.studio-sculpture.has-glass-3d .disc-shadow{bottom:15px;opacity:.5}
@media(max-width:1050px){.studio-sculpture{height:510px}}@media(max-width:800px){.studio-sculpture{height:460px;width:min(100%,500px)}}@media(max-width:420px){.studio-sculpture{height:380px}}

/* Full-bleed glass composition behind a centred Studio introduction. */
.studio-page header{position:relative;z-index:5}.studio-page .studio-hero{display:flex;flex-direction:column;justify-content:center;text-align:center;position:relative;isolation:isolate;min-height:calc(100svh - 96px);padding:100px 6vw 120px;overflow:hidden;background:#0b0d0f}.studio-page .studio-hero-copy{width:100%;max-width:1150px;z-index:3;pointer-events:none}.studio-page .studio-hero-copy .button{pointer-events:auto}.studio-page .studio-hero h1{font-size:clamp(56px,7vw,108px);max-width:1150px;margin:auto;text-shadow:0 2px 28px #0b0d0f55}.studio-hero-copy p{margin-left:auto;margin-right:auto;color:#c0c8bf;text-shadow:0 2px 14px #0b0d0f}.studio-page .studio-sculpture{position:absolute;inset:0;width:100%;height:100%;margin:0;transform:none;z-index:0;pointer-events:none;perspective:1100px}.studio-sculpture.has-glass-3d .disc-light,.studio-sculpture.has-glass-3d .disc-shadow{display:none}.studio-hero:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 42% 33% at 50% 50%,#0b0d0f40,transparent 100%),linear-gradient(transparent 88%,#0b0d0f)}
@media(max-width:800px){.studio-page .studio-hero{min-height:calc(100svh - 80px);padding:100px 25px 130px}.studio-page .studio-hero h1{font-size:clamp(48px,9vw,72px)}.studio-page .studio-sculpture{height:100%;width:100%;margin:0}.studio-hero-copy p{font-size:16px}}

/* Material study: one clear lens, with the composition focused on its rim. */
.studio-sculpture.has-glass-3d canvas{opacity:1}.studio-hero:after{background:linear-gradient(transparent 90%,#0b0d0f)}

/* The glass extends continuously behind the transparent header. */
.studio-page header{position:absolute;top:0;left:0;width:100%;z-index:5;background:transparent}.studio-page header .brand{position:relative;z-index:6}.studio-page .studio-hero{min-height:100svh;padding-top:180px;padding-bottom:120px}.studio-page .studio-hero-copy{position:relative;z-index:3}
@media(max-width:800px){.studio-page .studio-hero{min-height:100svh;padding-top:160px;padding-bottom:130px}}

/* Studio narrative and continuous glass transition. */
.studio-page .studio-hero{overflow:visible}.studio-page .studio-sculpture{height:calc(100% + 230px);bottom:-230px;mask-image:linear-gradient(#000 0%,#000 92%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#000 92%,transparent 100%)}.studio-page .studio-hero:after{content:none}.studio-page{overflow-x:clip}.studio-perspective{position:relative;z-index:2;background:transparent;padding-top:155px;padding-bottom:95px}.studio-founder{padding-top:65px;padding-bottom:130px}.studio-founder-art img{object-position:center 35%}.studio-beliefs{background:#1f3a31}.studio-beliefs-intro{max-width:550px;color:#c0cbbd;margin-top:28px}.studio-belief-grid article:hover,.studio-belief-grid article:focus-visible{background:radial-gradient(ellipse at 100% 0%,#ffffff09,transparent 65%),linear-gradient(135deg,#ffffff0b,#ffffff02);border-color:#ffffff20}.studio-belief-grid article:after{background:linear-gradient(transparent,#b49a72,transparent)}.studio-approach{padding-top:120px}.studio-approach .studio-section-top>p{max-width:400px}.studio-page .contact h2{font-size:clamp(54px,7.8vw,120px)}
@media(max-width:800px){.studio-page .studio-sculpture{height:calc(100% + 140px);bottom:-140px}.studio-perspective{padding-top:115px;padding-bottom:70px}.studio-founder{padding-top:35px;padding-bottom:85px}.studio-approach{padding-top:80px}.studio-page .contact h2{font-size:clamp(50px,11vw,85px)}}

/* Preserve hero height while the full lower lens reaches behind section one. */
.studio-page .studio-sculpture{height:calc(100% + 650px);bottom:-650px;mask-image:none;-webkit-mask-image:none}.studio-perspective{padding-top:155px;min-height:560px}.studio-founder{background:#0b0d0f;grid-template-columns:.78fr 1.22fr;gap:9vw}.studio-founder-art{height:480px;width:100%;max-width:380px;justify-self:center}.studio-process-copy{margin:0 0 28px 39px;max-width:440px}.studio-process-copy h3{font-size:19px;font-weight:400;color:#e5e8df;line-height:1.4;margin:0 0 14px}.studio-process .studio-process-copy p{margin:0;font-size:16px}
@media(max-width:800px){.studio-page .studio-sculpture{height:calc(100% + 420px);bottom:-420px}.studio-perspective{min-height:0;padding-top:115px}.studio-founder{grid-template-columns:1fr;gap:40px}.studio-founder-art{height:400px;max-width:300px}.studio-process-copy{margin-left:39px}}

/* Scroll storytelling with a readable static fallback. */
.studio-founder{display:block;padding-top:100px;padding-bottom:110px}.studio-founder-stage{position:relative;min-height:600px;display:grid;justify-items:center;align-items:center}.studio-founder-title{text-align:center;margin:40px 0}.studio-founder-stage .studio-copy{max-width:650px;margin:auto}.studio-founder-art{width:360px;max-width:85vw;height:480px}.studio-scroll-active .studio-founder{height:250svh;padding:0;position:relative}.studio-scroll-active .studio-founder-stage{position:sticky;top:0;height:100svh;min-height:620px;overflow:hidden}.studio-scroll-active .studio-founder-art{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(var(--portrait-scale,1));opacity:var(--portrait-alpha,1)}.studio-scroll-active .studio-founder-title{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:2;margin:0;opacity:var(--title-alpha,0);transform:translateY(var(--title-y,25px));text-shadow:0 2px 35px #0009}.studio-scroll-active .studio-founder-title h2{font-size:clamp(48px,6vw,90px)}.studio-scroll-active .studio-founder-stage .studio-copy{position:relative;z-index:3;padding:40px 25px;opacity:var(--copy-alpha,0);transform:translateY(var(--copy-y,30px));pointer-events:none}.studio-scroll-active .studio-founder-stage .studio-copy p{max-width:650px}.studio-scroll-active .studio-founder-stage .studio-copy .eyebrow{margin-bottom:24px}
.studio-approach{display:block}.studio-approach .studio-section-top{margin-bottom:65px}.studio-process-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.studio-process-scene{position:relative;padding-top:40px;isolation:isolate}.process-shape{position:absolute;width:170px;height:170px;top:10px;left:calc(50% - 85px);z-index:-1;background:radial-gradient(circle at 25% 20%,#71976c,#315640 55%,#142d23);box-shadow:inset 2px 2px 5px #ffffff24,0 12px 40px #0005;transform:rotate(-20deg);transition:transform .8s}.shape-1{border-radius:50%}.shape-2{border-radius:35px;transform:rotate(25deg)}.shape-3{border-radius:50%;background:transparent;border:18px solid #426c50;box-shadow:inset 1px 1px 0 #c1a77d65,1px 1px 0 #c1a77d65;transform:rotateX(25deg) rotateY(30deg)}.shape-4{border-radius:45% 55% 60% 40%;transform:rotate(45deg)}.process-shape:after{content:'';position:absolute;inset:-18px;border-radius:50%;border:1px solid #b49a7275;transform:rotateX(55deg) rotateZ(-20deg)}.process-glass{position:relative;min-height:440px;height:100%;padding:30px 24px;border-radius:24px;border:1px solid #ffffff15;background:linear-gradient(135deg,#ffffff0d,#ffffff03);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 #ffffff14;overflow:hidden}.process-glass:after{content:'';position:absolute;left:0;top:25%;height:50%;width:1px;background:linear-gradient(transparent,#b49a72,transparent);opacity:0;transition:opacity .5s}.studio-process-scene:hover .process-glass:after{opacity:1}.studio-process-scene:hover .process-shape{transform:translateY(-15px) rotate(12deg)}.process-glass h3{font-size:30px;font-weight:400;margin:50px 0 25px}.process-glass h4{font-size:17px;line-height:1.4;font-weight:400;color:#e4e9df;margin:0 0 16px}.process-glass p{font-size:15px;line-height:1.65;margin:0;color:#b5beb2}.studio-scroll-active .studio-reveal{opacity:0;transform:translateY(28px);transition:opacity .8s,transform .8s;transition-delay:var(--reveal-delay,0ms)}.studio-scroll-active .studio-reveal.is-visible{opacity:1;transform:none}
@media(max-width:1100px){.studio-process-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.process-glass{min-height:350px}}
@media(max-width:800px){.studio-scroll-active .studio-founder-stage{min-height:540px}.studio-founder-art{width:280px;height:375px}.studio-scroll-active .studio-founder-stage .studio-copy p{font-size:15px;line-height:1.55;margin:14px 0}.studio-scroll-active .studio-founder-stage .studio-copy .studio-lead{font-size:21px}.studio-scroll-active .studio-founder{height:230svh}}
@media(max-width:550px){.studio-process-cards{grid-template-columns:1fr;gap:35px}.process-glass{min-height:0;padding-bottom:35px}.process-glass h3{margin-top:40px}}

/* No engraved fallback or interim sculpture is shown during module loading. */
.studio-sculpture canvas{opacity:0;transition:opacity .45s}.studio-sculpture.has-glass-3d canvas{opacity:1}
/* The portrait gives way to its title; the story follows in normal document flow. */
.studio-founder{padding-bottom:110px}.studio-scroll-active .studio-founder{height:auto;padding:0 6vw 110px}.studio-scroll-active .studio-founder-visual{height:190svh;position:relative}.studio-scroll-active .studio-founder-stage{height:100svh;min-height:620px}.studio-founder-copy{max-width:650px!important;margin:0 auto!important;padding:45px 25px 0;opacity:1!important;transform:none!important}.studio-scroll-active .studio-founder-copy{pointer-events:auto}.studio-founder-copy p{max-width:650px}.studio-founder-visual{position:relative}.studio-scroll-active .studio-founder-title{will-change:opacity,transform}
/* Clear glass cards follow the pointer and catch a soft moving reflection. */
.studio-belief-grid{perspective:1100px}.studio-belief-grid article{transform-style:preserve-3d;transition:transform .45s,background .45s,border-color .45s}.studio-scroll-active .studio-belief-grid article.is-visible,.studio-belief-grid article:hover{transform:rotateX(var(--belief-rx,0deg)) rotateY(var(--belief-ry,0deg))}.studio-belief-grid article:before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at var(--belief-x,80%) var(--belief-y,0%),#ffffff10,transparent 65%);opacity:0;transition:opacity .45s}.studio-belief-grid article:hover:before,.studio-belief-grid article:focus-visible:before{opacity:1}.studio-belief-grid article:hover,.studio-belief-grid article:focus-visible{border-color:#ffffff25;background:linear-gradient(135deg,#ffffff09,#ffffff02)}
@media(max-width:800px){.studio-scroll-active .studio-founder{height:auto;padding:0 25px 85px}.studio-scroll-active .studio-founder-visual{height:180svh}.studio-scroll-active .studio-founder-stage{min-height:540px}.studio-founder-copy{padding:35px 0 0}.studio-founder-copy .studio-lead{font-size:23px}}
@media(prefers-reduced-motion:reduce){.studio-founder-copy{padding-top:25px}.studio-belief-grid article{transform:none!important}}
/* Services: one connected practice, explored at the visitor's pace. */
.services-hero{text-align:center;padding:190px 6vw 105px;position:relative;background:radial-gradient(ellipse at 50% 35%,rgba(50,70,59,.13),transparent 55%)}
.services-hero h1{font-size:clamp(60px,7.7vw,112px);line-height:1.03;margin:26px 0 32px;font-weight:400;letter-spacing:-.055em}.services-hero p{color:#b7bdb7;font-size:18px;line-height:1.7}
.service-explorer{background:#1f3a31;margin:0 12px;border-radius:28px;padding:65px 5vw 75px}.services-intro{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:35px}.services-intro p{font-size:18px;color:#d5ded5;margin:0}
.service-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.service-tabs button{position:relative;border:1px solid transparent;border-radius:16px;background:rgba(11,20,16,.12);padding:23px 22px;text-align:left;color:#eaece5;font:inherit;font-size:19px;cursor:pointer;transition:background .25s,border-color .25s}.service-tabs button span{display:block;font-size:14px;color:#abbcaf;margin-bottom:18px}.service-tabs button:hover{background:radial-gradient(ellipse at top right,#4b6854,rgba(12,28,21,.6))}.service-tabs button[aria-selected=true]{background:rgba(240,247,238,.09);border-color:rgba(235,247,231,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.14)}.service-tabs button:focus-visible{outline:2px solid #b49a72;outline-offset:4px}
.service-panel{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;padding-top:65px;min-height:510px}.service-panel[hidden]{display:none}.service-detail h2{font-size:clamp(34px,3.4vw,52px);line-height:1.15;letter-spacing:-.035em;font-weight:400;margin:20px 0}.service-detail p{font-size:17px;line-height:1.8;color:#d5ded5;max-width:550px}.service-detail ul{list-style:none;padding:22px 0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:15px;font-size:15px}.service-detail li{padding-left:14px;position:relative}.service-detail li:before{content:'';position:absolute;left:0;top:.55em;width:4px;height:4px;border-radius:50%;background:#b49a72}.service-detail .service-outcome{color:#e7e5d9;font-size:15px;padding-top:10px}
.service-visual{height:380px;display:grid;place-items:center;background:radial-gradient(ellipse at 70% 25%,rgba(164,190,151,.18),transparent 65%),#182c25;border-radius:24px;overflow:hidden}.service-example{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;width:100%;color:#ddd;text-decoration:none}.service-example img{width:100%;height:85%;object-fit:contain;transition:transform .5s}.service-example:hover img{transform:scale(1.03)}.service-example span{font-size:14px;padding:15px}.identity-visual{height:100%;width:100%;display:flex;flex-direction:column;justify-content:space-between;text-align:center;padding:35px 20px;color:#edeae0;text-decoration:none;background:#0d1314}.identity-label,.identity-caption{font-size:13px;color:#bbc0ba}.identity-name{font-family:Georgia,serif;font-size:clamp(36px,4vw,62px);letter-spacing:-.04em}.identity-name span{display:block;font-family:Arial,sans-serif;font-size:13px;letter-spacing:.3em;margin-top:14px}.strategy-visual{position:relative;width:300px;height:300px;display:grid;place-items:center}.strategy-visual>span{position:absolute;padding:13px 20px;border-radius:50px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.12);font-size:14px;backdrop-filter:blur(12px)}.strategy-visual:before{content:'';position:absolute;inset:30px;border:1px solid rgba(196,212,190,.18);border-radius:50%}.strategy-visual .strategy-centre{font-family:Georgia,serif;font-size:29px;padding:30px;z-index:1;color:#ded9c7}.strategy-visual>span:nth-child(2){top:0}.strategy-visual>span:nth-child(3){right:-8px;top:130px}.strategy-visual>span:nth-child(4){bottom:0}.strategy-visual>span:nth-child(5){left:-30px;top:130px}
.services-partnership{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:130px 8vw}.services-partnership h2{font-size:clamp(40px,4.5vw,68px);font-weight:400;line-height:1.1;letter-spacing:-.04em;margin-top:25px}.services-partnership p{color:#b8bfb9;font-size:18px;line-height:1.8}.services-partnership .button{margin-top:22px}.services-page .contact h2{font-size:clamp(54px,7.8vw,120px)}
@media(max-width:800px){.services-hero{padding:160px 6vw 75px}.services-intro{display:block}.services-intro p{margin-top:18px}.service-tabs{grid-template-columns:1fr 1fr}.service-tabs button{font-size:17px;padding:18px}.service-panel{grid-template-columns:1fr;gap:25px;padding-top:40px}.service-visual{height:330px}.services-partnership{grid-template-columns:1fr;gap:15px;padding:85px 7vw}.service-explorer{padding:40px 6vw}.services-page .contact h2{font-size:clamp(50px,11vw,85px)}}
@media(prefers-reduced-motion:reduce){.service-example img{transition:none}}
.service-identity-logo{width:85%;height:230px;object-fit:contain;align-self:center}.services-page .service-detail h2{font-family:Arial,sans-serif}.services-page .service-example{border:0}
/* Homepage glass language carried into the service selector. */
.services-page .services-hero{text-align:center;display:flex;flex-direction:column;align-items:center;padding-bottom:95px}.services-page .services-hero h1{margin-bottom:0}
.services-page .service-explorer{background:#0b0d0f;margin:0;border-radius:0;padding:0 7vw 90px}
.services-page .service-tabs{gap:18px}.services-page .service-tabs button{isolation:isolate;overflow:hidden;min-height:145px;padding:26px;border:1px solid rgba(229,239,228,.09);border-top-color:rgba(255,255,255,.19);border-bottom-color:rgba(255,255,255,.03);background:linear-gradient(135deg,rgba(255,255,255,.035),rgba(255,255,255,.008));box-shadow:inset 0 1px 0 rgba(255,255,255,.035);backdrop-filter:blur(14px);font-size:20px;border-radius:19px;transition:border-color .3s}
.services-page .service-tabs button:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 85% 10%,#506c51,transparent 65%),radial-gradient(ellipse at 10% 100%,#2e5040,transparent 75%),#203b31;opacity:0;transition:opacity .35s}
.services-page .service-tabs button:hover:before,.services-page .service-tabs button[aria-selected=true]:before{opacity:1}.services-page .service-tabs button[aria-selected=true]{border-color:rgba(220,235,217,.19);border-bottom-color:rgba(220,235,217,.035);background:transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.07)}
.services-page .service-tabs button span{margin-bottom:32px}.services-page .service-panel{gap:6vw;padding-top:65px;min-height:470px}.services-page .service-detail p{color:#b8c0ba}.services-page .service-visual{margin:0;background:#0d1314;position:relative;height:auto;min-height:340px;overflow:hidden;border-radius:20px;display:flex;flex-direction:column;justify-content:center}.services-page .service-visual img{width:100%;height:auto;display:block;object-fit:contain}.services-page .service-visual figcaption{font-size:13px;color:#c0c4bb;padding:15px 22px;text-align:center}.services-page .services-partnership{padding-top:70px}
@media(max-width:800px){.services-page .service-explorer{padding:0 6vw 55px}.services-page .service-tabs{gap:12px}.services-page .service-tabs button{min-height:125px;padding:20px;font-size:18px}.services-page .service-tabs button span{margin-bottom:25px}.services-page .service-panel{padding-top:40px;gap:30px}.services-page .service-visual{min-height:0}.services-page .services-hero{padding-bottom:65px}}
@media(prefers-reduced-motion:reduce){.services-page .service-tabs button:before{transition:none}}
/* Services become the opening experience. */
.services-page .service-stage{padding:125px 28px 35px;min-height:100svh;position:relative;isolation:isolate;scroll-margin-top:0}.services-page .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.service-doors{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;min-height:calc(100svh - 160px)}.service-door{position:relative;display:flex;flex-direction:column;text-decoration:none;color:#eeeee6;isolation:isolate;overflow:hidden;border-radius:22px;border:1px solid rgba(255,255,255,.10);border-top-color:rgba(255,255,255,.20);border-bottom-color:rgba(255,255,255,.035);background:linear-gradient(140deg,rgba(255,255,255,.035),rgba(255,255,255,.004));padding:32px 26px;min-height:520px;transition:border-color .4s;}
.service-door:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 90% 0%,#587458,transparent 65%),radial-gradient(ellipse at 5% 95%,#355c47,transparent 75%),#203c31;opacity:0;transform:scale(1.08);transition:opacity .5s,transform 1s}.service-door:nth-child(even):before{background:radial-gradient(ellipse at 10% 80%,#536f51,transparent 60%),radial-gradient(ellipse at 90% 0%,#2f5542,transparent 75%),#203c31}.service-door:hover:before,.service-door:focus-visible:before{opacity:1;transform:scale(1)}.service-door:hover{border-top-color:rgba(232,244,224,.35)}.door-number{font-size:14px;color:#aeb9af;letter-spacing:.06em}.door-content{margin-top:85px}.service-door:nth-child(even) .door-content{margin-top:auto;padding-bottom:65px}.services-page .service-door h2{font-family:Arial,sans-serif;font-size:clamp(26px,3vw,46px);line-height:1.08;letter-spacing:-.045em;font-weight:400;margin:0;max-width:240px}.door-reveal{opacity:0;transform:translateY(15px);transition:opacity .35s,transform .5s;margin-top:26px}.door-reveal p{font-size:16px;line-height:1.65;color:#d3ded2;margin:0 0 25px;max-width:250px}.service-door:hover .door-reveal,.service-door:focus-visible .door-reveal{opacity:1;transform:none}.door-discover{display:inline-flex;font-size:14px;padding:13px 19px;border-radius:50px;border:1px solid rgba(255,255,255,.23);background:linear-gradient(130deg,rgba(255,255,255,.13),rgba(255,255,255,.035));box-shadow:inset 0 1px 0 rgba(255,255,255,.13);backdrop-filter:blur(18px)}.service-door:focus-visible{outline:2px solid #b49a72;outline-offset:4px}
.service-expanded{position:relative;border-radius:26px;padding:30px 5vw 55px;background:radial-gradient(ellipse at 90% 0%,rgba(79,109,77,.6),transparent 65%),radial-gradient(ellipse at 5% 100%,rgba(50,85,63,.5),transparent 65%),#1f3a31;min-height:calc(100svh - 160px)}.service-expanded[hidden],.service-doors[hidden],.service-remaining[hidden],.service-door[hidden],.service-panel-source[hidden]{display:none}.service-back{color:#e6eae0;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.16);border-radius:50px;padding:11px 19px;font:inherit;font-size:14px;cursor:pointer}.service-back:hover{background:rgba(255,255,255,.12)}.service-back:focus-visible{outline:2px solid #b49a72;outline-offset:4px}.service-expanded-content{opacity:0;transform:translateY(14px);transition:opacity .55s,transform .65s}.service-expanded-content.is-visible{opacity:1;transform:none}.services-page .service-expanded .service-panel{padding-top:40px;min-height:510px;gap:5vw}.services-page .service-expanded .expanded-service-name{font-size:clamp(45px,5vw,78px);font-weight:400;letter-spacing:-.055em;line-height:1.02;margin:0 0 28px}.expanded-service-name:focus{outline:none}.service-expanded .service-detail .eyebrow{display:none}.service-expanded .service-detail h3{font-size:22px;font-weight:400;margin:0 0 18px;color:#eceade;line-height:1.3}.services-page .service-expanded .service-detail p{color:#d0dbd0}.services-page .service-expanded .service-visual{background:#15261f}.service-remaining{padding:75px 7vw 90px}.service-remaining>.eyebrow{margin-bottom:28px}.service-remaining-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.service-remaining .service-door{min-height:420px}.service-remaining .door-content{margin-top:65px}.service-remaining .service-door:nth-child(even) .door-content{padding-bottom:20px}.service-flight{position:fixed;z-index:50;pointer-events:none;overflow:hidden;border:1px solid rgba(230,246,227,.2);border-radius:22px;background:radial-gradient(ellipse at 90% 0%,#587458,transparent 65%),radial-gradient(ellipse at 5% 95%,#355c47,transparent 75%),#203c31;display:flex;align-items:center;justify-content:center}.service-flight span{font-size:clamp(30px,4vw,65px);letter-spacing:-.045em;color:#eeeee6;white-space:nowrap}.service-panel-source{padding:60px 7vw}
@media(max-width:1050px){.service-door{padding:25px 20px}.services-page .service-door h2{font-size:30px}.door-reveal p{font-size:15px}.service-expanded .service-panel{grid-template-columns:1fr 1fr}.service-remaining .service-door{min-height:390px}}
@media(max-width:800px){.services-page .service-stage{padding:125px 18px 25px}.service-doors{grid-template-columns:1fr 1fr;min-height:0;gap:12px}.service-door{min-height:330px;padding:22px 18px}.services-page .service-door h2{font-size:clamp(25px,4.5vw,35px)}.door-content{margin-top:42px}.service-door:nth-child(even) .door-content{padding-bottom:0}.door-reveal{opacity:1;transform:none;margin-top:20px}.door-reveal p{font-size:14px;margin-bottom:18px}.door-discover{padding:10px 14px;font-size:14px}.service-expanded{padding:24px 6vw 35px;min-height:calc(100svh - 150px)}.services-page .service-expanded .service-panel{grid-template-columns:1fr;min-height:0;padding-top:32px}.service-remaining{padding:50px 6vw}.service-remaining-grid{grid-template-columns:1fr;gap:15px}.service-remaining .service-door{min-height:250px}.service-remaining .door-content,.service-remaining .service-door:nth-child(even) .door-content{margin-top:25px;padding-bottom:0}.service-remaining .door-reveal{display:flex;align-items:center;justify-content:space-between;gap:20px}.service-remaining .door-reveal p{max-width:60%;margin:0}.service-remaining .door-discover{flex-shrink:0}}
@media(hover:none){.door-reveal{opacity:1;transform:none}.service-door:before{opacity:.22}}
@media(prefers-reduced-motion:reduce){.service-door:before,.door-reveal,.service-expanded-content{transition:none;transform:none}}
/* Match the homepage's logo-to-content gap and the quieter card reference. */
.services-page .service-stage{padding-top:12px;min-height:calc(100svh - 110px)}.services-page .service-doors{min-height:calc(100svh - 157px)}.services-page .service-door{border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.014);box-shadow:none}.services-page .service-door:hover{border-color:rgba(255,255,255,.23)}
.door-discover{transition:background .3s,color .3s,border-color .3s,transform .3s}.door-discover:hover,.service-door:focus-visible .door-discover{background:linear-gradient(135deg,#b49a723d,#1f3a3166);border-color:#b49a7270;color:#d9c19c;transform:translateY(-2px)}
.service-flight span{white-space:normal;text-align:center;padding:22px}
@media(max-width:800px){.services-page .service-stage{padding-top:12px}.services-page .service-doors{min-height:0}}
/* Small lenses sit behind genuinely frosted service cards. */
.services-disc-scene{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;opacity:.8;transition:opacity .4s}.services-disc-scene canvas{display:block;width:100%;height:100%}.service-stage.is-expanded .services-disc-scene{opacity:0}.service-doors,.service-expanded{position:relative;z-index:1}.services-page .service-door{background:rgba(16,18,17,.16);backdrop-filter:blur(14px) saturate(110%);-webkit-backdrop-filter:blur(14px) saturate(110%);border:1px solid rgba(238,240,232,.16);border-radius:22px;box-shadow:none}.services-page .service-door:hover{border-color:rgba(238,240,232,.2)}.services-page .service-visual{overflow:hidden}.services-page .service-visual img{transform:translate(var(--image-x,0px),var(--image-y,0px)) scale(1.035);transition:transform .6s cubic-bezier(.2,.8,.2,1)}.services-page .service-visual figcaption{position:relative;z-index:1;background:#0d1314}.service-remaining .service-door{backdrop-filter:blur(14px)}
@media(prefers-reduced-motion:reduce){.services-page .service-visual img{transform:none;transition:none}}
/* A neutral ribbon of light reveals the blur through the service glass. */
.services-ribbon-scene{position:absolute;inset:12px 0 35px;z-index:0;overflow:hidden;pointer-events:none;transition:opacity .4s}.services-ribbon-scene canvas{width:100%;height:100%;display:block}.service-stage.is-expanded .services-ribbon-scene{opacity:0}.services-page .service-door{background:rgba(14,16,15,.10);backdrop-filter:blur(18px) saturate(105%);-webkit-backdrop-filter:blur(18px) saturate(105%)}.services-ribbon-scene.ribbon-fallback{background:radial-gradient(ellipse at 50% 50%,rgba(209,210,198,.17),transparent 60%)}
/* Large service lenses extend above and below the cards; logo stays above them. */
.services-page header{position:relative;z-index:5;background:transparent}.services-page .service-stage{overflow:visible}.services-page .services-disc-scene{top:-110px;bottom:-190px;left:0;right:0;opacity:1;overflow:hidden;transition:opacity .4s}.services-page .service-stage.is-expanded .services-disc-scene{opacity:0}.services-page{overflow-x:clip}.services-page .services-partnership{position:relative;z-index:1}
/* Reveal disc canvas and outline cards on the same animation frame. */
.services-page .service-stage.is-returning .services-disc-scene{transition:none}
/* Let the lower lens finish behind the partnership copy, without clipping. */
.services-page .services-disc-scene{bottom:-620px}.services-page .services-partnership{background:transparent}
@media(max-width:800px){.services-page .services-disc-scene{bottom:-480px}}
.service-back{display:inline-flex;align-items:center;gap:10px;padding:7px 17px 7px 7px}.service-back-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.045)}.service-back-icon svg{width:17px;height:17px}
/* An email-led invitation, with room for the conversation to begin. */
.lets-talk-page .talk-opening{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;padding:85px 8vw 115px;align-items:center;min-height:calc(100svh - 110px);background:radial-gradient(ellipse at 85% 25%,rgba(71,88,70,.13),transparent 45%)}.talk-copy>.eyebrow{display:block;margin-bottom:30px}.talk-copy h1{font-size:clamp(50px,6.2vw,92px);line-height:1.05;letter-spacing:-.055em}.talk-copy>p{font-size:18px;line-height:1.8;max-width:500px;margin:32px 0}.talk-signature{font-size:14px;color:#b49a72}.talk-card{position:relative;isolation:isolate;padding:45px 38px;border:1px solid rgba(240,245,231,.15);border-radius:24px;background:radial-gradient(ellipse at 100% 0%,rgba(179,190,159,.12),transparent 65%),linear-gradient(130deg,rgba(255,255,255,.04),rgba(255,255,255,.012));backdrop-filter:blur(20px);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.talk-card .eyebrow{display:block;margin-bottom:28px}.talk-card h2{font-size:clamp(34px,3.7vw,55px);line-height:1.08}.talk-card>p{font-size:17px;line-height:1.8;color:#bcc3bb;margin:25px 0 30px}.talk-prompts{border-top:1px solid rgba(255,255,255,.1);padding-top:25px;margin-top:35px}.talk-prompts>span{font-size:14px;color:#e1e4d8}.talk-prompts p{font-size:15px;line-height:1.7;margin:10px 0 0}.talk-note{background:#1f3a31;margin:0 12px;border-radius:26px;text-align:center;padding:85px 6vw}.talk-note .eyebrow{display:block;margin-bottom:28px}.talk-note h2{font-size:clamp(40px,5vw,72px)}.talk-note>p{max-width:550px;margin:30px auto;color:#c0cbbf;font-size:18px;line-height:1.8}.talk-links{display:flex;justify-content:center;gap:15px;flex-wrap:wrap}.talk-footer{padding-top:55px;padding-bottom:135px}.talk-footer footer{font-size:14px}.talk-email[aria-disabled=true]{opacity:.65;cursor:default}
@media(max-width:800px){.lets-talk-page .talk-opening{grid-template-columns:1fr;gap:45px;padding:45px 7vw 75px}.talk-copy h1{font-size:clamp(47px,9vw,75px)}.talk-card{padding:35px 28px}.talk-note{padding:65px 7vw}.talk-footer{padding-bottom:135px}.talk-card h2{font-size:43px}}
.lets-talk-page .talk-opening{grid-template-columns:1fr 1fr;gap:6vw;align-items:start}.talk-form-card{padding:38px 32px}.talk-form-card h2{font-size:36px;line-height:1.15}.talk-form-card .eyebrow{margin-bottom:20px}.talk-form-card>p{font-size:16px;margin:20px 0 30px}.talk-form{display:grid;gap:24px}.talk-form label{display:block;color:#e3e6db;font-size:14px;line-height:1.5}.talk-field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.talk-form input:not([type=checkbox]),.talk-form textarea{width:100%;display:block;margin-top:9px;background:rgba(5,12,9,.23);border:1px solid rgba(255,255,255,.15);border-radius:11px;padding:13px 14px;color:#eee;font:inherit;font-size:16px;line-height:1.5;outline:none;transition:border-color .2s,background .2s}.talk-form textarea{resize:vertical;min-height:125px}.talk-form textarea::placeholder{color:#87918b}.talk-form input:focus,.talk-form textarea:focus{border-color:#b49a72;background:rgba(255,255,255,.025)}.field-optional{color:#87918b;font-size:12px;margin-left:8px}.talk-form fieldset{border:0;margin:0;padding:0}.talk-form legend{font-size:14px;margin-bottom:12px}.talk-service-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.talk-service-options label{position:relative;cursor:pointer}.talk-service-options input{position:absolute;opacity:0;width:1px;height:1px}.talk-service-options span{display:block;border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:12px;font-size:14px;text-align:center;background:rgba(255,255,255,.02);transition:background .25s,border-color .25s}.talk-service-options input:checked+span{background:radial-gradient(ellipse at top right,#4c6650,transparent 75%),#1f3a31;border-color:rgba(225,239,219,.33)}.talk-service-options input:focus-visible+span{outline:2px solid #b49a72;outline-offset:3px}.talk-service-options label:hover span{border-color:#b49a7266}.talk-form>button{justify-self:start;font:inherit;font-size:14px;cursor:pointer}.talk-form>button:disabled{opacity:.45;cursor:not-allowed;transform:none;background:rgba(255,255,255,.05);color:#ddd;border-color:rgba(255,255,255,.15)}.talk-form .talk-form-note{font-size:13px;line-height:1.7;margin:0;color:#969e96}.talk-form-note a{color:#c5b18d;text-decoration:underline;text-underline-offset:3px}.talk-copy{padding-top:25px}
@media(max-width:900px){.lets-talk-page .talk-opening{grid-template-columns:1fr;gap:45px}.talk-form-card{padding:30px 25px}.talk-copy{padding-top:0}}
@media(max-width:450px){.talk-field-row{grid-template-columns:1fr}.talk-service-options span{font-size:13px;padding:11px 8px}}
/* Two overlapping lenses behind the invitation and contact glass. */
.lets-talk-page header{position:relative;z-index:5}.lets-talk-page .talk-opening{position:relative;isolation:isolate;overflow:visible}.talk-disc-scene{position:absolute;left:0;right:0;top:-80px;bottom:-130px;z-index:0;pointer-events:none;overflow:hidden;opacity:.85}.talk-disc-scene canvas{display:block;width:100%;height:100%}.talk-copy,.talk-form-card{position:relative;z-index:1}.lets-talk-page{overflow-x:clip}.talk-note{position:relative;z-index:2}
/* A restrained 3D echo behind the homepage testimonial glass. */
.testimonials{position:relative;isolation:isolate;overflow:visible}.testimonial-disc-scene{position:absolute;left:0;right:0;top:-65px;bottom:-80px;z-index:0;pointer-events:none;overflow:hidden;opacity:.75}.testimonial-disc-scene canvas{display:block;width:100%;height:100%}.testimonials .testimonial-direct{position:relative;z-index:1;margin-left:auto;margin-right:auto}.testimonial-direct:before{backdrop-filter:blur(18px) saturate(110%);-webkit-backdrop-filter:blur(18px) saturate(110%);background:radial-gradient(ellipse at 100% 0%,#54644318,transparent 65%),linear-gradient(135deg,#10151355,#10151320)}
@media(max-width:800px){.testimonial-disc-scene{top:-40px;bottom:-50px;opacity:.6}}
/* The Kingsgate chapter system extended to the other case studies. */
.project-story .case-scope-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}.case-scope-list span{font-size:13px;color:#c6cebf;padding:9px 12px;border-radius:50px;background:#ffffff04;border:1px solid #ffffff12}.project-story .case-qualitative strong{font-size:clamp(30px,3.5vw,51px);line-height:1.15}.project-story .kg-outcome-grid{grid-template-columns:repeat(3,1fr)}.project-story .project-identity{max-width:900px;margin:0 auto 55px}.project-system-board{max-width:1000px;margin:0 auto;overflow:hidden;border-radius:22px;background:#0d1314}.project-system-board img{display:block;width:100%;height:auto}.project-story .kg-chapter-preview img{object-fit:cover}.case-device-preview{max-width:1050px;margin:auto}.case-device-frame{width:100%;max-width:980px;margin:0 auto;border-radius:20px;overflow:hidden;border:1px solid #ffffff20;background:#0d1314;transition:max-width .65s cubic-bezier(.22,1,.36,1);box-shadow:0 20px 70px #0003}.case-device-frame[data-device=tablet]{max-width:720px}.case-device-frame[data-device=mobile]{max-width:390px}.case-device-frame iframe{display:block;width:100%;height:600px;background:#fff;border:0}.case-browser-bar{height:40px;display:flex;align-items:center;gap:7px;padding:0 18px;background:#1a2020}.case-browser-bar i{width:6px;height:6px;border-radius:50%;background:#6b756e}.case-browser-bar span{margin:auto;font-size:12px;color:#afb5ab;padding-right:32px}.case-preview-note{font-size:14px;color:#9ca699;text-align:center;margin:22px auto 35px;max-width:500px;line-height:1.7}.project-story .kg-digital-feature>.button{margin-bottom:65px}.project-story .kg-closing p{font-size:clamp(36px,4.6vw,66px)}
@media(max-width:800px){.project-story .kg-outcome-grid{grid-template-columns:1fr}.case-device-frame iframe{height:520px}.project-story .case-qualitative strong{font-size:28px}.project-story .kg-closing p{font-size:clamp(32px,6.5vw,45px)}}
@media(prefers-reduced-motion:reduce){.case-device-frame{transition:none}}

.global4cast-story .kg-outcomes{background:#1f3a31}

.project-story .studio-belief-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:45px}@media(max-width:1000px){.project-story .studio-belief-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.project-story .studio-belief-grid{grid-template-columns:1fr}}

.project-story .studio-belief-grid article:hover{transform:rotateX(var(--belief-rx,0deg)) rotateY(var(--belief-ry,0deg))}

.project-story .studio-belief-grid article{isolation:isolate;transform-style:preserve-3d;background:linear-gradient(135deg,#ffffff07,#ffffff01);transition:transform .45s,background .45s,border-color .45s}
.project-story .studio-belief-grid article.has-pointer{transform:rotateX(var(--belief-rx,0deg)) rotateY(var(--belief-ry,0deg));border-color:#ffffff25;background:linear-gradient(135deg,#ffffff09,#ffffff02)}
.project-story .studio-belief-grid article.has-pointer:before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at var(--belief-x,80%) var(--belief-y,0%),#ffffff10,transparent 65%);opacity:1}
.project-story .studio-belief-grid article.has-pointer:after{opacity:1}

.beyond-identity-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.beyond-detail{min-width:0;padding:25px;border-radius:22px;border:1px solid #ffffff16;background:#ffffff03}.beyond-detail h3{font-size:25px;font-weight:400;margin:22px 0 15px}.beyond-detail p{font-size:16px;color:#c0cbbd;line-height:1.7}.beyond-construction,.beyond-palette,.beyond-type{position:relative;height:190px;margin-top:25px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:10px;background:#000}.beyond-construction img{width:100%;height:100%;object-fit:contain}.beyond-construction:after{content:'';position:absolute;inset:35px 12px;border-top:1px dashed #ffffff40;border-bottom:1px dashed #ffffff40;pointer-events:none}.beyond-construction span{position:absolute;inset:12px 45px;border-left:1px dashed #ffffff30;border-right:1px dashed #ffffff30}.beyond-palette{gap:4px;background:transparent;overflow:visible}.beyond-palette>div{flex:1;height:150px;border-radius:9px;background:var(--colour);display:flex;align-items:end;padding:12px 5px;transition:transform .35s}.beyond-palette>div:hover{transform:scale(1.07);z-index:1}.beyond-palette span{font-size:12px;writing-mode:vertical-rl}.beyond-type img{width:100%;height:auto}.beyond-detail:hover{background:radial-gradient(ellipse at 100% 0%,#ffffff09,transparent 65%),#ffffff03}@media(max-width:900px){.beyond-identity-details{grid-template-columns:1fr}.beyond-detail{padding:25px}.beyond-type img{max-width:415px}.beyond-construction img{max-width:420px}}

.beyond-limits-fitness-story .case-metrics.beyond-project-strip{display:flex;align-items:center;justify-content:center;padding:45px 30px}.beyond-project-strip p{font-family:Poynter,Georgia,serif;font-size:clamp(27px,3.6vw,48px);line-height:1.35;color:#eeeae0;margin:0;text-align:center}.beyond-project-strip p span{color:#b49a72;padding:0 .35em}.beyond-limits-fitness-story .kg-chapter-cards .work-service-box:nth-child(2) .kg-chapter-preview{background:#111514}.beyond-limits-fitness-story .kg-chapter-cards .work-service-box:nth-child(2) img{object-fit:contain;padding:18px}@media(max-width:600px){.beyond-project-strip p span{display:block;line-height:.8;padding:.2em}}

/* A more open, personal rhythm beneath the portrait reveal. */
.studio-page .studio-founder-copy.founder-editorial{display:grid;grid-template-columns:1.08fr 1fr;gap:9vw;max-width:1120px!important;padding:30px 0 25px;align-items:start}.founder-introduction .eyebrow{margin-bottom:35px}.studio-page .founder-introduction .studio-lead{font-family:Poynter,Georgia,serif;font-weight:400;font-size:clamp(34px,3.8vw,54px);line-height:1.22;letter-spacing:-.025em;margin:0;max-width:520px}.founder-introduction .studio-lead em{font-style:italic}.founder-story{padding-top:65px}.studio-page .founder-story p{font-size:18px;line-height:1.85;max-width:460px;margin:0 0 32px;color:#bcc4bb}.studio-page .founder-story .founder-foundation{font-size:15px;color:#879387;line-height:1.8;margin-top:45px}.founder-signature{display:block;font-family:Poynter,Georgia,serif;font-size:26px;color:#eeeae0;margin-top:35px}.founder-signature>span{display:block;font-family:Arial,sans-serif;font-size:13px;color:#b49a72;margin-top:10px;letter-spacing:.035em}@media(max-width:800px){.studio-page .studio-founder-copy.founder-editorial{grid-template-columns:1fr;gap:30px;padding:25px 0}.studio-page .founder-introduction .studio-lead{font-size:clamp(34px,7vw,46px);max-width:580px}.founder-story{padding-top:0;max-width:500px;margin-left:6vw}.studio-page .founder-story p{font-size:17px;margin-bottom:25px}.studio-page .founder-story .founder-foundation{margin-top:35px}.founder-introduction .eyebrow{margin-bottom:25px}}

.process-journey{max-width:1120px;margin:auto}.process-journey-tabs{display:flex;gap:35px;justify-content:center;margin:0 auto 45px;flex-wrap:wrap}.process-journey-tabs button{font:inherit;display:flex;gap:12px;align-items:center;border:0;background:none;color:#89968d;padding:12px 0;cursor:pointer;font-size:20px;transition:color .3s}.process-journey-tabs button>span{font-size:12px;color:#b49a72}.process-journey-tabs button[aria-selected=true]{color:#f1eee7}.process-journey-tabs button:hover{color:#d9c19c}.process-journey-tabs button:focus-visible{outline:2px solid #b49a72;outline-offset:7px;border-radius:4px}.process-journey-scene{position:relative;isolation:isolate;min-height:490px;display:flex;align-items:center;padding:50px 0 60px;--disc-shift:-65px;--disc-turn:-8deg}.process-disc-scene{position:absolute;inset:-85px -60px;z-index:0;pointer-events:none;transform:translateX(var(--disc-shift)) rotate(var(--disc-turn));transition:transform 1.1s cubic-bezier(.22,1,.36,1)}.process-disc-scene canvas{display:block;width:100%;height:100%}.process-journey-glass{position:relative;z-index:1;width:82%;max-width:870px;margin:0 auto;border-radius:28px;padding:48px 55px;background:linear-gradient(135deg,#151c1a70,#0c12113d);border:1px solid #ffffff16;border-bottom-color:#ffffff07;backdrop-filter:blur(22px) saturate(110%);-webkit-backdrop-filter:blur(22px) saturate(110%);box-shadow:inset 0 1px 0 #ffffff12}.process-journey-glass:after{content:'';position:absolute;left:0;top:22%;height:56%;width:1px;background:linear-gradient(transparent,#b49a72,transparent);opacity:0;transition:opacity .4s}.process-journey-glass:hover:after{opacity:1}.process-journey-panel{min-height:250px}.process-journey-panel[hidden]{display:none}.process-journey-panel h3{font-family:Poynter,Georgia,serif;font-size:clamp(30px,3.1vw,44px);font-weight:400;line-height:1.2;max-width:680px;margin:28px 0 22px}.process-journey-panel p{font-size:17px;line-height:1.8;max-width:620px;color:#c2ccc1;margin:0}.studio-approach .studio-section-top{text-align:center;margin-bottom:35px}@media(max-width:700px){.process-journey-tabs{gap:12px 22px;margin-bottom:20px}.process-journey-tabs button{font-size:16px;gap:7px}.process-journey-scene{padding:40px 0;min-height:460px}.process-journey-glass{width:100%;padding:32px 25px}.process-journey-panel{min-height:330px}.process-disc-scene{inset:-55px -20px}.process-journey-panel p{font-size:16px}.process-journey-panel h3{font-size:32px}}@media(prefers-reduced-motion:reduce){.process-disc-scene{transition:none}}

.process-disc-scene{inset:0 -60px -115px;transform:none;transition:none}.process-journey-scene{padding-top:75px;padding-bottom:105px}.process-next{position:absolute;right:-10px;top:50%;transform:translateY(-50%);z-index:3;width:48px;height:48px;border-radius:50%;border:1px solid #ffffff25;background:linear-gradient(135deg,#ffffff12,#ffffff03);backdrop-filter:blur(16px);color:#eeece5;display:grid;place-items:center;cursor:pointer;transition:background .3s,color .3s}.process-next svg{width:24px;height:24px}.process-next:hover{background:#b49a7230;color:#d9c19c}.process-next:focus-visible{outline:2px solid #b49a72;outline-offset:4px}@media(max-width:700px){.process-disc-scene{inset:15px -20px -75px}.process-journey-scene{padding-top:55px;padding-bottom:100px}.process-next{right:15px;top:auto;bottom:20px;transform:none;width:44px;height:44px}.process-journey-tabs{position:relative;z-index:2}}

.process-journey-scene{justify-content:center;overflow:visible}.process-disc-scene{inset:-40px -20px -60px;overflow:visible}.process-journey-glass{flex:0 1 auto;width:calc(100% - 140px);margin:0 auto}.process-previous{position:absolute;left:0;top:50%;transform:translateY(-50%);z-index:3;width:48px;height:48px;border-radius:50%;border:1px solid #ffffff25;background:linear-gradient(135deg,#ffffff12,#ffffff03);backdrop-filter:blur(16px);color:#eeece5;display:grid;place-items:center;cursor:pointer;transition:background .3s,color .3s}.process-previous[hidden]{display:none}.process-previous svg{width:24px;height:24px}.process-previous:hover{background:#b49a7230;color:#d9c19c}.process-previous:focus-visible{outline:2px solid #b49a72;outline-offset:4px}.process-next{right:0}@media(max-width:700px){.process-disc-scene{inset:-35px -10px -50px}.process-journey-glass{width:100%;margin:0 auto}.process-previous{left:15px;top:auto;bottom:20px;transform:none;width:44px;height:44px}.process-next{right:15px}}

.process-next[hidden]{display:none}

.lets-talk-page header{background:transparent;border:0;box-shadow:none}.lets-talk-page header:before,.lets-talk-page header:after{content:none}.lets-talk-page .talk-opening{background:transparent}.lets-talk-page .talk-disc-scene{top:-220px;bottom:-130px;overflow:visible}.lets-talk-page header .brand{position:relative;z-index:6}@media(max-width:800px){.lets-talk-page .talk-disc-scene{top:-170px}}

.lets-talk-page .talk-disc-scene{top:-80px;bottom:-130px}@media(max-width:800px){.lets-talk-page .talk-disc-scene{top:-80px}}

/* Mobile: readable navigation, generous footer and consistent service cards. */
@media(max-width:800px){
 nav a:nth-child(4){display:block}
 nav{width:max-content;max-width:calc(100vw - 16px);gap:0;padding:4px}
 nav a{padding:12px 10px;font-size:12px;white-space:nowrap}
 footer{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center;width:100%}
 footer .brand{width:100%;max-width:none;justify-self:auto}
 footer .brand img{width:100%;height:auto;display:block}
 footer>.footer-intention{display:none}
 footer>.footer-copyright{max-width:none;white-space:normal;text-align:center;justify-self:auto;font-size:12px}
 .services-page .service-door .door-content,.services-page .service-door:nth-child(even) .door-content{margin-top:35px;padding-bottom:0;display:flex;flex-direction:column;flex:1}
 .services-page .service-door h2{min-height:2.25em}
 .services-page .service-door .door-reveal{display:flex;flex-direction:column;align-items:flex-start;flex:1;margin-top:20px}
 .services-page .service-door .door-reveal p{max-width:none;flex:1}
 .services-page .service-door .door-discover{margin-top:auto}
 .services-page .service-remaining .service-door .door-content{margin-top:25px}
 .kingsgate-story .case-metrics{grid-template-columns:1fr;padding:30px 25px;gap:25px}
 .kingsgate-story .case-metrics>div{display:grid;grid-template-columns:95px minmax(0,1fr);gap:20px;align-items:center;text-align:left}
 .kingsgate-story .case-metrics>div>strong{font-size:46px;line-height:1.1;text-align:center}
 .kingsgate-story .case-metrics>div>span{text-align:left;max-width:none;font-size:14px}
}
@media(max-width:360px){nav a{padding:12px 8px;font-size:11px}.kingsgate-story .case-metrics>div{grid-template-columns:80px minmax(0,1fr);gap:15px}}

/* Touch services: tap to explore, then choose the service link. */
.service-mobile-trigger,.service-mobile-more{display:none}
@media(max-width:800px),(hover:none){
 .service-card a.service-trigger{display:none}
 .service-card .service-mobile-trigger{display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:left}
 .service-toggle-icon{font-family:Arial,sans-serif;font-size:25px;line-height:1;font-weight:300;color:#b49a72;flex-shrink:0}
 .service-card .service-mobile-more{display:inline-flex;margin:16px 0 4px;font-size:14px;padding:13px 21px}
 .service-card:not(.is-expanded) .service-reveal{grid-template-rows:0fr;opacity:0}
 .service-card:not(.is-expanded):before,.service-card:not(.is-expanded):hover:before,.service-card:not(.is-expanded):focus-within:before{opacity:0}
 .service-card.is-expanded .service-reveal{grid-template-rows:1fr;opacity:1}
 .service-card.is-expanded:before{opacity:1}
}
@media(prefers-reduced-motion:reduce){.service-reveal,.service-card:before{transition:none}}

/* Alternative hero: broad rounded light, without a diagonal reflective band. */
.hero-glow{background:radial-gradient(ellipse at 27% 16%,#55775d88,transparent 70%),radial-gradient(ellipse at 90% 46%,#365b4455,transparent 68%),#1f3a31;background-size:100% 100%}

@media(max-width:800px){
 .service-list .service-card h3{font-size:clamp(20px,6.4vw,28px);line-height:1.2}
 .service-list .service-mobile-trigger{gap:12px}
 .service-list .service-mobile-trigger>span:first-child{white-space:nowrap}
 .service-list .service-toggle-icon{font-size:22px}
}

@media(max-width:800px){.testimonial-disc-scene{top:-80px;bottom:-80px;opacity:.9}}

/* Slightly larger mobile navigation, with compact spacing on narrow phones. */
@media(max-width:800px){nav a{font-size:13px;padding:14px 10px}}
@media(max-width:380px){nav a{font-size:12px;padding:14px 8px}}

@media(max-width:800px){.work-clarity-for{white-space:nowrap}}

@media(max-width:800px){.work-overview-page .portfolio-heading h1{font-size:clamp(34px,10vw,56px)}.work-crafting,.work-clarity-for,.work-overview-page .portfolio-heading h1>em{display:block;white-space:nowrap}.work-clarity-for br{display:none}}

.work-opening-line{display:inline}.work-opening-line:after{content:'';display:block}
@media(max-width:800px){
 .work-overview-page .portfolio-heading h1{font-size:clamp(30px,8.6vw,48px)}
 .work-opening-line{display:block;white-space:nowrap}
 .work-opening-line:after{display:none}
 .work-ambitious,.work-brands{display:block}
 .services-partnership h2{font-size:clamp(28px,7.7vw,44px)}
 .partnership-title-line{display:block;white-space:nowrap}
 .services-partnership h2 br{display:none}
}

.work-opening-line:after{display:none}
@media(max-width:800px){.work-opening-line br{display:none}}
