@import url('assets/tokens.css');
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--pine);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--font-display);font-weight:400}h1{font-size:clamp(64px,7.7vw,112px);line-height:.95;letter-spacing:-.035em}h2{font-size:clamp(44px,5vw,72px);line-height:1.02;letter-spacing:-.025em}h3{font-size:34px;line-height:1.05}p{line-height:1.6}.mono{font:11px/1.5 var(--font-mono);letter-spacing:.1em;text-transform:uppercase}.wrap{max-width:1320px;margin:auto;padding:0 64px}.nav{height:104px;display:flex;align-items:center;justify-content:space-between;gap:35px}.logo{width:180px;height:auto;display:block}.nav-links{display:flex;align-items:center;gap:34px;font-size:13px}.button{height:44px;padding:0 21px;display:inline-flex;align-items:center;justify-content:center;gap:26px;background:var(--pine);color:var(--on-pine);border:1px solid var(--pine);border-radius:3px;font-size:13px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);background:#35594d}.button.outline{background:transparent;color:inherit;border-color:currentColor}.arrow{font-size:20px}.eyebrow{display:flex;align-items:center;gap:12px}.dot{height:7px;width:7px;display:inline-block;border-radius:50%;background:var(--pine)}.rule{border-top:1px solid var(--line)}.intro{max-width:470px;color:var(--ink-muted);font-size:17px}.section{padding:95px 0}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:start;margin-bottom:46px}.section-heading h2{max-width:650px}.section-heading p{max-width:320px}.foot{padding:30px 0;display:flex;justify-content:space-between;font-size:12px}.mock-note{font:10px var(--font-mono);color:var(--ink-muted)}.art{position:relative;overflow:hidden;aspect-ratio:1.5;background:#f5f0e3}.art img{display:block;width:200%;max-width:none;position:absolute}.art.e-lift img{left:-100%;top:0}.art.e-push img{left:0;top:-100%}.art.e-walk img{left:-100%;top:-100%}.cast{width:100%;display:block;mix-blend-mode:multiply}.meta-row{display:flex;justify-content:space-between;gap:15px}.text-link{font-size:13px;display:inline-flex;gap:30px;border-bottom:1px solid currentColor;padding:10px 0}.cta-band{padding:70px 0}.cta-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:35px}.cta-band h2{max-width:700px}.contact-detail{margin-top:20px;font-size:14px}.contact-detail summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px}.contact-detail p{max-width:450px;margin-top:12px}.toplink{position:fixed;bottom:16px;right:18px;background:var(--paper-raised);border:1px solid var(--line);padding:9px 13px;font-size:11px;z-index:50;border-radius:3px;color:var(--ink)}
/* 01 — Clear Path */
.clear .nav{border-bottom:1px solid var(--line)}.clear-hero{text-align:center;padding:60px 0 0;position:relative}.clear-hero .eyebrow{justify-content:center}.clear-hero h1{margin:25px auto 22px;max-width:940px}.clear-hero h1 em{font-style:italic;color:var(--pine)}.clear-hero .intro{margin:0 auto 24px}.hero-scene{position:relative;max-width:1050px;margin:28px auto 0;min-height:270px;display:flex;align-items:center;justify-content:center}.hero-scene .art{width:430px;mix-blend-mode:multiply}.side-note{position:absolute;left:0;top:105px;text-align:left;font:12px/1.7 var(--font-mono);color:var(--ink-muted);transform:rotate(-4deg)}.side-note:after{content:'⤴';font-size:45px;display:block;padding-left:110px}.scene-caption{position:absolute;right:15px;bottom:70px;font:11px/1.8 var(--font-mono);text-align:left}.workflow{padding:21px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font:11px var(--font-mono);text-transform:uppercase;letter-spacing:.06em}.workflow span:nth-child(even){color:var(--ink-muted)}.clear .process{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px}.process article{border-top:1px solid var(--line);padding-top:25px}.process h3{margin:22px 0 15px}.process p{color:var(--ink-muted);font-size:14px;max-width:330px}.clear .cta-band{background:var(--mustard)}.clear .note-feature{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.note-feature .art{border:1px solid var(--line)}.note-feature h2{margin:20px 0}.note-feature p{margin-bottom:20px}.clear .number{font:12px var(--font-mono)}
/* 02 — Working Studio */
.studio .mast{background:var(--mustard)}.studio .nav{border-bottom:1px solid #1e232033}.studio-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:60px;padding:52px 0 67px;align-items:center}.studio-hero h1{font-size:clamp(64px,7.4vw,106px);margin:26px 0}.studio-hero .intro{color:var(--ink);max-width:380px;margin-bottom:28px}.studio-art{position:relative;background:var(--paper-raised);border:1px solid var(--ink);padding:22px 25px 0;transform:rotate(2deg)}.studio-art .art{mix-blend-mode:multiply;aspect-ratio:1.24}.studio-art .art img{top:-115%;width:230%;left:-115%}.studio-art .sheet-foot{padding:18px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between}.studio-art .annotation{position:absolute;bottom:85px;right:-25px;background:var(--slack);padding:15px 20px;border:1px solid var(--ink);transform:rotate(-6deg);font:12px var(--font-mono)}.studio-strip{background:var(--pine);color:var(--paper);padding:23px 0}.studio-strip .wrap{display:flex;justify-content:space-between;gap:20px}.studio .manifesto{max-width:900px;text-align:center;margin:auto;padding:80px 0 55px}.studio .manifesto h2{font-size:62px}.studio .manifesto em{font-style:normal;background:var(--slack);padding:0 8px}.studio .manifesto p{max-width:470px;margin:25px auto 0;color:var(--ink-muted)}.studio .cast-stage{max-width:840px;margin:0 auto 60px}.studio .service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:80px 1fr 1fr 50px;gap:30px;padding:32px 0;border-bottom:1px solid var(--line);align-items:center}.service-row p{font-size:14px;color:var(--ink-muted)}.service-row .arrow{font-size:30px}.studio .cta-band{background:var(--slack)}.studio .cta-band h2{max-width:570px}
/* 03 — Field Guide */
.guide .mast{background:var(--pine);color:var(--paper-raised)}.guide .nav{border-bottom:1px solid #efebe03b}.guide .nav .button{background:var(--paper);color:var(--pine);border-color:var(--paper)}.guide-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:55px;padding:58px 0 70px;align-items:center}.guide-hero h1{font-size:clamp(64px,7.4vw,104px);margin:32px 0 26px}.guide-hero h1 em{color:var(--sage)}.guide-hero .intro{color:#d4d8cc;max-width:380px;margin-bottom:26px}.guide-hero .button{background:var(--paper);color:var(--pine);border-color:var(--paper)}.guide-plate{background:var(--paper);color:var(--ink);padding:23px;position:relative}.guide-plate .art{margin:23px 0;mix-blend-mode:multiply;aspect-ratio:1.08}.guide-plate .art img{width:240%;left:-129%;top:0}.guide-plate .stamp-note{border:1px solid var(--pine);border-radius:50%;width:98px;height:98px;position:absolute;right:-25px;bottom:-25px;background:var(--sage);display:grid;place-content:center;text-align:center;transform:rotate(12deg);font:11px/1.5 var(--font-mono)}.guide .thesis{display:grid;grid-template-columns:1fr 2fr;gap:65px}.guide .thesis h2{font-size:60px;max-width:740px}.guide .thesis p{max-width:530px;margin:25px 0;color:var(--ink-muted)}.guide .journal-head{display:flex;align-items:end;justify-content:space-between;padding-bottom:25px;border-bottom:1px solid var(--line)}.journal{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;margin-top:35px}.journal .art{margin-bottom:25px}.journal .art.cast-crop{background:var(--slack)}.journal .art.cast-crop img{width:100%;position:static;mix-blend-mode:multiply}.journal h3{margin:15px 0;font-size:32px}.journal p{font-size:14px;color:var(--ink-muted)}.guide .cta-band{background:var(--mustard)}
@media(max-width:800px){.wrap{padding:0 24px}.nav{height:82px}.logo{width:145px}.nav-links>a:not(.button){display:none}.nav-links{gap:0}.nav .button{font-size:11px;padding:0 12px}.section{padding:60px 0}.section-heading,.cta-band .wrap{display:block}.section-heading p{margin-top:22px}.cta-band .button{margin-top:25px}h1{font-size:66px}.clear-hero{padding-top:42px}.clear-hero h1{font-size:68px}.hero-scene{min-height:220px}.hero-scene .art{width:330px}.side-note,.scene-caption{display:none}.workflow{font-size:9px;flex-wrap:wrap;justify-content:center;gap:15px}.clear .process{grid-template-columns:1fr;gap:30px}.clear .note-feature{grid-template-columns:1fr;gap:30px}.studio-hero,.guide-hero{grid-template-columns:1fr;gap:40px;padding:35px 0 55px}.studio-hero h1,.guide-hero h1{font-size:76px}.studio-art{margin:0 15px}.studio-strip .wrap{flex-wrap:wrap;justify-content:center}.studio .manifesto{padding:55px 0 25px}.studio .manifesto h2{font-size:46px}.studio .cast-stage{margin-bottom:30px}.service-row{grid-template-columns:30px 1fr 25px;gap:15px}.service-row p{grid-column:2;grid-row:2}.service-row .arrow{grid-column:3;grid-row:1}.guide-plate{margin-right:15px}.guide .thesis{grid-template-columns:1fr;gap:24px}.guide .thesis h2{font-size:46px}.journal{grid-template-columns:1fr;gap:40px}.journal-head{gap:30px}.journal-head h2{font-size:46px}.foot{flex-wrap:wrap;gap:20px}.cta-band{padding:50px 0}.toplink{bottom:9px;right:9px} }
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
/* Keep canonical pose crops at the original reference-sheet proportions. */
.studio-art .art,.guide-plate .art{aspect-ratio:1.5}
.studio-art .art img{width:200%;left:-100%;top:-100%}
.guide-plate .art img{width:200%;left:-100%;top:0}
.hero-scene .art,.studio-art .art,.guide-plate .art{mix-blend-mode:darken}
.cast{mix-blend-mode:darken}
.studio-art{padding-top:25px;padding-bottom:0}.studio-art .art{margin:35px 0 45px}.studio-art .annotation{bottom:60px}
.guide-plate .art{margin:60px 0}

/* 04 — Common Ground: clear hero, illustrated color fields, pine practice. */
.hybrid .clear-hero{padding-bottom:45px}
.hybrid .together{background:var(--paper);padding:76px 0 64px;border-top:1px solid var(--line)}
.together-copy{text-align:center;max-width:950px;margin:auto}
.together-copy h2{font-size:clamp(44px,5.5vw,76px);margin:0 0 25px}
.together-copy h2 em{font-style:italic;color:var(--ink);background:var(--slack);padding:0 .12em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.together-copy p{max-width:490px;margin:0 auto;font-size:16px}
.ensemble{margin:48px auto 0;background:transparent;max-width:970px;padding:0;border:0}
.ensemble-top{display:flex;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line);padding-bottom:18px}
.ensemble img{display:block;width:100%;margin:0;mix-blend-mode:darken}
.ensemble figcaption{padding-top:18px;border-top:1px solid var(--line);color:var(--ink-muted);font-size:10px}
.pine-practice{background:var(--pine);color:var(--paper-raised);padding:90px 0 42px}
.practice-intro{display:grid;grid-template-columns:1.5fr 1fr;gap:70px;align-items:end;margin-bottom:64px}
.practice-intro h2{margin-top:0;font-size:clamp(46px,5.5vw,76px)}
.practice-intro h2 em{color:var(--sage);font-style:italic}
.practice-intro p{color:#d3d9cd;max-width:340px;font-size:16px}
.practice-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}
.practice-steps article{border-top:1px solid #efebe055;padding-top:24px}
.practice-steps .mono{color:var(--sage)}
.practice-steps h3{margin:0 0 18px;font-size:35px}
.practice-steps p{color:#d3d9cd;font-size:14px;max-width:320px}
.practice-end{display:flex;justify-content:space-between;gap:30px;align-items:center;padding-top:36px;margin-top:60px;border-top:1px solid #efebe055}
.pine-practice a:focus-visible{outline-color:var(--paper)}
.hybrid .note-art{background:var(--paper-raised);padding:24px;border:1px solid var(--line)}
.hybrid .note-art .art{border:0;mix-blend-mode:darken}
.note-caption{padding-top:20px;text-align:center;font-size:10px}
.hybrid .cta-band .wrap{align-items:center}.cta-invite{max-width:330px}.cta-invite>p{font-size:17px}.cta-invite summary{font-size:15px;text-underline-offset:7px}
@media(max-width:800px){.hybrid .clear-hero{padding-bottom:30px}.hybrid .together{padding:50px 0 35px}.ensemble{padding:0;margin-top:30px}.ensemble-top{font-size:9px;letter-spacing:.04em}.ensemble-top span{max-width:130px}.ensemble img{margin:0}.ensemble figcaption{font-size:8px;line-height:1.6}.pine-practice{padding:60px 0 35px}.practice-intro{grid-template-columns:1fr;gap:25px;margin-bottom:35px}.practice-steps{grid-template-columns:1fr;gap:30px}.practice-steps h3{margin-top:0}.practice-end{display:block;margin-top:38px}.practice-end .button{margin-top:22px}.cta-invite{margin-top:30px}.hybrid .note-art{padding:16px}}

/* Approved structural subtraction: retain only the process action in this row. */
.hybrid .practice-end{justify-content:flex-end;border-top:0;padding-top:0;margin-top:36px}
@media(max-width:800px){.hybrid .practice-end .button{margin-top:0}}

/* Initial agency copy: four services in the established pine section. */
.hybrid .pine-practice .practice-intro{display:block;margin-bottom:52px}
.hybrid .practice-intro .practice-summary{max-width:680px;margin-top:24px}
.together-copy p+p,.cta-invite>p+p{margin-top:16px}
.hybrid .service-offerings{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.hybrid .service-offerings h3{font-size:32px}
.hybrid .pine-practice{padding-bottom:80px}
@media(max-width:1000px){.hybrid .service-offerings{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}}
@media(max-width:600px){.hybrid .service-offerings{grid-template-columns:1fr;gap:28px}.hybrid .pine-practice{padding-bottom:50px}.hybrid .clear-hero h1{font-size:clamp(48px,11.7vw,68px)}}

/* Selected narrative scenes: retain the existing palette and section layout. */
.hero-scene .hero-illustration{display:block;width:min(680px,100%);height:auto;mix-blend-mode:darken}
.scene-illustration{aspect-ratio:2/1;object-fit:cover;object-position:center;height:auto}
.ensemble .scene-illustration{height:auto;aspect-ratio:2.5/1;object-position:center 65%}

/* Shared strategy calendar, embedded at the user-approved booking destination. */
.cta-invite .text-link{margin-top:20px;font-size:15px}
.booking-section{padding:48px 0 72px;scroll-margin-top:24px}
.booking-embed{display:block;width:100%;height:800px;border:0;border-radius:4px;background:#fff}
.booking-fallback{margin-top:18px;text-align:center;font-size:13px;color:var(--ink-muted)}
.booking-fallback a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:600px){.booking-section{padding:24px 0 44px}.booking-section .wrap{padding:0 12px}.booking-embed{height:880px}}
