
html{scroll-behavior:smooth}a{color:inherit}a:focus-visible{outline:3px solid #ff6600;outline-offset:6px}.direction-intro{padding:100px 0 55px;max-width:900px}.direction-intro h2,.story h2,.case-title{font-size:clamp(36px,4.8vw,74px);letter-spacing:-.055em;line-height:1.06;margin:15px 0 25px}.eyebrow{font-size:14px;color:#656860}.pathways{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;padding:50px 0 70px}.pathways h2{font-size:32px;margin:0 0 18px}.pathways p{max-width:340px}.textlink{display:inline-block;text-decoration:none;border-bottom:2px solid #ff6600;padding-bottom:7px;font-weight:700}.portfolio{display:grid;grid-template-columns:57% 37%;gap:6%;position:relative}.visual-stage{position:sticky;top:8vh;height:78vh;max-height:760px;background-color:#eeefea;background-image:linear-gradient(#252a2210 1px,transparent 1px),linear-gradient(90deg,#252a2210 1px,transparent 1px);background-size:32px 32px;overflow:hidden;align-self:start}.visual-stage img{position:absolute;left:6%;top:18%;width:88%;height:65%;object-fit:contain;opacity:0;transform:translateY(25px);transition:opacity .65s,transform .8s}.visual-stage img.active{opacity:1;transform:translateY(0)}.visual-stage img.photo{object-fit:cover;top:8%;height:84%}.grid-dot{position:absolute;width:12px;height:12px;background:#ff6600;border-radius:50%;box-shadow:0 0 18px #ff6600aa;left:32px;top:32px;animation:dotTravel 12s linear infinite;z-index:2}.motion-paused .grid-dot{animation-play-state:paused}@keyframes dotTravel{0%,100%{transform:translate(0,0)}25%{transform:translate(192px,0)}50%{transform:translate(192px,96px)}75%{transform:translate(64px,96px)}}.story{min-height:85vh;display:flex;flex-direction:column;justify-content:center;padding:55px 0;scroll-margin-top:45px}.story h2{font-size:clamp(32px,3.2vw,51px)}.story p{font-size:18px;line-height:1.7}.story .scope{font-size:14px;color:#656860;margin:20px 0 30px}.mobile-project{display:none}.section-end{padding:100px 0;max-width:850px}.section-end h2{font-size:clamp(35px,4vw,60px);letter-spacing:-.04em}.case-shell{font:18px Arial,sans-serif;background:#f8f8f4;color:#1c1e1d;margin:0}.case-shell header,.case-shell main{max-width:1450px;margin:auto;padding:32px 5%}.case-shell header{display:flex;justify-content:space-between}.case-shell p{line-height:1.75;color:#60645d}.case-shell .case-lead{max-width:860px;padding:50px 0}.case-visual{width:100%;max-height:750px;object-fit:contain;background:#eeefea}.case-visual.photo{object-fit:cover}.case-copy{display:grid;grid-template-columns:1fr 2fr;gap:10%;padding:70px 0}.case-copy h2{font-size:32px;letter-spacing:-.03em}.case-copy p{max-width:760px}.case-meta{font-size:15px;line-height:1.8}.case-footer{padding:65px 0;display:flex;justify-content:space-between;gap:30px}.asset-note{font-size:13px!important}.preview-note{font-size:13px;color:#70736c}.stage-controls{margin-bottom:25px} @media(max-width:800px){.portfolio{display:block}.visual-stage{display:none}.story{min-height:0;padding:35px 0 70px}.mobile-project{display:block;width:100%;margin-bottom:24px}.pathways{grid-template-columns:1fr;gap:30px}.direction-intro{padding:55px 0 20px}.case-copy{grid-template-columns:1fr;gap:20px}.case-footer{flex-direction:column}.stage-controls{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.grid-dot{animation:none}.visual-stage img{transition:none;transform:none}}

/* Full-width, large-scale grid study. The project image stage is transparent. */
body{background:#fff;overflow-x:clip}.wide-grid{--grid-size:300px;position:relative;isolation:isolate}.wide-grid::before{content:"";position:absolute;z-index:-2;pointer-events:none;top:0;bottom:0;left:calc(50% - 50vw);width:100vw;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300' viewBox='0 0 300 300'%3E%3Cpath d='M0 .5H300M.5 0V300' fill='none' stroke='%232c3531' stroke-opacity='.065'/%3E%3Cpath d='M0 4V0H4M296 0H300V4M0 296V300H4M296 300H300V296' fill='none' stroke='%232c3531' stroke-opacity='.15'/%3E%3C/svg%3E");background-size:var(--grid-size) var(--grid-size);background-position:center top;mask-image:linear-gradient(transparent,#000 160px,#000 calc(100% - 160px),transparent)}
.visual-stage{background:transparent;background-image:none}.motion-paused .wide-grid::after{animation-play-state:paused}.stage-controls button{font-size:13px;border-color:#ddd;background:#fff}.story p,.direction-intro p{color:#555d56}
@media(max-width:800px){.wide-grid{--grid-size:180px}.wide-grid::after{top:540px}.stage-controls{display:block}}
@media(prefers-reduced-motion:reduce){.wide-grid::after{animation:none;opacity:0}}

/* Hairline orange light follows the existing grid, behind the content. */
.grid-light{position:absolute;left:calc(50% - 50vw);top:0;width:100vw;height:100%;z-index:-1;pointer-events:none;overflow:hidden;mask-image:linear-gradient(transparent,#000 160px,#000 calc(100% - 160px),transparent)}
.grid-light .halo{filter:blur(3px)}
@media(prefers-reduced-motion:reduce){.grid-light{display:none}}
/* Explicit stacking keeps the light above the white grid and below all content. */
.wide-grid::before{z-index:0}
.wide-grid>.grid-light{z-index:1}
.wide-grid>section,.wide-grid>.stage-controls{position:relative;z-index:2}
/* Section 04: business capabilities, within the approved full-width grid. */
.capabilities{display:grid;grid-template-columns:42% 52%;gap:6%;padding:130px 0 110px;border-top:1px solid #dce0dd;align-items:start;scroll-margin-top:40px}
.cap-heading{position:sticky;top:65px;padding-right:30px}
.cap-heading h2{font-size:clamp(38px,4.3vw,66px);line-height:1.05;letter-spacing:-.055em;margin:25px 0 28px;font-weight:700}
.cap-heading h2 em{font-style:normal;color:#ff6600}
.cap-heading p{max-width:440px;font-size:17px;color:#555d56}
.cap-heading .textlink{margin-top:20px;font-size:16px}
.cap-instruction{display:block;margin-top:55px;font-size:13px;color:#666}
.capability{border-bottom:1px solid #d3d8d4;background:rgba(255,255,255,.88)}
.capability:first-child{border-top:1px solid #d3d8d4}
.capability summary{display:grid;grid-template-columns:32px 1fr 20px;align-items:center;gap:14px;cursor:pointer;padding:28px 4px;list-style:none;font-size:clamp(19px,1.85vw,27px);letter-spacing:-.025em;min-height:86px}
.capability summary::-webkit-details-marker{display:none}
.capability summary:focus-visible{outline:2px solid #ff6600;outline-offset:5px}
.cap-number{font:12px Arial,sans-serif;color:#707772;letter-spacing:.04em}
.cap-toggle{position:relative;width:14px;height:14px}
.cap-toggle:before,.cap-toggle:after{content:"";position:absolute;top:6px;left:0;width:14px;height:1px;background:currentColor}
.cap-toggle:after{transform:rotate(90deg)}
.capability[open] .cap-toggle:after{transform:rotate(0)}
.capability[open] .cap-number{color:#ff6600}
.cap-body{padding:0 32px 30px 50px;animation:capReveal .3s ease-out}
.cap-body h3{font-size:23px;letter-spacing:-.025em;margin:0 0 14px;line-height:1.25}
.cap-body>p{font-size:16px;line-height:1.7;margin:0 0 22px;color:#555d56}
.cap-body .cap-features{font-size:13px;color:#333b35}
.cap-journey{border-left:2px solid #ff6600;background:#f7f8f5;padding:18px 20px;margin:25px 0}
.cap-journey>span{font-size:10px;letter-spacing:.14em;color:#606760}
.cap-journey p{font-size:15px;color:#282f2b;line-height:1.8;margin:8px 0 0}
.cap-bottom{display:flex;justify-content:space-between;gap:20px;font-size:12px;align-items:center}
.cap-bottom>span{color:#646b65}.cap-bottom a{font-size:14px;text-underline-offset:5px}
.cap-footnote{font-size:12px;line-height:1.7;max-width:520px;margin-top:24px;color:#606760}
@keyframes capReveal{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
@media(max-width:1000px){.capabilities{grid-template-columns:39% 56%;gap:5%}.cap-heading{padding-right:0}.cap-body{padding-left:4px;padding-right:4px}.cap-bottom{align-items:start;flex-direction:column;gap:12px}}
@media(max-width:700px){.capabilities{grid-template-columns:1fr;padding:70px 0;gap:36px}.cap-heading{position:static}.cap-heading h2{font-size:44px}.cap-instruction{margin-top:30px}.capability summary{font-size:21px;padding:24px 0}.cap-body{padding-left:0}.cap-bottom{flex-direction:row}.cap-heading p{max-width:none}}
@media(prefers-reduced-motion:reduce){.cap-body{animation:none}}
/* Section 05: offset editorial panels; the mentoring offer leads. */
.beyond-web{padding:110px 0 35px;scroll-margin-top:30px}
.beyond-intro{display:grid;grid-template-columns:1.2fr 1fr;column-gap:10%;align-items:end;margin-bottom:70px}
.beyond-intro>.eyebrow{grid-column:1/-1;margin-bottom:25px}
.beyond-intro h2{font-size:clamp(44px,5.5vw,83px);line-height:1.02;letter-spacing:-.055em;margin:0}
.beyond-intro h2 span{color:#747a75}
.beyond-intro p{font-size:20px;max-width:440px;margin-bottom:5px}
.service-composition{display:grid;grid-template-columns:1fr 1fr;gap:50px 5%;align-items:start}
.service-panel{position:relative;box-shadow:0 18px 50px #18221b0c;transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.service-panel.reveal-ready{opacity:0;transform:translateY(50px)}
.service-panel.is-revealed{opacity:1;transform:none}
.service-panel:focus-within{opacity:1;transform:none}
.strategy-panel{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;background:#202522;color:#fff;overflow:hidden;min-height:650px}
.service-copy{padding:clamp(26px,4vw,58px)}
.service-kicker{font-size:12px;line-height:1.6;letter-spacing:.045em;display:block}
.service-copy h3{font-size:clamp(34px,3.8vw,58px);line-height:1.05;letter-spacing:-.045em;margin:30px 0 24px}
.service-copy p{font-size:16px;line-height:1.75;color:#535b55}
.strategy-panel p{color:#d1d8d2}
.service-copy ul{list-style:none;padding:0;margin:28px 0 35px;font-size:14px;line-height:1.5}
.service-copy li{border-top:1px solid #1c30211f;padding:11px 0}
.strategy-panel li{border-color:#ffffff26}
.service-copy a{display:flex;justify-content:space-between;align-items:center;gap:20px;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:12px;font-size:16px}
.service-copy a span{color:#ff6600;font-size:25px;transition:transform .2s}.service-copy a:hover span{transform:translate(3px,-3px)}
.strategy-drawing{position:relative;margin:45px 30px 45px 0;min-height:500px;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:80px 80px}
.drawing-label,.drawing-foot{position:absolute;left:30px;font-size:10px;letter-spacing:.12em;color:#c3ccc5}.drawing-label{top:15px}.drawing-foot{bottom:10px;font-size:12px;letter-spacing:0}
.plan-paper{position:absolute;width:66%;height:66%;left:15%;top:17%;padding:24px;box-shadow:0 15px 40px #0003}
.paper-back{background:#666f67;transform:rotate(-11deg) translate(-22px,-12px);font-size:14px;color:white}
.paper-middle{background:#ff6600;color:#1c211e;transform:rotate(6deg) translate(18px,-5px);font-size:14px}
.paper-front{background:#f5f5ed;color:#202522;transform:rotate(-3deg) translateY(24px);display:flex;flex-direction:column;justify-content:space-between}
.paper-front>span{font-size:9px;letter-spacing:.1em}.paper-front strong{font-size:clamp(28px,3vw,47px);line-height:1.06;letter-spacing:-.04em}.paper-front i{font-style:normal;font-size:12px;line-height:1.9}
.brand-panel{background:#f1f2ec}.brand-image{height:270px;position:relative;overflow:hidden}.brand-image img{width:100%;height:100%;object-fit:cover}.brand-image>span{position:absolute;left:18px;bottom:18px;font-size:11px;color:#fff;background:#202522e8;padding:9px 12px}
.training-panel{background:#faf3e9;margin-top:110px}
.content-drawing{height:280px;position:relative;overflow:hidden;background:#efe5d7}
.content-sheet{position:absolute;top:40px;left:14%;width:65%;padding:24px 30px;background:#fff;transform:rotate(-7deg);box-shadow:0 10px 30px #46301b17}.content-sheet>span{font-size:9px;letter-spacing:.12em}.content-sheet strong{display:block;font-size:36px;line-height:1.03;letter-spacing:-.045em;margin:22px 0}.content-sheet em{color:#ff6600;font-style:normal}.sheet-lines{height:30px;background:repeating-linear-gradient(transparent 0 9px,#d8dcd7 9px 10px)}
.content-stamp{position:absolute;right:8%;bottom:26px;background:#ff6600;color:#202522;padding:20px;font-size:19px;font-weight:bold;line-height:1.2;transform:rotate(8deg)}
.beyond-close{font-size:clamp(23px,3vw,38px);letter-spacing:-.025em;line-height:1.35;text-align:center;padding:75px 0 15px;color:#666e67}.beyond-close strong{font-weight:500;color:#202522}
@media(max-width:850px){.strategy-panel{grid-template-columns:1fr}.strategy-drawing{margin:0 30px 35px;min-height:430px}.plan-paper{width:55%;left:22%}.service-composition{gap:30px}.training-panel{margin-top:70px}.service-copy{padding:28px}.beyond-intro p{font-size:17px}.content-sheet{left:7%;width:80%;padding:22px}}
@media(max-width:620px){.beyond-web{padding-top:65px}.beyond-intro{grid-template-columns:1fr;gap:22px;margin-bottom:40px}.beyond-intro>.eyebrow{margin:0}.beyond-intro h2{font-size:47px}.service-composition{grid-template-columns:1fr}.training-panel{margin-top:0}.strategy-drawing{min-height:360px;margin:0 15px 30px}.plan-paper{width:65%;left:16%}.brand-image{height:230px}.service-copy h3{font-size:40px}.beyond-close{padding-top:40px}}
@media(prefers-reduced-motion:reduce){.service-panel,.service-copy a span{transition:none}.service-panel.reveal-ready{opacity:1;transform:none}}
/* Closing message echoes the header's orange letter arrival. */
.beyond-close .closing-line{display:block;line-height:1.4;color:#1c1e1d}
.beyond-close .closing-line+ .closing-line{font-weight:500}
.closing-word{display:inline-block;white-space:nowrap}
.closing-letter{display:inline-block;will-change:transform,opacity}
@media(prefers-reduced-motion:reduce){.closing-letter{opacity:1!important;transform:none!important;color:#1c1e1d!important}}
/* Meet Glen: an open editorial introduction after the service panels. */
.meet-glen{display:grid;grid-template-columns:38% 54%;gap:8%;padding:110px 0;border-top:1px solid #dce0dd;border-bottom:1px solid #dce0dd;margin-top:55px;scroll-margin-top:35px}
.glen-name{font-size:clamp(48px,6vw,90px);line-height:.98;letter-spacing:-.065em;font-weight:700;margin:45px 0 30px}.glen-name>span{color:#ff6600}.glen-marker p{font-size:16px;line-height:1.7}.glen-marker .textlink{margin-top:30px;font-size:15px}
.glen-intro h2{font-size:clamp(34px,3.8vw,56px);letter-spacing:-.045em;line-height:1.09;margin:0 0 35px}.glen-intro p{font-size:18px;line-height:1.8;max-width:680px}.glen-contact{display:flex;justify-content:space-between;gap:20px;text-decoration:none;border-bottom:1px solid #aab1ab;padding:24px 0 14px;margin-top:15px}.glen-contact span{color:#ff6600;font-size:24px}
.about-lead{padding:70px 0 90px;max-width:1000px}.about-lead h1{font-size:clamp(48px,7vw,96px);letter-spacing:-.06em;line-height:1.02;margin:25px 0 35px}.about-lead>p{font-size:23px;max-width:790px}.career-chapter{display:grid;grid-template-columns:30% 60%;gap:10%;padding:55px 0;border-top:1px solid #d3d8d4}.career-chapter h2{font-size:32px;line-height:1.15;letter-spacing:-.03em;margin:12px 0}.career-chapter p{margin:0 0 18px}.about-note{font-size:13px!important}
@media(max-width:700px){.meet-glen{grid-template-columns:1fr;gap:50px;padding:65px 0}.glen-name{font-size:64px;margin-top:25px}.glen-intro h2{font-size:38px}.glen-intro p{font-size:17px}.career-chapter{grid-template-columns:1fr;gap:20px;padding:35px 0}.about-lead{padding:45px 0}.about-lead>p{font-size:20px}}
/* Original supplied portrait, displayed without altering the photograph. */
.glen-portrait{margin:30px 0 25px;max-width:420px}.glen-portrait img,.about-portrait img{display:block;width:100%;height:auto;background:#111815}.glen-portrait figcaption,.about-portrait figcaption{font-size:13px;line-height:1.6;margin-top:14px}.glen-portrait figcaption>span{color:#656e67}
.about-portrait-layout{display:grid;grid-template-columns:60% 34%;gap:6%;align-items:center;padding:35px 0 70px}.about-portrait-layout .about-lead{padding:25px 0;min-width:0}.about-portrait-layout .about-lead h1{font-size:clamp(42px,5.5vw,78px)}.about-portrait{margin:0}.about-portrait figcaption{color:#656e67}
@media(max-width:700px){.about-portrait-layout{grid-template-columns:1fr;gap:25px;padding:20px 0 45px}.about-portrait{max-width:440px}.about-portrait-layout .about-lead h1{font-size:clamp(42px,9vw,64px)}.glen-portrait{max-width:400px}}
/* Original Wix badge and its existing certification wording. */
.designer-credential{display:flex;align-items:center;gap:18px;margin:26px 0 20px;max-width:360px}.designer-credential img{width:76px;height:auto;flex-shrink:0;object-fit:contain}.designer-credential>div{display:flex;flex-direction:column;gap:5px}.designer-credential span{font-size:12px;letter-spacing:.025em;color:#59625b}.designer-credential strong{font-size:19px;letter-spacing:-.02em}.designer-credential small{font-size:12px;color:#59625b}
@media(max-width:750px){.designer-credential{margin-bottom:30px}.designer-credential img{width:65px}}
