@font-face{font-family:"Instrument Serif";src:url("assets/instrument-serif-regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url("assets/instrument-serif-italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"DM Sans";src:url("assets/dm-sans-latin.woff2") format("woff2");font-weight:100 1000;font-style:normal;font-display:swap}
:root{color-scheme:light;--paper:#f5f2eb;--paper-deep:#ece8df;--ink:#2c2a25;--muted:#777066;--rust:#a84f36;--line:rgba(44,42,37,.19);--display:"Instrument Serif",Georgia,serif;--body:"DM Sans",Arial,sans-serif;--gutter:clamp(1.25rem,6.2vw,6.25rem);font-family:var(--body);color:var(--ink);background:var(--paper);font-synthesis:none;font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;scroll-padding-top:2rem}
*,*::before,*::after{box-sizing:border-box}body{margin:0;min-width:320px}img{display:block;max-width:100%}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid var(--rust);outline-offset:5px}.wrap{width:min(100%,1720px);margin-inline:auto;padding-inline:var(--gutter)}.site-header{min-height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:.62rem;text-decoration:none;font-size:.95rem;font-weight:550;letter-spacing:-.035em}.brand img{width:36px;height:36px;object-fit:contain;mix-blend-mode:multiply}.header-link{font-size:.88rem;text-decoration:none;font-weight:500}.header-link span{margin-left:.45rem;color:var(--rust)}.hero{min-height:680px;display:grid;grid-template-columns:1fr .96fr;align-content:center;gap:2rem 8%;padding-block:clamp(3.5rem,8vh,6.25rem) 3.1rem;position:relative}.hero-copy{padding-block:3.6rem 2.5rem;align-self:center}.eyebrow,.section-index{font-size:.74rem;line-height:1.6;letter-spacing:.105em;text-transform:uppercase;font-weight:570}.eyebrow{display:flex;align-items:center;gap:.75rem;margin:0 0 1.6rem}.eyebrow-rule{width:27px;height:1px;background:var(--rust)}.eyebrow-separator,.section-index>span{color:var(--rust)}h1,h2,p{margin-top:0}h1,h2,.display{font-family:var(--display);font-weight:400;letter-spacing:-.042em}h1{max-width:680px;font-size:clamp(4rem,8.8vw,8.8rem);line-height:.87;margin-bottom:1.65rem}h1 em,h2 em{color:var(--rust);font-weight:400}.hero-intro{font-size:clamp(1rem,1.3vw,1.17rem);max-width:385px;line-height:1.72;color:#58534b;margin-bottom:1.65rem}.hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.47rem;font-size:.81rem;letter-spacing:.015em;color:var(--muted);margin-bottom:2.05rem}.meta-dot{color:var(--rust)}.meta-divider{height:14px;width:1px;background:var(--line);margin-inline:.3rem}.button{display:inline-flex;min-height:54px;padding:.1rem 1.3rem;align-items:center;justify-content:center;gap:1.05rem;background:var(--ink);color:white;text-decoration:none;font-size:.89rem;font-weight:500;transition:background-color .2s,transform .2s}.button:hover{background:var(--rust);transform:translateY(-2px)}.button span{font-size:1rem}.hero-caption{margin:.83rem 0 0;color:var(--muted);font-size:.76rem;letter-spacing:.01em}.hero-caption span{padding-inline:.4rem;color:var(--rust)}.hero-image{position:relative;align-self:center;margin:0;min-width:0}.hero-image>img{width:100%;height:clamp(410px,52vw,610px);object-fit:cover;object-position:center 56%;background:#e8dfce}.hero-image figcaption{display:flex;gap:.5rem;align-items:center;padding-top:.72rem;color:var(--muted);font-size:.73rem;letter-spacing:.015em}.caption-dot{font-size:.38rem;color:var(--rust)}.image-index{position:absolute;right:0;bottom:2.7rem;padding:.45rem .58rem;background:var(--paper);font-size:.68rem;letter-spacing:.07em}.scroll-hint{grid-column:1/-1;display:flex;align-items:center;gap:.7rem;align-self:end;margin-top:.4rem;text-decoration:none;color:var(--muted);font-size:.73rem}.scroll-line{width:26px;height:1px;background:var(--rust)}.offering{background:var(--paper-deep)}.offering-inner{display:grid;grid-template-columns:.9fr 1.1fr;gap:4rem 10%;padding-block:clamp(5rem,10vw,9rem)}.section-index{color:var(--muted);font-size:.69rem}.section-heading h2,.about h2,.signup h2{font-size:clamp(3.4rem,6.3vw,6.4rem);line-height:.92;margin:1.45rem 0 0}.offering-copy{padding-top:3.45rem;max-width:590px}.offering-copy>p,.about-copy>p,.signup-inner>p:not(.section-index){font-size:1rem;line-height:1.85;color:#59554e}.offering-copy blockquote{margin:2.7rem 0 0;padding:1.25rem 0 0;border-top:1px solid var(--line)}.offering-copy blockquote p{margin:0;font-family:var(--display);font-size:2.45rem;line-height:1.1;letter-spacing:-.025em}.offering-copy blockquote cite{display:block;margin-top:.8rem;color:var(--muted);font-family:var(--body);font-style:normal;font-size:.79rem}.materials{padding-block:clamp(5.5rem,11vw,9rem);display:grid;grid-template-columns:.9fr 1.1fr;gap:3.5rem 10%}.material-list{padding:0;margin:0;list-style:none;border-top:1px solid var(--line);align-self:center}.material-list li{min-height:66px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:48px 1fr 20px;gap:.6rem;align-items:center;font-size:.9rem}.material-number{font-size:.68rem;letter-spacing:.06em;color:var(--rust)}.material-mark{font-size:.85rem;color:var(--rust);opacity:0;transform:translate(-4px,4px);transition:opacity .2s,transform .2s}.material-list li:hover .material-mark{opacity:1;transform:translate(0,0)}.details{background:var(--paper-deep)}.details-inner{padding-block:clamp(5rem,9vw,8rem)}.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:3.5rem 0 0;border-top:1px solid var(--line)}.detail-item{min-height:171px;padding:1.4rem 1.1rem 1.4rem 0;border-bottom:1px solid var(--line)}.detail-item+ .detail-item{border-left:1px solid var(--line);padding-left:1.25rem}.detail-item dt{margin-bottom:1rem;font-size:.74rem;color:var(--muted);letter-spacing:.03em}.detail-item dd{margin:0;font-family:var(--display);font-size:clamp(1.65rem,2.7vw,2.55rem);line-height:1}.detail-small{display:block;margin-top:.85rem;font-size:.75rem;line-height:1.5;color:var(--muted)}.detail-price dd{display:flex;flex-wrap:wrap;gap:.32rem .48rem;align-items:baseline}.price-period,.price-or{font-family:var(--body);font-size:.75rem;font-weight:400;color:var(--muted)}.detail-price dd .price-or{flex-basis:100%;font-family:var(--body);font-size:.7rem}.detail-location{display:flex;align-items:center;gap:.95rem;padding-top:1.5rem;margin:0}.location-mark{font-size:1.32rem;color:var(--rust)}.location-label{display:block;margin-bottom:.25rem;font-size:.7rem;color:var(--muted)}.detail-location strong{font-size:.86rem;font-weight:500}.about{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(3rem,10vw,10rem);align-items:center;padding-block:clamp(5.5rem,11vw,9rem)}.about-image{margin:0;position:relative}.about-image>img{width:100%;max-height:540px;object-fit:cover;object-position:center 37%;filter:saturate(.76)}.about-image figcaption{display:flex;align-items:center;gap:.3rem;padding-top:.75rem;font-size:.73rem;letter-spacing:.01em;color:var(--muted)}.about-image figcaption:first-letter{color:var(--ink)}.about-copy{max-width:550px}.about-copy h2{margin-bottom:1.75rem}.about-copy .about-name{font-family:var(--display);font-size:1.7rem;letter-spacing:-.025em;color:var(--ink);margin-bottom:.85rem}.text-link{display:inline-flex;align-items:center;gap:.7rem;margin-top:.5rem;padding:.25rem 0;text-decoration:none;font-size:.85rem;border-bottom:1px solid var(--rust)}.text-link span{color:var(--rust)}.signup{background:var(--rust);color:var(--paper)}.signup-inner{padding-block:clamp(5rem,10vw,8rem)}.signup .section-index,.signup-inner>p:not(.section-index){color:rgba(255,255,255,.79)}.signup .section-index span{color:var(--paper)}.signup h2{margin:1.4rem 0 1.35rem}.signup h2 em{color:#f1c8ae}.signup-inner>p:not(.section-index){max-width:420px;margin-bottom:1.75rem}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:white;color:var(--rust)}.email-note{margin:1rem 0 0;font-size:.78rem;color:rgba(255,255,255,.82)}.email-note a{text-underline-offset:3px}.email-note span{padding-inline:.3rem}.site-footer{min-height:96px;display:grid;grid-template-columns:auto 1fr auto;gap:1rem 2rem;align-items:center}.footer-brand{text-decoration:none;font-family:var(--display);font-size:1.35rem;letter-spacing:-.03em}.footer-brand span{color:var(--rust)}.footer-copy{font-size:.71rem;color:var(--muted)}.footer-links{display:flex;gap:1rem;font-size:.76rem}.footer-links a{text-decoration:none;color:var(--muted)}.footer-links a:hover,.header-link:hover{color:var(--rust)}
@media(min-width:1500px){.hero{min-height:770px}.hero-image>img{height:620px}}
@media(max-width:760px){:root{--gutter:1.3rem}.site-header{min-height:69px}.brand{font-size:.87rem}.brand img{width:33px;height:33px}.header-link{font-size:.82rem}.hero{min-height:auto;grid-template-columns:1fr;gap:2rem;padding-block:3.5rem 2.1rem}.hero-copy{padding-block:0}.eyebrow{margin-bottom:1.35rem;font-size:.68rem}.hero h1{font-size:clamp(4rem,15vw,6.2rem);margin-bottom:1.3rem}.hero-intro{max-width:365px;font-size:1rem;margin-bottom:1.3rem}.hero-meta{font-size:.75rem;margin-bottom:1.6rem;gap:.4rem}.hero .button{min-height:52px}.hero-image{width:100%}.hero-image>img{height:clamp(290px,96vw,460px);object-position:center 54%}.scroll-hint{margin-top:.4rem}.offering-inner,.materials{grid-template-columns:1fr;gap:2rem;padding-block:4.5rem}.section-heading h2,.about h2,.signup h2{font-size:clamp(3.45rem,13vw,5.25rem)}.offering-copy{padding-top:0}.offering-copy>p,.about-copy>p,.signup-inner>p:not(.section-index){font-size:.96rem;line-height:1.78}.offering-copy blockquote{margin-top:2rem}.offering-copy blockquote p{font-size:2.15rem}.materials{padding-block:4.5rem}.material-list li{min-height:64px;font-size:.87rem;grid-template-columns:36px 1fr 16px;gap:.55rem}.details-inner{padding-block:4.5rem}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:2.35rem}.detail-item{min-height:137px;padding-block:1rem}.detail-item:nth-child(3){border-left:0;padding-left:0}.detail-item:nth-child(2){padding-left:1rem}.detail-item:nth-child(4){padding-left:1rem}.detail-item dt{margin-bottom:.75rem}.detail-item dd{font-size:2rem}.detail-small{font-size:.72rem;margin-top:.65rem}.about{grid-template-columns:1fr;gap:2.35rem;padding-block:4.5rem}.about-image{max-width:480px}.about-image>img{max-height:470px;object-position:center 31%}.about-copy h2{margin-top:1.15rem}.signup-inner{padding-block:4.5rem}.site-footer{grid-template-columns:1fr auto;min-height:112px;gap:.35rem 1rem;padding-block:1.1rem}.footer-copy{grid-row:2;font-size:.67rem}.footer-links{grid-column:2;grid-row:1/3;flex-direction:column;gap:.7rem;align-items:flex-end;font-size:.74rem}}
@media(max-width:390px){:root{--gutter:1.05rem}.hero h1{font-size:3.7rem}.hero-meta{gap:.32rem;font-size:.71rem}.meta-divider{margin-inline:.17rem}.detail-item dd{font-size:1.8rem}.price-period{font-size:.7rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

.draft-value{font-style:italic;opacity:.86}.about{grid-template-columns:1.05fr .95fr}.about-note{padding:clamp(1.6rem,4vw,3rem);background:var(--paper-deep)}.about-note-index{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.about-note p{margin:2.6rem 0;font-family:var(--display);font-size:clamp(2rem,4vw,3.4rem);line-height:1.12;letter-spacing:-.03em}.about-note p em{color:var(--rust);font-weight:400}.about-note-rule{display:block;width:3rem;height:2px;background:var(--rust)}.signup-inner{display:grid;grid-template-columns:minmax(250px,.85fr) minmax(0,1.15fr);column-gap:clamp(2rem,7vw,7rem);row-gap:1.2rem;align-items:start}.signup-inner>.section-index{grid-column:1/-1;margin:0}.signup-heading h2{margin-top:.6rem}.signup-heading>p{max-width:370px;margin:1.4rem 0 0;color:rgba(255,255,255,.87);font-size:.96rem;line-height:1.8}.signup-form{min-width:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem 1rem}.field{display:grid;align-content:start;gap:.45rem;min-width:0;font-size:.79rem;font-weight:500;color:var(--paper)}.field>span,.field-group legend{line-height:1.45}.field input{min-height:47px;width:100%;padding:.72rem .8rem;border:1px solid rgba(255,255,255,.46);border-radius:0;background:rgba(255,255,255,.09);color:white;font:400 .87rem/1.4 var(--body)}.field input::placeholder{color:rgba(255,255,255,.73)}.field input:focus-visible,.field-group input:focus-visible,.signup-form button:focus-visible,.consent a:focus-visible{outline:3px solid #fff;outline-offset:2px}.field-group{min-width:0;padding:0;margin:0;border:0}.field-group legend{padding:0;margin:0 0 .75rem;font-size:.79rem;font-weight:500;color:var(--paper)}.address-group,.days-group,.privacy-group{grid-column:1/-1}.address-group{display:grid;grid-template-columns:1.2fr .8fr;gap:.55rem 1rem}.address-group legend{grid-column:1/-1}.address-city{display:grid;grid-template-columns:.62fr 1fr;gap:1rem}.field-hint{font-size:.72rem;font-weight:400;color:rgba(255,255,255,.81)}.days-group{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.45rem}.days-group legend{grid-column:1/-1}.day-option{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.42rem .38rem;align-items:center;min-height:67px;padding:.52rem .47rem;border:1px solid rgba(255,255,255,.4);font-size:.68rem;line-height:1.35;color:#fff;cursor:pointer}.day-option:has(input:checked){background:var(--paper);color:var(--ink);border-color:var(--paper)}.day-option input,.consent input{width:17px;height:17px;margin:0;accent-color:var(--rust);cursor:pointer}.day-option small{grid-column:2;font-size:.64rem;color:rgba(255,255,255,.79)}.day-option:has(input:checked) small{color:var(--muted)}.field-error{grid-column:1/-1;margin:0;font-size:.83rem;color:#fff0d5}.privacy-group{padding-top:.1rem}.consent{display:flex;align-items:flex-start;gap:.7rem;font-size:.78rem;line-height:1.65;color:rgba(255,255,255,.94)}.consent input{flex:none;margin-top:.12rem}.consent a{text-underline-offset:3px}.form-note{margin:1.4rem 0 1.1rem;font-size:.76rem;line-height:1.65;color:rgba(255,255,255,.84)}.form-submit{min-height:51px;border:0;font-family:var(--body);cursor:pointer}.form-status{min-height:1.2em;margin:.6rem 0 0;font-size:.77rem;color:white}.signup-form .email-note{margin-top:.5rem}
@media(max-width:760px){.about{grid-template-columns:1fr;gap:2rem}.about-note{padding:1.35rem}.about-note p{font-size:2.35rem;margin:1.65rem 0}.signup-inner{grid-template-columns:minmax(0,1fr);gap:1.5rem;padding-block:4.5rem}.signup-inner>.section-index{grid-column:1}.signup-heading h2{margin-top:.7rem}.signup-heading>p{margin-top:.95rem}.form-grid{gap:.95rem .75rem}.field input{padding-inline:.65rem}.days-group{grid-template-columns:repeat(2,minmax(0,1fr))}.day-option{grid-template-columns:auto minmax(0,1fr);min-height:66px;padding:.5rem .6rem;font-size:.75rem}.form-note{font-size:.75rem}.address-group{grid-template-columns:minmax(0,1fr)}.address-group legend{grid-column:1}.address-city{grid-template-columns:.65fr 1fr}.signup .signup-inner>p:not(.section-index){margin-bottom:1rem}}
@media(max-width:370px){.form-grid{grid-template-columns:minmax(0,1fr)}.address-group,.days-group,.privacy-group{grid-column:1}.address-group{grid-template-columns:minmax(0,1fr)}.field-hint{display:block}.hero-meta{line-height:1.65}}

.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.signup-form button:disabled{opacity:.65;cursor:wait}
.privacy-content{max-width:760px;padding-block:4rem 6rem}.privacy-content h1{margin:1rem 0 3rem;font-family:var(--display);font-size:clamp(3rem,12vw,6.5rem);font-weight:400;line-height:.98;letter-spacing:-.055em}.privacy-content h2{margin:2rem 0 .75rem;font-family:var(--display);font-size:1.65rem;font-weight:400}.privacy-content p{max-width:66ch;font-size:.96rem;line-height:1.85}.privacy-content a{color:var(--rust);text-underline-offset:3px}
.day-option{transition:background-color .18s,border-color .18s,transform .18s,color .18s}.day-option:hover{background:rgba(255,255,255,.15);border-color:#fff;transform:translateY(-2px)}.day-option:has(input:checked):hover{background:var(--paper-deep);border-color:var(--paper-deep)}.day-option:focus-within{outline:3px solid #fff;outline-offset:3px}.day-label{grid-column:2;display:grid;gap:.15rem;line-height:1.2}.day-label span:first-child{font-size:.69rem;font-weight:600;white-space:nowrap}.day-label span:last-child{font-size:.68rem;white-space:nowrap}button.privacy-open{appearance:none;display:inline;margin:0;padding:0;border:0;background:transparent!important;box-shadow:none;color:inherit;font:inherit;line-height:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.site-dialog{width:min(92vw,620px);max-width:none;max-height:85vh;padding:0;border:0;border-top:2px solid var(--rust);background:var(--paper);color:var(--ink);box-shadow:0 1.5rem 5rem rgba(22,20,17,.2)}.site-dialog::backdrop{background:rgba(74,72,68,.56);backdrop-filter:blur(2px)}.dialog-card{position:relative;max-height:85vh;overflow:auto;padding:clamp(1.5rem,6vw,3rem)}.dialog-card::after{display:block;width:3.5rem;height:2px;margin-top:1.8rem;background:var(--rust);content:""}.dialog-card h2{margin:.8rem 2.5rem 1.5rem 0;font-family:var(--display);font-size:clamp(2.6rem,9vw,4.5rem);font-weight:400;line-height:.98;letter-spacing:-.045em}.dialog-card h3{margin:1.6rem 0 .5rem;font-family:var(--display);font-size:1.45rem;font-weight:400}.dialog-card p{font-size:.9rem;line-height:1.75}.dialog-card a{color:var(--rust);text-underline-offset:3px}.dialog-close{position:absolute;top:1.1rem;right:1.15rem;width:2.5rem;height:2.5rem;border:1px solid var(--line);background:transparent;font-size:1.6rem;cursor:pointer}.dialog-close:focus-visible,.dialog-done:focus-visible{outline:3px solid var(--rust);outline-offset:3px}.dialog-done{margin-top:.6rem;cursor:pointer}.site-dialog[open]{animation:dialog-in .18s ease-out}@keyframes dialog-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.day-option,.site-dialog[open]{animation:none;transition:none}}
@media(max-width:960px){.days-group{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Keep interface arrows as vector artwork so mobile emoji fonts cannot turn them into boxed symbols. */
.arrow-icon{display:inline-block;width:1em;height:1em;flex:none;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:square;stroke-linejoin:miter;vertical-align:-.12em}
.header-link,.button{gap:.55rem}
