@import url('https://api.fontshare.com/v2/css?f[]=zodiak@400,500&f[]=general-sans@400,500,600&display=swap');
:root{
 --font-display:'Zodiak',Georgia,serif;--font-body:'General Sans',Arial,sans-serif;
 --text-xs:clamp(.75rem,.73rem + .1vw,.8125rem);--text-sm:clamp(.875rem,.85rem + .15vw,.9375rem);--text-base:clamp(1rem,.98rem + .12vw,1.0625rem);
 --text-lg:clamp(1.125rem,1rem + .4vw,1.375rem);--text-xl:clamp(1.6rem,1.2rem + 1.25vw,2.25rem);--text-2xl:clamp(2rem,1.5rem + 2vw,3rem);--text-hero:clamp(2.75rem,1.35rem + 4.3vw,5.5rem);
 --space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;
 --color-bg:oklch(98.6% .006 85);--color-surface:oklch(100% 0 0);--color-text:oklch(29% .026 155);--color-muted:oklch(45% .02 155);--color-primary:oklch(37% .045 155);--color-hover:oklch(29% .045 155);--color-tint:oklch(94.5% .015 140);--color-border:oklch(30% .025 155 / .18);--color-error:oklch(41% .11 30);
 --radius-sm:.25rem;--radius-md:.5rem;--radius-full:999px;--content-wide:1240px;
}
.wrap{width:min(calc(100% - var(--space-16)),var(--content-wide));margin-inline:auto}
.skip{position:absolute;top:-100px;left:var(--space-4);z-index:100;background:var(--color-primary);color:white;padding:var(--space-3)}
.skip:focus{top:var(--space-3)}
a{color:inherit;text-underline-offset:5px}
.site-header{background:var(--color-bg);border-bottom:1px solid var(--color-border)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);min-height:100px}
.brand{text-decoration:none;display:flex;flex-direction:column;align-items:center;line-height:1.1;padding-block:var(--space-4);flex-shrink:0}
.brand span{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;letter-spacing:-.06em}
.brand small{font-size:var(--text-xs);letter-spacing:.3em;margin-top:var(--space-2);padding-left:var(--space-1)}
.site-nav{display:flex;align-items:center;gap:var(--space-8);font-size:var(--text-sm)}
.site-nav a{text-decoration:none;padding-block:var(--space-3)}
.site-nav a:not(.button):hover{color:var(--color-muted);text-decoration:underline}
.site-nav a[aria-current=page]:not(.button){text-decoration:underline}
.button{display:inline-flex;justify-content:center;align-items:center;gap:var(--space-5);min-height:48px;padding:var(--space-3) var(--space-6);border:1px solid var(--color-primary);border-radius:var(--radius-sm);background:var(--color-primary);color:white;text-decoration:none;font-size:var(--text-sm);font-weight:500;line-height:1.4}
.button:hover{background:var(--color-hover);border-color:var(--color-hover)}
.button.secondary{background:transparent;color:var(--color-primary)}
.button.secondary:hover{background:var(--color-tint)}
.menu-toggle{display:none;min-width:48px;min-height:48px;font-size:var(--text-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm)}
.eyebrow{display:block;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.17em;font-weight:600;color:var(--color-muted);margin-bottom:var(--space-6)}
.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:var(--space-20);align-items:center;padding-block:var(--space-12) var(--space-16)}
.hero-copy{padding-block:var(--space-8)}
h1{font-family:var(--font-display);font-size:var(--text-hero);font-weight:400;letter-spacing:-.055em}
.hero-copy p{margin-block:var(--space-8);color:var(--color-muted);max-width:43ch}
.hero-photo{position:relative}
.hero-photo img{width:100%;height:570px;object-fit:cover;border-radius:var(--radius-sm);background:var(--color-tint)}
.hero-photo figcaption{font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-3)}
.quiet-note{font-size:var(--text-xs);color:var(--color-muted);display:block;margin-top:var(--space-4)}
.welcome-strip{padding-block:var(--space-8);border-block:1px solid var(--color-border)}
.welcome-strip .wrap{display:flex;justify-content:space-between;gap:var(--space-8);font-size:var(--text-sm)}
.welcome-strip strong{font-weight:500}
.section{padding-block:clamp(var(--space-16),8vw,var(--space-24))}
h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:400;letter-spacing:-.035em}
h3{font-family:var(--font-body);font-size:var(--text-lg);font-weight:500}
.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-24)}
.intro-grid h2{max-width:20ch}
.prose p+p{margin-top:var(--space-5)}
.prose{color:var(--color-muted)}
.prose strong{color:var(--color-text);font-weight:500}
.paths{margin-top:var(--space-12);border-top:1px solid var(--color-border)}
.path{display:grid;grid-template-columns:.15fr 1fr 1.35fr;gap:var(--space-8);padding-block:var(--space-8);border-bottom:1px solid var(--color-border);align-items:start}
.path .number{font-size:var(--text-xs);color:var(--color-muted);padding-top:var(--space-1)}
.path p{color:var(--color-muted)}
.story-panel{background:var(--color-tint)}
.story-split{display:grid;grid-template-columns:1.05fr 1fr;gap:var(--space-20);align-items:center}
.story-art img{width:100%;height:auto;background:var(--color-bg);border-radius:var(--radius-sm)}
.story-art figcaption{font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-4)}
.story-copy p{margin-block:var(--space-6);color:var(--color-muted)}
.text-link{display:inline-block;min-height:44px;padding-block:var(--space-3);font-size:var(--text-sm);font-weight:500}
.closing{padding-block:var(--space-20);text-align:center}
.closing h2{font-size:var(--text-2xl);max-width:24ch;margin-inline:auto}
.closing p{max-width:48ch;margin:var(--space-6) auto;color:var(--color-muted)}
.footer{border-top:1px solid var(--color-border);padding-block:var(--space-10) var(--space-6)}
.footer-top{display:flex;justify-content:space-between;gap:var(--space-8)}
.footer-title{font-family:var(--font-display);font-size:var(--text-lg)}
.footer-links{display:flex;gap:var(--space-8);font-size:var(--text-sm)}
.footer-links a{min-height:44px;padding-block:var(--space-2)}
.footer-note{font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-6);max-width:90ch}
.footer-bottom{font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-8);display:flex;justify-content:space-between;gap:var(--space-6)}
.page-intro{padding-block:var(--space-16) var(--space-10);max-width:800px}
.page-intro h1{font-size:var(--text-2xl);max-width:22ch}
.page-intro p{margin-top:var(--space-6);color:var(--color-muted);max-width:58ch}
.journey-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:var(--space-20);align-items:start;padding-bottom:var(--space-20)}
.journey-article h2{margin-top:var(--space-10);margin-bottom:var(--space-5)}
.journey-article h2:first-child{margin-top:0}
.journey-article p+p{margin-top:var(--space-5)}
.journey-article p{color:var(--color-muted)}
.signature{font-family:var(--font-display);font-size:var(--text-xl);margin-top:var(--space-8)}
.inquiry-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:var(--space-20);padding-bottom:var(--space-20);align-items:start}
.inquiry-aside{padding-top:var(--space-8)}
.inquiry-aside h2{margin-bottom:var(--space-6)}
.inquiry-aside p{color:var(--color-muted);margin-bottom:var(--space-6)}
.inquiry-aside .small{font-size:var(--text-sm)}
.aside-rule{border-top:1px solid var(--color-border);margin-top:var(--space-8);padding-top:var(--space-8)}
.form-box{padding:var(--space-10);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}
.preview-note{background:var(--color-tint);padding:var(--space-4) var(--space-5);font-size:var(--text-sm);margin-bottom:var(--space-8);border-radius:var(--radius-sm)}
.form-box h2{margin-bottom:var(--space-6)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}
.field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6);min-width:0}
label,legend{font-size:var(--text-sm);font-weight:500}
.optional{color:var(--color-muted);font-weight:400}
input[type=text],input[type=email],textarea,select{display:block;width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);font-size:1rem;min-height:48px}
textarea{resize:vertical;min-height:180px;line-height:1.6}
textarea::placeholder,input::placeholder{color:var(--color-muted);opacity:1}
.help{font-size:var(--text-xs);color:var(--color-muted)}
fieldset{border:0;min-width:0;margin-bottom:var(--space-6)}
legend{margin-bottom:var(--space-3)}
.radio-row{display:flex;align-items:flex-start;gap:var(--space-3);font-weight:400;padding-block:var(--space-3);font-size:var(--text-sm);cursor:pointer}
.radio-row input{flex-shrink:0;margin-top:var(--space-1);width:20px;height:20px;accent-color:var(--color-primary)}
.check-row{padding-block:var(--space-3);margin-bottom:var(--space-5)}
.form-bottom{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}
.form-bottom small{font-size:var(--text-xs);color:var(--color-muted)}
.count{text-align:right}
.review-data{padding-block:var(--space-5);border-bottom:1px solid var(--color-border)}
.review-data dt{font-size:var(--text-xs);color:var(--color-muted);margin-bottom:var(--space-2)}
.review-data dd{white-space:pre-wrap;overflow-wrap:anywhere}
.review-actions{display:flex;gap:var(--space-4);flex-wrap:wrap;margin-top:var(--space-8)}
.review-message{margin-top:var(--space-6);color:var(--color-muted);font-size:var(--text-sm)}
.details-stack{margin-top:var(--space-6)}
details{border-bottom:1px solid var(--color-border);padding-block:var(--space-5)}
summary{cursor:pointer;font-size:var(--text-sm);font-weight:500;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}
summary::after{content:'+';font-size:var(--text-lg)}
details[open] summary::after{content:'−'}
details p{font-size:var(--text-sm);color:var(--color-muted);margin-top:var(--space-3)}
.narrow{max-width:760px;margin-inline:auto;padding-bottom:var(--space-20)}
.narrow h2{margin-block:var(--space-8) var(--space-5)}
.narrow p{color:var(--color-muted)}
.full-url{display:block;overflow-wrap:anywhere;font-size:var(--text-xs);color:var(--color-muted);user-select:all;margin-top:var(--space-2)}
@media(min-width:1600px){.hero-photo img{height:620px}}
@media(max-width:900px){.hero{gap:var(--space-10);grid-template-columns:1fr 1fr}.hero-photo img{height:500px}.intro-grid{gap:var(--space-12)}.story-split,.journey-grid{gap:var(--space-10)}.inquiry-grid{gap:var(--space-10);grid-template-columns:.65fr 1.35fr}.form-box{padding:var(--space-6)}.site-nav{gap:var(--space-5)}}
@media(max-width:680px){
 .wrap{width:calc(100% - var(--space-10))}.header-inner{min-height:84px;flex-wrap:wrap;gap:0}.brand span{font-size:var(--text-lg)}.brand small{font-size:var(--text-xs)}
 .menu-toggle{display:block}.site-nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:var(--space-2);padding-bottom:var(--space-5)}.site-nav.open{display:flex}.site-nav a{padding:var(--space-3) var(--space-2)}.site-nav .button{margin-top:var(--space-2)}
 .hero{grid-template-columns:1fr;gap:var(--space-8);padding-block:var(--space-8) var(--space-10)}.hero-copy{padding-block:var(--space-4) 0}.hero-copy p{margin-block:var(--space-6)}.hero-photo img{height:360px;object-position:center 42%}.eyebrow{margin-bottom:var(--space-5)}
 .welcome-strip .wrap{flex-direction:column;gap:var(--space-3)}.welcome-strip{padding-block:var(--space-6)}
 .intro-grid,.story-split,.journey-grid,.inquiry-grid{grid-template-columns:1fr;gap:var(--space-8)}.section{padding-block:var(--space-12)}.path{grid-template-columns:28px 1fr;gap:var(--space-4)}.path p{grid-column:2}.paths{margin-top:var(--space-8)}
 .story-copy{padding-top:var(--space-3)}.closing{padding-block:var(--space-12)}.footer-top,.footer-bottom{flex-direction:column;gap:var(--space-4)}.footer-links{flex-wrap:wrap;gap:var(--space-5)}
 .page-intro{padding-block:var(--space-10) var(--space-8)}.inquiry-aside{padding-top:0}.form-grid{grid-template-columns:1fr;gap:0}.form-box{padding:var(--space-5)}.form-bottom{align-items:flex-start;flex-direction:column}.form-bottom .button{width:100%}.journey-grid{padding-bottom:var(--space-12)}.narrow{padding-bottom:var(--space-12)}
}
