@font-face{font-family:QuarterSans;src:url('/assets/general-sans-400.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:QuarterSans;src:url('/assets/general-sans-600.woff2') format('woff2');font-weight:600;font-display:swap}
:root{--paper:#edf0ea;--ink:#253b32;--forest:#253b32;--accent:#9f5639;--line:#cdd5ca;--sans:QuarterSans,sans-serif}html{scroll-padding-top:35px}body{background:#d6dfd4;color:var(--ink);font-family:var(--sans);padding:6px}h1,h2,h3{font-family:var(--sans);letter-spacing:-.035em;font-weight:500}h1{letter-spacing:-.045em}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #a85837;outline-offset:3px}.wrap{width:auto;max-width:1600px;padding-left:clamp(25px,3.1vw,54px);padding-right:clamp(25px,3.1vw,54px)}
.masthead{background:#f7f8f4;border:0;border-radius:26px;margin:0 auto 6px;min-height:82px;padding-top:12px;padding-bottom:12px}.masthead .brand-lockup{width:190px;height:auto}.masthead nav{gap:26px}.masthead nav a{font-size:15px}.masthead .contact-link{padding:12px 22px;background:#e2e9de;color:#263b30;border-radius:40px}.hero{background:#f7f8f4;border-radius:26px;padding-top:0;padding-bottom:0}.hero-layout{display:block;padding:0;min-height:0}.hero-copy{background:none;padding:clamp(75px,8vw,125px) 0 75px;min-height:0}.hero-copy h1{max-width:12ch;font-size:clamp(54px,6.5vw,96px);line-height:1;letter-spacing:-.04em;margin-bottom:26px}.hero-copy p{font-size:clamp(17px,1.45vw,20px);max-width:56ch;line-height:1.5;color:#53655a;margin:0 0 30px}.hero-copy .underlined-link{display:inline-flex;align-items:center;padding:15px 24px;min-height:50px;border-radius:30px;background:#263b30;color:white;text-decoration:none;border:0;transition:background .25s,transform .25s}.hero-copy .underlined-link:hover{background:#a3583b;transform:translateY(-2px)}
.vol-film{position:relative;overflow:hidden;margin:6px auto;border-radius:26px;max-width:1600px;min-height:550px;display:grid;place-items:center;background:#263b30;color:white;isolation:isolate}.vol-film-window{position:absolute;inset:0;overflow:hidden;z-index:-2}.vol-film .hero-photo{height:100%;background:#263b30}.vol-film .hero-photo-frame{height:100%}.vol-film .hero-photo img{width:100%;height:115%;min-height:0;object-fit:cover;object-position:center 53%;filter:brightness(.57) saturate(.8);transform:translateY(-6%);animation:none}.vol-film::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#15281eb8,transparent 75%);z-index:-1}.film-copy{width:100%;padding:50px clamp(25px,5vw,72px);max-width:1600px}.film-copy p{font-size:clamp(30px,3.7vw,53px);line-height:1.1;letter-spacing:-.03em;max-width:23ch;font-weight:500}.film-copy a{display:inline-flex;margin-top:28px;border-bottom:1px solid #e7ede6;padding:10px 0;font-size:15px}.film-copy a:hover{color:#ebc2a8}
@supports(animation-timeline:view()){.vol-film{view-timeline-name:--film;view-timeline-axis:block}.vol-film .hero-photo img{animation:film-drift linear both;animation-timeline:--film;animation-range:entry 0% exit 100%}@keyframes film-drift{from{transform:translateY(0)}to{transform:translateY(-13%)}}}
.vol-services{background:#f7f8f4;border-radius:26px;max-width:1600px;margin:6px auto;padding:75px clamp(25px,3.1vw,54px)}.vol-services-top{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:35px;margin-bottom:50px}.vol-services h2{font-size:clamp(42px,5vw,68px);line-height:1}.vol-services-top p{max-width:45ch;color:#526459;font-size:17px}.vol-service-list{display:grid;gap:6px}.vol-service-list article{display:grid;grid-template-columns:1fr .8fr;gap:30px;background:#e7ede4;border-radius:20px;min-height:250px;padding:34px}.vol-service-list article>div{display:flex;flex-direction:column;align-items:start}.vol-service-list h3{font-size:clamp(25px,2.4vw,34px);line-height:1.1}.vol-service-list p{max-width:51ch;color:#526459;margin-top:18px}.vol-service-list article a:last-child{display:inline-flex;align-items:center;min-height:44px;margin-top:auto;text-decoration:underline;text-underline-offset:4px}.vol-service-art{min-height:180px;position:relative;overflow:hidden;background:#b8cbbb;border-radius:14px}.vol-service-art i{display:block;position:absolute;background:#eff4e9;border-radius:10px;box-shadow:0 8px 25px #193c2818;transition:transform .5s cubic-bezier(.16,1,.3,1)}.art-priorities i{width:62%;height:22%;left:19%;top:18%}.art-priorities i:nth-child(2){top:41%;width:52%;left:24%;background:#6d8d75}.art-priorities i:nth-child(3){top:64%;width:42%;left:29%;background:#d3a48a}.art-decisions i{width:23%;height:38%;top:31%;left:13%}.art-decisions i:nth-child(2){left:39%;background:#6d8d75}.art-decisions i:nth-child(3){left:65%;background:#d3a48a}.art-plan i{width:40%;height:48%;left:16%;top:23%;transform:rotate(-8deg)}.art-plan i:nth-child(2){left:35%;transform:rotate(3deg);background:#d3a48a}.art-plan i:nth-child(3){left:54%;transform:rotate(12deg);background:#6d8d75}.vol-service-list article:hover .vol-service-art i:first-child{transform:translateY(-9px)}.vol-service-list article:hover .vol-service-art i:nth-child(3){transform:translateY(9px)}
.questions,.working-page,.notes,.contact,body>footer{max-width:1600px;margin:6px auto;border-radius:26px;overflow:hidden}.questions{background:#f7f8f4;padding-top:76px}.questions-heading h2,.work-copy h2,.notes-top h2,.contact h2{font-size:clamp(38px,4.5vw,64px);line-height:1.05}.questions-heading p{font-size:17px}.question-choices{background:#e6ece2;border-radius:16px}.answer-sheet{border-radius:16px}.working-page{background:#d1ddcb}.working-document{border-radius:14px}.notes{background:#f7f8f4;padding-top:70px;padding-bottom:70px}.contact{background:#253b32}.contact form{border-radius:18px}.contact input,.contact textarea{border-radius:8px}body>footer{background:#f7f8f4;padding-top:35px;padding-bottom:25px}.reading-main,.legal{max-width:1600px;margin:6px auto;background:#f7f8f4;border-radius:26px;padding:70px clamp(25px,5vw,80px)}.reading-main h1,.legal h1{font-size:clamp(44px,5vw,72px);line-height:1.05;max-width:16ch}.reading-layout article h2{font-size:clamp(30px,3vw,43px)}.reading-footer{background:#f7f8f4;padding-top:35px;padding-bottom:35px}
@media(max-width:760px){body{padding:4px}.masthead{border-radius:20px;min-height:70px;margin-bottom:4px}.masthead .brand-lockup{width:155px}.masthead nav.open{background:#f7f8f4;border-radius:0 0 20px 20px;padding:20px 25px}.hero,.vol-film,.vol-services,.questions,.working-page,.notes,.contact,body>footer{border-radius:20px;margin-top:4px;margin-bottom:4px}.hero-copy{padding:64px 0 58px}.hero-copy h1{font-size:clamp(46px,12vw,64px)}.hero-copy p{font-size:17px}.vol-film{min-height:410px}.film-copy{padding:35px 25px}.film-copy p{font-size:32px}.vol-services{padding:54px 25px}.vol-services-top{grid-template-columns:1fr;gap:18px;margin-bottom:32px}.vol-services h2{font-size:42px}.vol-service-list article{grid-template-columns:1fr;padding:26px;gap:25px}.vol-service-list article a:last-child{margin-top:14px}.vol-service-art{min-height:180px}.questions{padding-top:55px}.questions-heading h2,.work-copy h2,.notes-top h2,.contact h2{font-size:38px}.notes{padding-top:55px;padding-bottom:55px}.reading-main,.legal{padding:50px 25px}}
@media(prefers-reduced-motion:reduce){.vol-film .hero-photo img{animation:none;transform:translateY(-6%)}.vol-service-art i,.hero-copy .underlined-link{transition:none}}
/* Keep all worksheet choices legible on the pale surface. */
.question-choices button,.question-choices button[aria-selected="false"]{color:#354b3b}.question-choices button[aria-selected="true"]{color:#233a2c}.question-choices button span{color:#a85837}
/* Second design pass: the Volkano reference uses photographic service panels,
   a long dark staggered process and a distinctive concluding surface. */
.hero-copy { position:relative; padding-right:32%; }
.hero-feature { position:absolute; right:0; bottom:75px; width:min(28%,350px); padding:20px; border-radius:15px; background:#e7ece5; }
.hero-feature p:first-child { color:#253b32; font-size:15px; font-weight:600; margin:0 0 8px; }
.hero-feature p:nth-child(2) { font-size:14px; line-height:1.45; margin:0 0 10px; }
.hero-feature a { font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.vol-service-art { min-height:250px; background:#b4c2ae; }
.vol-service-art img { position:absolute; top:0; left:0; width:300%; max-width:none; height:100%; object-fit:cover; transform-origin:16.67% 50%; transition:transform 800ms cubic-bezier(.16,1,.3,1); }
.art-decisions img { left:-100%; transform-origin:50% 50%; }
.art-plan img { left:-200%; transform-origin:83.33% 50%; }
.vol-service-list article:hover .vol-service-art img { transform:scale(1.035); }
.vol-service-list article { min-height:320px; }
.working-page { background:#27382f; color:#f7f8f2; padding-top:80px; padding-bottom:80px; }
.working-page .work-layout { display:grid; grid-template-columns:minmax(0,1fr); gap:34px; }
.process-lead { max-width:860px; }
.process-lead h2 { color:#f7f8f2; max-width:15ch; }
.process-lead p { color:#d7e0d4; max-width:56ch; font-size:17px; line-height:1.6; margin-top:24px; }
.working-page .work-list { width:100%; display:grid; gap:12px; margin:15px 0 8px; padding:0; list-style:none; counter-reset:none; }
.working-page .work-list li { display:grid; grid-template-columns:minmax(150px,.7fr) minmax(0,1fr); gap:30px; align-items:center; width:70%; min-height:130px; padding:30px; border:0; border-radius:18px; background:#42594b; color:#fff; }
.working-page .work-list li:nth-child(2) { margin-left:15%; background:#566a56; }
.working-page .work-list li:nth-child(3) { margin-left:30%; background:#765849; }
.working-page .work-list li::before { display:none; }
.working-page .work-list li>span { color:#fff; font-size:25px; font-weight:500; }
.working-page .work-list li p { color:#f2f5ef; font-size:16px; line-height:1.6; }
.working-page .working-document { width:min(100%,800px); transform:none; margin:35px 0 0 auto; color:#253b32; }
.working-page .working-document .document-title { color:#253b32; }
.commitment-note { width:min(100% - 60px,800px); margin:34px auto 0; border-radius:18px; color:#253b32; }
body>footer { padding-top:55px; padding-bottom:28px; }
.quarter-end { display:grid; grid-template-columns:1.4fr .6fr; gap:60px; padding-bottom:70px; }
.quarter-end h2 { font-size:clamp(44px,5.5vw,78px); line-height:1; font-weight:500; }
.quarter-end p { max-width:43ch; font-size:17px; color:#526459; line-height:1.6; margin:25px 0 20px; }
.quarter-end .footer-contact { display:inline-flex; min-height:50px; align-items:center; background:#253b32; border-radius:30px; padding:0 24px; color:#fff; }
.quarter-end nav { display:flex; flex-direction:column; align-items:flex-start; gap:8px; justify-content:end; }
.quarter-end nav a { min-height:40px; display:inline-flex; align-items:center; font-size:16px; }
.quarter-end nav a:hover { text-decoration:underline; }
body>footer .footer-bottom { display:flex; align-items:center; gap:25px; flex-wrap:wrap; }
body>footer .footer-bottom .logo { width:170px; margin-right:auto; }
@media(max-width:760px) {
 .hero-copy { padding-right:0; }
 .hero-feature { position:static; width:100%; margin-top:40px; padding:18px; }
 .vol-service-art { min-height:210px; }
 .vol-service-list article { min-height:0; }
 .working-page { padding:55px 0; }
 .working-page .work-layout { gap:22px; }
 .working-page .work-list li { width:100%; margin:0!important; grid-template-columns:1fr; gap:12px; padding:24px; min-height:0; }
 .working-page .working-document { margin:15px 0 0; }
 .commitment-note { width:calc(100% - 50px); }
 .quarter-end { grid-template-columns:1fr; gap:35px; padding-bottom:40px; }
 .quarter-end h2 { font-size:48px; }
 body>footer .footer-bottom .logo { width:150px; }
}
@media(prefers-reduced-motion:reduce) { .vol-service-art img { transition:none; } .vol-service-list article:hover .vol-service-art img { transform:none; } }
/* Process cards use the full available measure, including at intermediate widths. */
.working-page .work-list { max-width:none; }
.working-page .working-document { max-width:800px; }
/* An authored moving still-life: a very slow camera move and a separate light pass.
   The motion is paused outside the viewport and when the document is hidden. */
.vol-film .hero-photo img { animation:quarter-camera 18s ease-in-out infinite alternate; animation-timeline:auto; animation-range:normal; animation-play-state:paused; }
.vol-film::before { content:''; position:absolute; z-index:-1; inset:-30% -15%; pointer-events:none; background:linear-gradient(115deg,transparent 34%,rgba(255,245,215,.16) 50%,transparent 63%); transform:translateX(-25%); animation:quarter-light 18s ease-in-out infinite alternate; animation-play-state:paused; }
.vol-film.is-playing .hero-photo img,.vol-film.is-playing::before { animation-play-state:running; }
@keyframes quarter-camera { from { transform:translateY(-5%) scale(1.02); } to { transform:translateY(-8%) scale(1.12); } }
@keyframes quarter-light { from { transform:translateX(-25%); opacity:.4; } to { transform:translateX(25%); opacity:1; } }
@media(prefers-reduced-motion:reduce) { .vol-film .hero-photo img { animation:none; transform:translateY(-6%); } .vol-film::before { animation:none; opacity:0; } }
/* Reduce repetitive service-card rhythm and make controls clearly usable. */
.vol-service-list article:nth-child(2){grid-template-columns:.9fr 1fr;background:#d6e2d4}
.vol-service-list article:nth-child(2)>div{order:2}
.vol-service-list article:nth-child(2)>.vol-service-art{order:1}
.vol-service-list article:nth-child(3){grid-template-columns:1.2fr .7fr;background:#efe7dc}
.vol-service-list article h3 a{text-decoration:none}
.vol-service-list article h3 a:hover{text-decoration:underline;text-underline-offset:5px}
.vol-service-list article p{max-width:47ch;font-size:16px;line-height:1.65}
.questions .question-choices button{min-height:64px;line-height:1.45}
.answer-sheet p{line-height:1.65}
.contact input:not([type="hidden"]),.contact textarea{border:1px solid #819485;background:#fffefa;padding:14px 16px;border-radius:6px;min-height:52px}
.contact textarea{min-height:150px}
.contact input:focus-visible,.contact textarea:focus-visible{outline:3px solid #9f5639;outline-offset:2px}
.contact .form-row{gap:20px}
.quarter-end{grid-template-columns:1.1fr 1fr 1fr;align-items:start;gap:50px;padding-bottom:40px}
.footer-identity .logo{width:190px}
.footer-identity p{margin-top:20px;font-size:15px}
.quarter-end nav{justify-content:start}
.quarter-end address{font-style:normal;line-height:1.8;color:#31443a;font-size:15px}
.quarter-end address a{display:inline-flex;min-height:44px;align-items:center;text-decoration:underline;text-underline-offset:4px}
body>footer .footer-bottom{padding-top:24px}
@media(max-width:760px){
 .vol-service-list article:nth-child(2),.vol-service-list article:nth-child(3){grid-template-columns:1fr}
 .vol-service-list article:nth-child(2)>div{order:0}
 .vol-service-list article:nth-child(2)>.vol-service-art{order:1}
 .quarter-end{grid-template-columns:1fr;gap:20px;padding-bottom:30px}
 .quarter-end nav{gap:0}
 .quarter-end nav a{min-height:44px}
 .footer-identity .logo{width:165px}
 .footer-identity p{margin-top:12px}
}
.vol-service-list article div h3 a{text-decoration:none}
.vol-service-list article div h3 a:hover{text-decoration:underline;text-underline-offset:5px}
/* Fourth pass: a visible, bounded editorial motion sequence. Content starts visible. */
.hero-copy h1{animation:quarter-headline-arrive 800ms cubic-bezier(.16,1,.3,1) both}
.hero-copy .draft-lead,.hero-copy .underlined-link{animation:quarter-lead-arrive 900ms cubic-bezier(.16,1,.3,1) both}
@keyframes quarter-headline-arrive{from{clip-path:inset(0 0 32% 0);transform:translateY(22px);opacity:.72}to{clip-path:inset(0);transform:none;opacity:1}}
@keyframes quarter-lead-arrive{from{transform:translateY(12px);opacity:.65}to{transform:none;opacity:1}}
.hero-feature{transition:background-color .25s,transform .35s cubic-bezier(.16,1,.3,1)}
.hero-feature:hover,.hero-feature:focus-within{background:#d5e2d3;transform:translateY(-4px)}
.masthead nav a:not(.contact-link){position:relative}
.masthead nav a:not(.contact-link)::after{content:'';position:absolute;left:0;right:0;bottom:-5px;height:2px;background:#a85837;transform:scaleX(0);transform-origin:left;transition:transform .25s}
.masthead nav a:hover::after,.masthead nav a:focus-visible::after{transform:scaleX(1)}
.vol-film{min-height:650px}
.vol-film .hero-photo img{animation-duration:9s}
.vol-film::before{animation-duration:9s}
.film-copy{padding-right:44%}
.film-stack{position:absolute;right:6%;bottom:9%;width:min(34%,390px);padding:22px;border-radius:18px;background:#f7f8f2;color:#253b30;box-shadow:0 16px 50px #13281e45}
.film-stack-title{font-size:13px;font-weight:600;color:#53655a;margin:0 0 13px}
.film-stack ul{display:grid;gap:8px;padding:0;margin:0;list-style:none}
.film-stack li{display:flex;justify-content:space-between;gap:18px;align-items:baseline;background:#e6ece2;padding:13px 14px;border-radius:8px;font-size:14px}
.film-stack li span{color:#53655a}.film-stack li strong{font-weight:600;text-align:right}
.vol-film.is-playing .film-stack li:nth-child(1){animation:quarter-slip-one 3s ease-in-out infinite alternate}
.vol-film.is-playing .film-stack li:nth-child(2){animation:quarter-slip-two 3s ease-in-out .2s infinite alternate}
.vol-film.is-playing .film-stack li:nth-child(3){animation:quarter-slip-three 3s ease-in-out .4s infinite alternate}
@keyframes quarter-slip-one{from{transform:translateX(0)}to{transform:translateX(-8px)}}
@keyframes quarter-slip-two{from{transform:translateX(0)}to{transform:translateX(8px)}}
@keyframes quarter-slip-three{from{transform:translateX(0)}to{transform:translateX(-5px)}}
.vol-service-art img{will-change:auto}
@supports(animation-timeline:view()){
 .vol-service-art{view-timeline-name:--service-image;view-timeline-axis:block}
 .vol-service-art img{animation:quarter-photo-reframe linear both;animation-timeline:--service-image;animation-range:entry 0% exit 100%}
 @keyframes quarter-photo-reframe{from{transform:scale(1.12)}to{transform:scale(1)}}
}
@view-transition{navigation:auto}
::view-transition-old(root){animation:quarter-page-out 180ms ease both}
::view-transition-new(root){animation:quarter-page-in 320ms cubic-bezier(.16,1,.3,1) both}
@keyframes quarter-page-out{to{opacity:.7;transform:translateY(-8px)}}
@keyframes quarter-page-in{from{opacity:.7;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:760px){
 .vol-film{min-height:640px;display:flex;flex-direction:column;justify-content:center;align-items:stretch}
 .film-copy{padding:45px 25px 20px}
 .film-copy p{font-size:30px}
 .film-stack{position:relative;right:auto;bottom:auto;width:auto;margin:25px 25px 45px;padding:18px}
 .film-stack li{font-size:13px;gap:8px}
}
@media(prefers-reduced-motion:reduce){
 .hero-copy h1,.hero-copy .draft-lead,.hero-copy .underlined-link,.vol-service-art img,.vol-film.is-playing .film-stack li{animation:none!important;transform:none}
 .hero-feature,.masthead nav a::after{transition:none}
 ::view-transition-old(root),::view-transition-new(root){animation:none}
}
