/* Nordfeld: light trails, adaptive chapter contrast, and a consistent spacing rhythm. */
.craft-page{--space-section:88px;--space-gap:40px}
.light-trails{position:absolute;inset:0;pointer-events:none}
.light-trails:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 17% 23%,#3359db16,transparent 35%),radial-gradient(ellipse at 88% 66%,#d76b2f12,transparent 30%),radial-gradient(ellipse at 70% 8%,#9f51f014,transparent 32%)}
.light-trail{position:absolute;left:50%;top:49%;padding:2px;border-radius:50%;background:conic-gradient(from 45deg,transparent 0deg 195deg,#305fba20 235deg,#5385ff 270deg,#9459ef 300deg,#d087ff70 317deg,transparent 340deg);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;transform:translate(-50%,-50%);animation:light-orbit 96s linear infinite;will-change:transform}
.light-trail-one{width:84%;height:92%;filter:drop-shadow(0 0 4px #5673ec55)}
.light-trail-two{width:122%;height:128%;background:conic-gradient(from 190deg,transparent 0deg 160deg,#637c2c20 205deg,#9cb96a 244deg,#d4ab63 279deg,#e86e3c 300deg,transparent 330deg);animation-duration:132s;animation-direction:reverse;filter:drop-shadow(0 0 4px #a7bc7650)}
.light-trail-three{width:60%;height:68%;padding:1.5px;background:conic-gradient(from 275deg,transparent 0deg 205deg,#446b6720 237deg,#60bdb2 275deg,#97d4c080 305deg,transparent 335deg);animation-duration:112s;opacity:.68}
@keyframes light-orbit{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(360deg)}}
.craft-hero.is-orbit-paused .light-trail{animation-play-state:paused}
/* Difference blending inverts the white letters directly against the actual image pixels. */
.craft-page .chapter-nav.rolling-chapters{mix-blend-mode:difference}
.craft-page .rolling-chapters a,.craft-page .rolling-chapters a:hover{color:#fff!important}
.craft-page .rolling-chapters .chapter-label{text-shadow:none}
.craft-page .rolling-chapters a:focus-visible{outline:1px solid #fff;outline-offset:5px}
.craft-page .eyebrow{padding:0;border:0;border-radius:0;background:none;line-height:1.7}
.craft-page .content-wrap{gap:var(--space-gap)}
.craft-page .section-head{margin-bottom:0}
.craft-page .section-head h2{margin:0 0 16px}
.craft-page .section-head p{margin:0}
.craft-page .chapter-inner{padding-top:96px;padding-bottom:96px}
.craft-page .chapter-heading{margin-top:32px}
.craft-page .chapter-heading>h2{margin-bottom:0}
.craft-page .discipline-grid{margin-top:40px}
.craft-page .discipline{padding:28px}
.craft-page .discipline-symbol{margin:36px 0}
.craft-page .discipline p{margin-bottom:0}
.craft-page .discipline-link{margin-top:26px}
.craft-page .approach-layout{gap:72px}
.craft-page .approach-intro h2{margin-top:28px}
.craft-page .process-list article{padding:30px 0 42px}
.craft-page .process-list h3{margin:22px 0 14px}
.craft-page .process-list article:last-child{padding-bottom:0}
.craft-page .person-layout{gap:64px}
.craft-page .person-layout h2{margin-top:24px}
.craft-page .person-image img{height:520px}
.craft-page .person-image>.technical-label{margin-top:14px}
.craft-page .footer-inner{padding-top:44px;padding-bottom:44px;gap:32px}
.craft-page .footer-block>strong{display:block;margin-bottom:8px}
.craft-page .footer-block p+p{margin-top:5px}
.craft-subpage .page-hero-simple{min-height:min(70svh,620px);padding:80px 0 72px}
.craft-subpage .hero-shell{gap:24px}
.craft-subpage .hero-shell h1{font-size:clamp(42px,5.8vw,80px);line-height:1.08;margin:0}
.craft-subpage .hero-shell>p{margin:0;max-width:60ch}
.craft-subpage .section{padding:var(--space-section) 0}
.craft-subpage .section-tight{padding:72px 0}
.craft-subpage .service-scene{min-height:88svh}
.craft-subpage .service-scene-inner{padding-block:80px;gap:64px}
.craft-subpage .service-scene .glass-panel{padding:0}
.craft-subpage .service-scene .glass-panel>.eyebrow{margin:0}
.craft-subpage .service-scene .glass-panel h2{margin:24px 0 22px}
.craft-subpage .service-scene .glass-panel p{margin:0}
.craft-subpage .service-scene .glass-panel ul{margin-top:28px}
.craft-subpage .service-scene .service-visual{height:calc(100svh - 176px);min-height:360px;max-height:680px;top:104px}
.craft-subpage .image-split,.craft-subpage .about-shell{gap:64px;grid-template-columns:repeat(2,minmax(0,1fr))}
.craft-subpage .image-split .image-panel{height:500px;min-height:0}
.craft-subpage .image-copy{align-self:center}
.craft-subpage .image-copy h3{margin-bottom:24px}
.craft-subpage .image-copy p+p{margin-top:18px}
.craft-subpage .about-photo{max-width:480px;justify-self:end}
.craft-subpage .about-shell .glass-panel h2{margin:0 0 24px}
.craft-subpage .personal-heading{margin:32px 0 18px;padding-top:26px}
.craft-subpage .project-contributions{margin:0 0 16px}
.craft-subpage .project-contributions h2{margin:0 0 24px}
.craft-subpage .project-contributions dl>div{padding:18px 0}
.craft-subpage .project-frame{height:112svh}
.craft-subpage .project-frame figcaption{bottom:40px}
.craft-subpage .subpage-cta{padding:88px 30px}
.craft-subpage .subpage-cta h2{margin:24px 0 32px}
.craft-subpage .direct-contact-grid{gap:64px}
.craft-subpage .direct-mail-card,.craft-subpage .direct-phone-card{padding-top:28px}
.craft-subpage .direct-mail-card h2,.craft-subpage .direct-phone-card h2{margin:24px 0}
.craft-subpage .direct-mail-card>p,.craft-subpage .direct-phone-card>p{margin:0 0 24px}
.craft-subpage .direct-mail-card>.mail-client-note{margin:14px 0 0}
.craft-subpage .legal-card h1{margin:0 0 32px}
.craft-subpage .legal-card li+li{margin-top:20px}
@media(max-width:1000px){
.craft-page .chapter-inner{padding:76px 48px 76px 32px}
.craft-page .approach-layout,.craft-page .person-layout{gap:40px}
.craft-subpage .service-scene-inner,.craft-subpage .image-split,.craft-subpage .about-shell{gap:40px}
}
@media(max-width:640px){
.craft-page{--space-section:56px;--space-gap:28px}
.light-trail{padding:1.5px}.light-trail-one{width:96%;height:92%}.light-trail-two{width:145%;height:126%}.light-trail-three{width:72%;height:70%}
.craft-page .chapter-inner{padding:64px 30px 64px 22px}
.craft-page .chapter-heading{margin-top:26px}
.craft-page .chapter-heading>h2{margin-bottom:22px}
.craft-page .discipline-grid{margin-top:32px}
.craft-page .discipline{padding:26px}
.craft-page .discipline-symbol{margin:26px 0}
.craft-page .approach-layout,.craft-page .person-layout{gap:32px}
.craft-page .process-list article{padding:26px 0 32px}
.craft-page .process-list h3{font-size:28px}
.craft-page .person-image img{height:390px}
.craft-page .person-layout h2{margin-top:22px}
.craft-page .work-sticky{min-height:0}
.craft-page .footer-inner{padding-top:32px;padding-bottom:32px;gap:26px}
.craft-subpage .page-hero-simple{min-height:0;padding:62px 0 52px}
.craft-subpage .hero-shell{gap:22px}
.craft-subpage .hero-shell h1{font-size:clamp(36px,9.8vw,44px);letter-spacing:-1.5px}
.craft-subpage .section-tight{padding:56px 0}
.craft-subpage .service-scene{min-height:0}
.craft-subpage .service-scene-inner{grid-template-columns:minmax(0,1fr);padding-block:48px;gap:28px}
.craft-subpage .service-scene .service-visual{height:320px;min-height:0;max-height:none;top:0;position:relative}
.craft-subpage .service-scene .glass-panel{padding:0}
.craft-subpage .service-scene .glass-panel h2{font-size:32px;margin:20px 0}
.craft-subpage .service-scene .glass-panel ul{margin-top:24px}
.craft-subpage .service-scene .glass-panel li{padding:13px 0}
.craft-subpage .image-split,.craft-subpage .about-shell{grid-template-columns:minmax(0,1fr);gap:30px}
.craft-subpage .image-split .image-panel{height:340px}
.craft-subpage .about-photo{max-width:none;width:100%;justify-self:stretch}
.craft-subpage .about-shell .glass-panel h2{margin-bottom:20px}
.craft-subpage .personal-heading{font-size:24px;margin-top:28px;padding-top:24px}
.craft-subpage .project-frame{height:106svh}
.craft-subpage .project-frame figcaption{left:22px;right:32px;bottom:30px}
.craft-subpage .project-frame h3{font-size:clamp(29px,8.7vw,39px)}
.craft-subpage .subpage-cta{padding:64px 28px}
.craft-subpage .subpage-cta h2{margin:22px 0 28px}
.craft-subpage .direct-contact-grid{gap:32px}
.craft-subpage .direct-mail-card,.craft-subpage .direct-phone-card{padding-top:24px}
.craft-subpage .direct-mail-card h2,.craft-subpage .direct-phone-card h2{font-size:28px;margin:22px 0}
.craft-subpage .legal-card h1{font-size:34px;line-height:1.15}
.legal-page main.section{padding:56px 0}
}
@media(prefers-reduced-motion:reduce){.light-trail{animation:none;will-change:auto}}
/* Keep active letters visible: older subpage styles hid nested spans as well. */
.craft-page .chapter-nav.rolling-chapters a .chapter-label,.craft-page .chapter-nav.rolling-chapters a .chapter-letter{opacity:1}
.craft-page .craft-button,.craft-page .craft-actions a{text-shadow:none}
.craft-page .scroll-cue{text-shadow:0 1px 8px #101214}
.craft-page .person-layout>*,.craft-page .approach-layout>*{min-width:0}.craft-main h2{overflow-wrap:break-word;hyphens:auto}@media(max-width:640px){.craft-page .person-layout{grid-template-columns:minmax(0,1fr)}.craft-page .person-layout h2{font-size:clamp(34px,9vw,42px)}}

/* Amber identity and lighter touch scrolling. */
.craft-page{--amber:#e0ac55;--amber-hover:#edbf73;--warm:#e0ac55}
.craft-page .site-nav a[aria-current="page"]{background:var(--amber);color:#101214}
.craft-page .site-nav a:hover{color:var(--amber)}
.craft-page .site-nav a[aria-current="page"]:hover{color:#101214;background:var(--amber-hover)}
.craft-page .craft-button:not(.outline),.craft-subpage .button:not(.button-secondary){background:var(--amber);border-color:var(--amber);color:#101214}
.craft-page .craft-button:not(.outline):hover,.craft-subpage .button:not(.button-secondary):hover{background:var(--amber-hover);border-color:var(--amber-hover)}
.craft-page .craft-button.outline:hover,.craft-subpage .button-secondary:hover{border-color:var(--amber);color:var(--amber)}
.craft-page .discipline-symbol,.craft-page .discipline-link,.craft-page .contact-mail,.craft-page .direct-email>span,.craft-page .outline>span,.craft-page .scroll-cue>span{color:var(--amber)}
.craft-page .discipline:hover{border-color:var(--amber)}
.craft-page a:focus-visible,.craft-page button:focus-visible,.craft-page select:focus-visible{outline-color:var(--amber)}
.craft-page .mobile-chapters:after{background:var(--amber)}
.mobile-project-cta{display:none}
@media(max-width:1000px){
 html{scroll-behavior:auto}
 .craft-page .site-header,.craft-page .mobile-chapters{backdrop-filter:none;background:#101214}
 .craft-page .chapter-nav.rolling-chapters{pointer-events:none}
 .craft-page .chapter-nav.rolling-chapters a{pointer-events:none!important}
 .craft-page .rolling-chapters .chapter-letter{transform:none!important}
 .craft-page .light-trail{filter:none;will-change:auto}
 .craft-page .light-trail-three{display:none}
 .craft-page .orbit-scene{transform:none;opacity:1}
 .craft-page .orbit-scene .orbit-image:nth-of-type(n+9){display:none}
 .craft-page .work-chapter,.craft-subpage .project-frame{height:auto;min-height:0}
 .craft-page.has-mobile-chapters .work-sticky,.craft-page .work-sticky{position:relative;top:auto;height:85svh;min-height:570px}
 .craft-page.has-mobile-chapters .project-frame-sticky,.craft-page .project-frame-sticky{position:relative;top:auto;height:78svh;min-height:470px}
 .craft-page .work-sticky>img{transform:none}
 .craft-subpage .service-scene .service-visual{position:relative;top:auto}
 .craft-page.story-ready .discipline{transition-duration:.35s}
 .craft-page .mobile-project-cta{position:fixed;display:flex;align-items:center;justify-content:space-between;gap:20px;left:18px;right:18px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:95;min-height:48px;padding:14px 20px;background:var(--amber);color:#101214;border:1px solid var(--amber);font:11px/1.5 monospace;letter-spacing:1px;text-transform:uppercase;box-shadow:0 4px 18px #0004}
 .craft-page .mobile-project-cta:hover{background:var(--amber-hover)}
 .craft-page.menu-open .mobile-project-cta,.craft-page:has(.lightbox.is-open) .mobile-project-cta{display:none}
 .craft-page:has(.mobile-project-cta){padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}
 .craft-page .chapter{scroll-margin-top:122px}
 .craft-page .mobile-chapters{padding-inline:18px}
}

