:root{--canvas:#f7f0e7;--surface:#fffaf3;--sand:#dfcdb6;--ink:#412f27;--muted:#75645a;--accent:#8c4f37;--accent-dark:#6f3c2a;--accent-soft:#ead6c9;--dark:#47352d;--line:#412f2724;--radius-card:1.5rem;--radius-pill:999px;--shadow-soft:0 24px 70px #4d34271f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--canvas);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.65}a{color:inherit}img{display:block}button,input,select{font:inherit}:focus-visible{outline-offset:4px;outline:3px solid #c87d5c}.shell{width:min(1160px,100% - 40px);margin-inline:auto}.eyebrow{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 .7rem;font-size:.76rem;font-weight:800}h1,h2,h3{margin:0;font-family:Georgia,Times New Roman,serif;font-weight:500;line-height:1.08}h1{letter-spacing:-.045em;font-size:clamp(2.55rem,5.7vw,5.5rem)}h2{letter-spacing:-.035em;font-size:clamp(2rem,4vw,3.8rem)}h3{font-size:1.6rem}p{margin:0}.site-header{z-index:20;border-bottom:1px solid var(--line);background:#f7f0e7eb;position:relative}.header-inner{justify-content:space-between;align-items:center;gap:2rem;min-height:112px;display:flex}.brand-link{border-radius:50%;flex:none}.brand-logo{object-fit:contain;width:92px;height:92px}.main-nav{align-items:center;gap:clamp(1rem,2.8vw,2.2rem);font-size:.92rem;font-weight:650;display:flex}.main-nav a{text-decoration:none}.main-nav a:hover{color:var(--accent)}.nav-cta{border:1px solid var(--accent);border-radius:var(--radius-pill);color:var(--accent);padding:.72rem 1.1rem}.instagram-link:before{content:"◎";margin-right:.42rem}.hero{grid-template-columns:.92fr 1.08fr;align-items:center;gap:clamp(2rem,7vw,6.5rem);min-height:690px;padding-block:clamp(3.5rem,8vw,7rem);display:grid}.hero-copy{z-index:2;position:relative}.hero-lead{max-width:570px;color:var(--muted);margin-top:1.6rem;font-size:clamp(1.05rem,1.5vw,1.25rem)}.hero-actions{align-items:center;gap:1.2rem;margin-top:2.3rem;display:flex}.hero-actions span{max-width:210px;color:var(--muted);font-size:.88rem;line-height:1.4}.button{border-radius:var(--radius-pill);justify-content:center;align-items:center;min-height:50px;padding:.82rem 1.35rem;font-weight:750;text-decoration:none;transition:transform .18s,background .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--accent);color:#fff;box-shadow:0 12px 30px #8c4f3733}.button-primary:hover{background:var(--accent-dark)}.hero-image-wrap{aspect-ratio:.86;max-height:660px;box-shadow:var(--shadow-soft);border-radius:48% 48% 2.2rem 2.2rem;position:relative;overflow:hidden}.hero-image{object-fit:cover;object-position:50% 55%}.hero-badge{background:var(--surface);text-align:center;border-radius:0 54px 54px 0;place-content:center;width:108px;height:108px;display:grid;position:absolute;bottom:2.2rem;left:-1px;box-shadow:10px 12px 30px #3f271d1f}.hero-badge span{font-family:Georgia,serif;font-size:1.45rem}.hero-badge small{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.course-facts{border-block:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-bottom:clamp(4rem,8vw,7rem);display:grid}.course-facts article{border-right:1px solid var(--line);align-items:flex-start;gap:.8rem;padding:1.45rem clamp(.7rem,2vw,1.5rem);display:flex}.course-facts article:last-child{border-right:0}.course-facts strong,.course-facts span{display:block}.course-facts strong{letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.course-facts div span{color:var(--muted);margin-top:.24rem;font-size:.9rem;line-height:1.4}.fact-icon{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);border-radius:50%;flex:none;place-items:center;display:grid}.about-section{background:var(--surface);padding-block:clamp(4.5rem,9vw,8rem)}.about-grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(2.6rem,8vw,7rem);display:grid}.about-image-wrap{border-radius:12rem 12rem var(--radius-card) var(--radius-card);min-height:610px;position:relative;overflow:hidden}.about-image{object-fit:cover;object-position:50% 50%}.about-copy>p:not(.eyebrow):not(.warm-note){color:var(--muted);margin-top:1.4rem;font-size:1.05rem}.included-list{grid-template-columns:1fr 1fr;gap:.75rem 1.2rem;margin:2rem 0 0;padding:0;list-style:none;display:grid}.included-list li{padding-left:1.7rem;font-weight:650;position:relative}.included-list li:before{content:"✓";color:var(--accent);font-weight:900;position:absolute;left:0}.warm-note{border-left:3px solid var(--accent);background:var(--canvas);color:var(--dark);border-radius:0 1rem 1rem 0;margin-top:2rem;padding:1.2rem 1.3rem}.gallery-section{padding-block:clamp(5rem,10vw,9rem)}.section-heading{justify-content:space-between;align-items:end;gap:3rem;margin-bottom:2.3rem;display:flex}.section-heading>p{max-width:390px;color:var(--muted)}.gallery-grid{grid-template-columns:1fr 1fr 1fr;gap:1rem;min-height:520px;display:grid}.gallery-item{border-radius:var(--radius-card);position:relative;overflow:hidden}.gallery-item img{object-fit:cover;transition:transform .5s}.gallery-item:hover img{transform:scale(1.025)}.gallery-item-1 img{object-position:50% 55%}.gallery-item-2{margin-top:3rem}.gallery-item-3 img{object-position:50% 45%}.registration-section{background:var(--accent-soft);padding-block:clamp(5rem,10vw,8.5rem)}.registration-grid{grid-template-columns:.86fr 1.14fr;align-items:start;gap:clamp(2.4rem,7vw,6rem);display:grid}.registration-copy>p:not(.eyebrow):not(.cancellation-copy){color:var(--muted);margin-top:1.5rem;font-size:1.05rem}.payment-card{background:#fffaf394;border:1px solid #8c4f372e;border-radius:1rem;gap:.3rem;margin-top:2rem;padding:1.2rem 1.3rem;display:grid}.payment-card span,.cancellation-copy{color:var(--muted)}.cancellation-copy{margin-top:1.3rem;font-size:.9rem}.registration-card{border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-soft);padding:clamp(1.5rem,4vw,2.6rem)}.placeholder-card{text-align:center;place-content:center;min-height:330px;display:grid}.placeholder-card p{color:var(--muted);margin-top:.7rem}.soft-icon{background:var(--accent-soft);width:54px;height:54px;color:var(--accent);border-radius:50%;place-items:center;margin:0 auto 1rem;font-size:1.4rem;display:grid}.registration-form{gap:1.15rem;display:grid}.form-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.35rem;display:flex}.form-heading h3{font-size:clamp(1.7rem,3vw,2.25rem)}.form-heading>span{border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent-dark);flex:none;padding:.48rem .72rem;font-size:.76rem;font-weight:800}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-field{gap:.42rem;display:grid}.form-field label{font-size:.86rem;font-weight:750}.form-field label span{color:var(--accent)}.form-field input,.form-field select{width:100%;min-height:48px;color:var(--ink);background:#fff;border:1px solid #412f2733;border-radius:.72rem;padding:.7rem .82rem}.form-field input:hover,.form-field select:hover{border-color:#8c4f378c}.form-field input:focus,.form-field select:focus{border-color:var(--accent);outline:3px solid #8c4f3724}.compact-field{max-width:180px}.field-error{color:#9c2f2f;font-weight:650}.honeypot-field{width:1px!important;height:1px!important;position:absolute!important;left:-10000px!important;overflow:hidden!important}.terms-checkbox{color:var(--muted);cursor:pointer;grid-template-columns:22px 1fr;align-items:start;gap:.7rem;font-size:.88rem;line-height:1.45;display:grid}.terms-checkbox input{width:20px;height:20px;accent-color:var(--accent);margin:.1rem 0 0}.terms-checkbox a{color:var(--accent);font-weight:750}.turnstile-container{width:100%;min-height:65px;overflow:hidden}.form-message{color:#842a2a;background:#fff0ed;border:1px solid #9c2f2f38;border-radius:.75rem;padding:.82rem .95rem;font-size:.9rem}.submit-button{border-radius:var(--radius-pill);background:var(--accent);color:#fff;cursor:pointer;border:0;min-height:52px;font-weight:800;box-shadow:0 12px 30px #8c4f3733}.submit-button:hover:not(:disabled){background:var(--accent-dark);transform:translateY(-1px)}.submit-button:disabled{cursor:not-allowed;opacity:.55}.form-footnote{color:var(--muted);text-align:center;font-size:.76rem}.sold-out-card{text-align:center;place-content:center;min-height:320px;display:grid}.sold-out-card p{max-width:390px;color:var(--muted);margin:.8rem auto 0}.success-card{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:430px;display:flex}.success-mark{background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:68px;height:68px;margin-bottom:1.3rem;font-size:1.7rem;font-weight:900;display:grid}.success-card h3{font-size:clamp(2rem,4vw,2.8rem)}.success-card>p:not(.eyebrow){max-width:450px;color:var(--muted);margin-top:1rem}.success-date{font-weight:800;color:var(--ink)!important}.success-contact{border-top:1px solid var(--line);color:var(--muted);margin-top:1.5rem;padding-top:1.2rem;font-size:.86rem}.success-contact a{color:var(--accent);font-weight:750}.site-footer{background:var(--dark);color:#f9eee2;padding:4.5rem 0 1.4rem}.footer-grid{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2.5rem;display:grid}.site-footer h2{letter-spacing:.11em;text-transform:uppercase;margin-bottom:1rem;font-family:inherit;font-size:.8rem;font-weight:800}.site-footer a{color:#ffffffc7;width:fit-content;margin-top:.55rem;text-decoration:none;display:block}.site-footer a:hover{color:#fff;text-decoration:underline}.footer-eyebrow{color:#d6a589}.footer-note{color:#ffffffad;max-width:320px}.business-details p{color:#ffffffad;font-size:.92rem;line-height:1.45}.footer-bottom{color:#ffffff85;border-top:1px solid #ffffff21;justify-content:space-between;margin-top:3.5rem;padding-top:1.2rem;font-size:.8rem;display:flex}.legal-page{max-width:850px;padding-block:clamp(4rem,9vw,8rem)}.legal-page h1{font-size:clamp(2.7rem,6vw,4.8rem)}.legal-intro{color:var(--muted);margin-top:1.3rem;font-size:1.15rem}.legal-page section{border-bottom:1px solid var(--line);padding-block:2rem}.legal-page section h2{font-size:1.55rem}.legal-page section p{color:var(--muted);margin-top:.9rem}.legal-page section a{color:var(--accent);font-weight:650}.legal-notice{background:var(--accent-soft);border-radius:1rem;margin-top:2rem;padding:1.2rem 1.3rem}@media (max-width:900px){.main-nav>a:not(.nav-cta):not(.instagram-link){display:none}.hero{grid-template-columns:1fr 1fr;gap:2rem;min-height:570px}.course-facts{grid-template-columns:1fr 1fr}.course-facts article:nth-child(2){border-right:0}.course-facts article:nth-child(-n+2){border-bottom:1px solid var(--line)}.footer-grid{grid-template-columns:1fr 1fr}}@media (max-width:700px){.shell{width:min(100% - 28px,1160px)}.header-inner{min-height:88px}.brand-logo{width:72px;height:72px}.main-nav{gap:.6rem}.instagram-link{border:1px solid var(--line);border-radius:50%;place-items:center;width:44px;height:44px;font-size:0;display:grid;overflow:hidden}.instagram-link:before{margin:0;font-size:1.2rem}.nav-cta{padding:.62rem .82rem;font-size:.78rem}.hero{grid-template-columns:1fr;gap:2.6rem;padding-top:3rem}.hero-copy{text-align:center}.hero-lead{margin-inline:auto}.hero-actions{flex-direction:column}.hero-actions span{max-width:280px}.hero-image-wrap{aspect-ratio:.9;border-radius:45% 45% 1.5rem 1.5rem;width:100%;max-height:none}.hero-badge{width:92px;height:92px}.course-facts{grid-template-columns:1fr}.course-facts article{border-right:0;border-bottom:1px solid var(--line)}.course-facts article:last-child{border-bottom:0}.about-grid,.registration-grid{grid-template-columns:1fr}.about-image-wrap{border-radius:8rem 8rem 1.3rem 1.3rem;order:2;min-height:480px}.included-list{grid-template-columns:1fr}.section-heading{display:block}.section-heading>p{margin-top:1rem}.gallery-grid{grid-template-columns:1fr;min-height:auto}.gallery-item{min-height:430px}.gallery-item-2{margin-top:0}.registration-copy{text-align:left}.form-row{grid-template-columns:1fr}.compact-field{max-width:none}.registration-card{padding:1.35rem}.footer-grid{grid-template-columns:1fr}.footer-bottom{gap:.2rem;display:grid}}@media (max-width:390px){h1{font-size:2.45rem}.main-nav{gap:.35rem}.nav-cta{text-align:center;max-width:112px;line-height:1.15}.gallery-item{min-height:360px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}
