/* Fieldwork Exchange: calcium white, navigation blue, route orange and strict wayfinding geometry. */
:root{--blue:#113a6b;--navy:#071c35;--orange:#ff5a36;--mint:#a8d9c8;--white:#f6f7f4;--ink:#10202c;--line:rgba(16,32,44,.18);--ease:cubic-bezier(.23,1,.32,1)}*{box-sizing:border-box}html,body{max-width:100%;overflow-x:hidden;scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font:16px/1.6 'DM Sans',sans-serif}img{display:block;max-width:100%}.route-shell{width:min(1200px,calc(100% - 40px));margin:auto}.section-pad{padding:108px 0}h1,h2,h3{font-family:'Bodoni Moda',serif;letter-spacing:-.05em;line-height:.9}h2{font-size:clamp(3rem,6.8vw,6rem);margin:0 0 22px}.kicker,.stamp{font:600 .72rem 'IBM Plex Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);margin:0 0 14px}.kicker.orange{color:var(--orange)}.kicker.mint{color:var(--mint)}.btn{min-height:48px;border-radius:0;font-weight:700;padding:.72rem 1.1rem;transition:.18s var(--ease)}.btn:active{transform:scale(.97)}.btn-route{background:var(--orange);border-color:var(--orange);color:#fff}.btn-blue{background:var(--blue);border-color:var(--blue);color:#fff}.btn-mint{background:var(--mint);border-color:var(--mint);color:var(--navy)}.form-control,.form-select{min-height:52px;border-radius:0;border:1px solid var(--line);font-size:16px}.form-control:focus,.form-select:focus{border-color:var(--orange);box-shadow:0 0 0 .2rem rgba(255,90,54,.18)}.form-label{font-size:.88rem;font-weight:700}.site-header{z-index:1040;background:var(--white);border-bottom:1px solid var(--line)}.navbar{min-height:72px;padding:0}.navbar>.route-shell{display:flex;align-items:center;width:min(1200px,calc(100% - 40px))}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--navy)}.brand img{width:44px;height:44px;object-fit:contain}.brand span{display:grid;line-height:1}.brand strong{font-size:1.18rem;letter-spacing:-.04em}.brand small{margin-top:4px;font:600 .57rem 'IBM Plex Mono';letter-spacing:.09em;text-transform:uppercase;color:var(--blue)}.nav-link{color:var(--navy)!important;font-size:.88rem;font-weight:700;padding:.9rem .78rem!important}.nav-link:hover{color:var(--orange)!important}.header-contact{background:transparent!important;border:0!important}.navbar-toggler{width:48px;height:48px;border-radius:0;border:1px solid var(--blue);color:var(--blue);font-size:1.35rem}.offcanvas{background:var(--navy);color:#fff}.offcanvas h2{font-size:2rem;margin:0}.offcanvas .btn-close{filter:invert(1)}.offcanvas-body{display:grid;align-content:start}.offcanvas-body a{display:flex;align-items:center;min-height:58px;border-bottom:1px solid rgba(255,255,255,.2);color:#fff;text-decoration:none;font-family:'Bodoni Moda',serif;font-size:1.3rem}.cover{position:relative;min-height:760px;color:#fff;overflow:hidden;background:var(--navy)}.cover>img,.cover-shade{position:absolute;inset:0;width:100%;height:100%}.cover>img{object-fit:cover}.cover-shade{background:linear-gradient(90deg,rgba(7,28,53,.94),rgba(7,28,53,.57) 50%,rgba(7,28,53,.08))}.cover-copy{position:relative;padding-top:117px}.cover .stamp{color:var(--mint)}.cover h1{max-width:850px;margin:0 0 24px;font-size:clamp(5rem,10.6vw,10.7rem)}.cover p:not(.stamp){max-width:575px;color:rgba(255,255,255,.84);font-size:1.08rem}.cover-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:29px}.cover-grid{display:flex;gap:0;margin-top:68px;max-width:680px}.cover-grid span{padding:13px 14px;border-left:2px solid var(--orange);font-size:.79rem;font-weight:700;background:rgba(7,28,53,.58)}.route-strip{background:var(--orange);color:#fff}.route-strip .route-shell{display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:12px;font:600 .66rem 'IBM Plex Mono';letter-spacing:.08em}.route-strip i{height:1px;flex:1;background:rgba(255,255,255,.65)}.threshold-grid,.builder-grid,.conversation-grid,.rehearsal-grid,.outcome-grid,.notes-grid,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:62px;align-items:center}.threshold figure,.conversation figure,.rehearsal figure,.outcome figure{margin:0;position:relative;height:620px;overflow:hidden}.threshold figure img,.conversation figure img,.rehearsal figure img,.outcome figure img{width:100%;height:100%;object-fit:cover}.threshold figcaption,.conversation figcaption,.rehearsal figcaption,.outcome figcaption,.route-object figcaption{position:absolute;left:14px;bottom:14px;padding:8px 11px;background:var(--navy);color:#fff;font:600 .67rem 'IBM Plex Mono';letter-spacing:.05em}.threshold-list{margin-top:28px}.threshold-list article{display:grid;grid-template-columns:48px 1fr;gap:11px;padding:15px 0;border-top:1px solid var(--line)}.threshold-list b{font:600 1.4rem 'IBM Plex Mono';color:var(--orange)}.threshold-list strong{font-family:'Bodoni Moda',serif;font-size:1.25rem}.threshold-list p{margin:3px 0 0;font-size:.92rem}.route-builder{background:var(--blue);color:#fff}.builder-copy>p:not(.kicker){color:rgba(255,255,255,.8)}.builder-copy .form-label{color:var(--mint)}.route-card{margin-top:22px;padding:25px;background:#fff;color:var(--ink);border-left:6px solid var(--orange)}.route-card>span,.stage-output>span,#concernResult>span{font:600 .67rem 'IBM Plex Mono';letter-spacing:.1em;color:var(--blue)}.route-card h3{font-size:2rem;margin:9px 0 13px}.route-card div{margin-top:13px;padding-top:12px;border-top:1px solid var(--line)}.route-card strong{font:600 .66rem 'IBM Plex Mono';letter-spacing:.09em;color:var(--orange)}.route-card div p{margin:4px 0 0;font-size:.9rem}.route-object{height:690px;position:relative;margin:0;overflow:hidden}.route-object img{height:100%;width:100%;object-fit:cover}.conversation{background:var(--mint)}.conversation-copy blockquote{margin:28px 0;font:600 2rem/1.05 'Bodoni Moda',serif;max-width:540px}.text-link{font-weight:700;text-decoration:none;color:var(--blue)}.maproom{background:var(--white)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:34px}.section-head>p{max-width:440px;margin:0}.map-controls,.stage-buttons,.concern-buttons{display:flex;flex-wrap:wrap}.map-controls button,.stage-buttons button,.concern-buttons button{min-height:50px;padding:10px 18px;background:transparent;border:1px solid var(--blue);color:var(--blue);font-weight:700}.map-controls button.active,.stage-buttons button.active,.concern-buttons button.active{background:var(--blue);color:#fff}.context-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:16px;margin-top:22px}.context-card{background:#fff;border:1px solid var(--line)}.context-card img{width:100%;height:250px;object-fit:cover}.context-card>div{padding:24px}.context-card span{font:600 .67rem 'IBM Plex Mono';letter-spacing:.08em;color:var(--orange)}.context-card h3{font-size:1.7rem;margin:8px 0 13px}.context-card.wide{grid-row:span 2}.context-card.wide img{height:430px}.context-card.text-card{background:var(--navy);color:#fff}.context-card.text-card span{color:var(--mint)}.context-card blockquote{margin:25px 0 0;font:600 1.45rem/1.05 'Bodoni Moda',serif;color:var(--mint)}.context-grid.filtered{grid-template-columns:1fr}.context-grid.filtered .context-card{display:grid;grid-template-columns:minmax(330px,.85fr) 1.15fr;min-height:430px}.context-grid.filtered .context-card img{height:100%}.context-grid.filtered .context-card>div{align-self:center;padding:50px}.context-grid.filtered .text-card{display:block;padding:60px}.context-grid.filtered .text-card>div{padding:0;max-width:700px}.rehearsal{background:var(--navy);color:#fff}.rehearsal-panel>p:not(.kicker){color:rgba(255,255,255,.78)}.stage-buttons{margin:28px 0 0}.stage-buttons button{flex:1;border-color:rgba(255,255,255,.42);color:#fff}.stage-output{margin-top:16px;padding:26px;border-left:6px solid var(--orange);background:rgba(255,255,255,.07)}.stage-output>span{color:var(--mint)}.stage-output h3{margin:9px 0 12px;font-size:2rem}.stage-output blockquote{margin:20px 0 0;color:var(--mint);font:600 1.33rem/1.13 'Bodoni Moda',serif}.outcome{background:var(--white)}.outcome-panel{padding:46px;background:var(--mint)}.outcome-panel h3{margin:9px 0 12px;font-size:2rem}.concern-buttons{margin:27px 0}.concern-buttons button{font-size:.83rem}.outcome-panel dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0 0}.outcome-panel dl div{padding:14px;background:rgba(255,255,255,.6)}.outcome-panel dt{font:600 .66rem 'IBM Plex Mono';letter-spacing:.08em;color:var(--blue)}.outcome-panel dd{margin:4px 0 0;font-size:.88rem}.notes{background:#e7eef0}.notes-grid{align-items:start}.notes .input-group{margin:28px 0}.input-group-text{border:0;border-radius:0;background:var(--blue);color:#fff}.accordion{--bs-accordion-border-radius:0;--bs-accordion-inner-border-radius:0}.accordion-item{border:0;border-bottom:1px solid var(--line);background:transparent}.accordion-button{min-height:70px;border-radius:0!important;background:transparent;color:var(--ink);font-family:'Bodoni Moda',serif;font-size:1.15rem}.accordion-button:not(.collapsed){background:var(--blue);color:#fff;box-shadow:none}.accordion-button:not(.collapsed)::after{filter:invert(1)}.accordion-body{background:#fff;padding:22px}.empty{padding:14px;background:#fff;border-left:4px solid var(--orange)}.notes aside{position:sticky;top:100px;background:var(--navy);color:#fff}.notes aside img{width:100%;height:380px;object-fit:cover}.notes aside div{padding:27px}.notes aside span{font:600 .67rem 'IBM Plex Mono';color:var(--mint);letter-spacing:.08em}.notes aside h3{margin:8px 0 12px;font-size:2rem}.notes aside p{color:rgba(255,255,255,.76)}.contact{background:var(--orange);color:#fff}.contact-grid>div>p:not(.kicker){color:rgba(255,255,255,.86)}.contact form{padding:34px;background:var(--navy)}.contact form .form-label{color:var(--mint)}.form-check{padding-top:6px;min-height:44px}.form-check-input{width:21px;height:21px}.night{position:relative;display:grid;align-items:center;min-height:570px;overflow:hidden;background:var(--navy);color:#fff}.night>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.night:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,28,53,.92),rgba(7,28,53,.15))}.night>div{position:relative;z-index:1;width:min(1200px,calc(100% - 40px));margin:auto}.night h2{max-width:820px;font-size:clamp(3.7rem,7vw,7rem)}.night .stamp{color:var(--mint)}footer{background:var(--navy);color:#fff;padding:46px 0}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:center}.footer-grid .brand{color:#fff}.footer-grid .brand small{color:var(--mint)}.footer-grid p{margin:0;color:rgba(255,255,255,.72)}.footer-grid nav{display:flex;gap:17px;flex-wrap:wrap}.footer-grid nav a{color:#fff;text-decoration:none}.footer-grid small{color:rgba(255,255,255,.58)}.cookie{position:fixed;z-index:1080;bottom:16px;left:16px;right:16px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 17px;background:var(--navy);color:#fff;border-left:6px solid var(--orange)}.cookie p{margin:0;font-size:.87rem}.cookie>div{display:flex;gap:8px}.reveal{opacity:0;transform:translateY(16px);transition:opacity .4s var(--ease),transform .4s var(--ease)}.reveal.in{opacity:1;transform:none}@media(max-width:991.98px){.route-shell,.navbar>.route-shell{width:min(760px,calc(100% - 30px))}.section-pad{padding:78px 0}.threshold-grid,.builder-grid,.conversation-grid,.rehearsal-grid,.outcome-grid,.notes-grid,.contact-grid{grid-template-columns:1fr}.threshold figure,.conversation figure,.rehearsal figure,.outcome figure,.route-object{height:510px}.route-object{order:-1}.context-grid{grid-template-columns:1fr 1fr}.context-card.wide{grid-column:1/-1;grid-row:auto}.footer-grid{grid-template-columns:1fr}.notes aside{position:static}}@media(max-width:575.98px){.route-shell,.navbar>.route-shell{width:calc(100% - 24px)}.section-pad{padding:62px 0}.cover{min-height:720px}.cover>img{object-position:62% center}.cover-copy{padding-top:70px}.cover h1{font-size:4.15rem}.cover-actions{display:grid;max-width:300px}.cover-actions .btn{width:100%}.cover-grid{display:grid;margin-top:42px;max-width:300px}.route-strip .route-shell{min-height:56px;gap:6px;font-size:.52rem}.route-strip i{display:none}.threshold-grid,.builder-grid,.conversation-grid,.rehearsal-grid,.outcome-grid,.notes-grid,.contact-grid{gap:30px}.threshold figure,.conversation figure,.rehearsal figure,.outcome figure,.route-object{height:440px}.section-head{display:block}.section-head>p{margin-top:14px}.map-controls,.stage-buttons,.concern-buttons{display:grid;grid-template-columns:1fr}.context-grid{grid-template-columns:1fr}.context-card.wide{grid-column:auto}.context-card.wide img,.context-card img{height:300px}.context-grid.filtered .context-card{grid-template-columns:1fr;min-height:0}.context-grid.filtered .context-card img{height:300px}.context-grid.filtered .context-card>div,.context-grid.filtered .text-card{padding:27px}.outcome-panel{padding:28px 20px}.outcome-panel dl{grid-template-columns:1fr}.notes aside img{height:330px}.contact form{padding:25px 17px}.night{min-height:510px}.night>div{width:calc(100% - 24px)}.footer-grid nav{display:grid;grid-template-columns:1fr 1fr;gap:7px 16px}.footer-grid nav a{display:flex;min-height:44px;align-items:center}.cookie{left:7px;right:7px;bottom:7px;display:grid;gap:9px;padding:12px}.cookie>div{display:grid;grid-template-columns:1fr 1fr}.cookie .btn{min-height:44px;font-size:.78rem}.form-control,.form-select{font-size:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
