@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Fraunces:ital,opsz,wght@0,9..144,600;1,9..144,600&display=swap";:root{--cream:#f4efe4;--ink:#252a21;--green:#4d614c;--lime:#d7df73;--terra:#c66d4b;--yellow:#f2c84b;--paper:#fffaf0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0;font-family:DM Sans,sans-serif}a{color:inherit}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}header{z-index:4;border-bottom:1px solid #252a2130;justify-content:space-between;align-items:center;height:80px;padding:0 4vw;display:flex;position:relative}.brand{font:600 28px/1 Fraunces;text-decoration:none}.brand span{color:var(--terra);font-style:italic}nav{gap:28px;display:flex}nav a{font-size:14px;text-decoration:none}.pill,.btn{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:999px;padding:13px 21px;font-weight:600;text-decoration:none}.hero{grid-template-columns:56% 44%;min-height:660px;padding:72px 6vw 60px;display:grid;overflow:hidden}.eyebrow{letter-spacing:.18em;font-size:11px;font-weight:600}.hero h1,.section h2,.about h2,.contact h2,.modal h2{letter-spacing:-.045em;margin:22px 0;font:600 clamp(42px,6vw,86px)/.94 Fraunces}.hero h1 em,h2 em{color:var(--terra);font-weight:600}.lead{max-width:500px;font-size:18px;line-height:1.6}.actions{align-items:center;gap:24px;margin-top:32px;display:flex}.textlink{font-weight:600}.hero-art{background:var(--green);min-height:480px;color:var(--paper);box-shadow:18px 18px 0 var(--yellow);border-radius:46% 46% 24px 24px;position:relative;transform:rotate(2deg)}.arch{background:var(--lime);color:var(--ink);text-align:center;border-radius:50% 50% 0 0;place-items:center;display:grid;position:absolute;inset:70px 55px 0;transform:rotate(-3deg)}.arch b{font:600 48px/1 Fraunces}.sun{color:var(--yellow);z-index:2;font-size:60px;position:absolute;top:20px;right:-10px}.scribble{color:var(--terra);z-index:2;font-size:64px;position:absolute;bottom:40px;left:-50px}.hero-art small{letter-spacing:.12em;font-size:10px;position:absolute;bottom:18px;right:16px}.ticker{background:var(--ink);color:#fff;white-space:nowrap;text-transform:uppercase;letter-spacing:.12em;justify-content:space-around;gap:26px;padding:17px;font-size:11px;display:flex;overflow:hidden}.section{padding:100px 5vw}.section-head{justify-content:space-between;align-items:end;display:flex}.section h2,.about h2,.contact h2{font-size:clamp(40px,5vw,68px)}.filters{flex-wrap:wrap;gap:8px;display:flex}.filters button{cursor:pointer;background:0 0;border:1px solid #252a2155;border-radius:999px;padding:10px 16px}.filters .active{background:var(--ink);color:#fff}.grid{grid-template-columns:repeat(3,1fr);gap:22px;margin-top:46px;display:grid}.card{background:var(--paper);border-radius:22px;overflow:hidden;box-shadow:0 10px 30px #332b1f0c}.card-visual{place-items:center;height:260px;display:grid;position:relative;overflow:hidden}.card-visual.v0{background:#c9d3bb}.card-visual.v1{background:#e9bca1}.card-visual.v2{background:#eadc8c}.card-visual>span{letter-spacing:12px;font:600 52px Fraunces}.card-visual img{object-fit:cover;width:100%;height:100%}.card-visual>b{background:var(--paper);letter-spacing:.1em;border-radius:999px;padding:8px 10px;font-size:10px;position:absolute;top:14px;right:14px}.card-body{padding:22px}.card-body>p{letter-spacing:.16em;font-size:10px}.card h3{margin:12px 0;font:600 28px Fraunces}.facts{color:#50564c;justify-content:space-between;font-size:13px;display:flex}.card-foot{border-top:1px solid #ddd3c2;justify-content:space-between;align-items:center;margin-top:20px;padding-top:16px;display:flex}.card-foot button{cursor:pointer;background:0 0;border:0;font-weight:600}.empty{text-align:center;border:1px dashed #8d8b78;border-radius:20px;margin-top:40px;padding:80px 20px}.empty span{color:var(--terra);font-size:46px}.empty h3{font:600 32px Fraunces}.about{background:var(--green);color:#fff;grid-template-columns:38% 62%;gap:60px;padding:100px 8vw;display:grid}.about-mark{background:var(--lime);height:430px;color:var(--ink);border-radius:50% 50% 20px 20px;place-items:center;font:600 150px Fraunces;display:grid;transform:rotate(-2deg)}.about-mark span{color:var(--terra);font-style:italic}.about>div>p:not(.eyebrow){max-width:620px;font-size:19px;line-height:1.7}.values{grid-template-columns:1fr 1fr;margin-top:36px;display:grid}.values span{border-top:1px solid #fff4;padding:16px 0}.values b{color:var(--lime);margin-right:14px}.contact{background:var(--yellow);grid-template-columns:1fr 1fr;gap:80px;padding:100px 8vw;display:grid}.contact-list{display:grid}.contact-list a,.contact-list p{border-bottom:1px solid #252a2160;margin:0;padding:20px 0;font-size:20px;text-decoration:none}.contact-list small{letter-spacing:.18em;margin-bottom:8px;font-size:9px;display:block}footer{justify-content:space-between;align-items:end;padding:48px 5vw;display:flex}footer div:last-child{gap:20px;font-size:12px;display:flex}.whatsapp{color:#fff;z-index:10;background:#1f6a45;border-radius:999px;padding:14px 18px;font-weight:600;text-decoration:none;position:fixed;bottom:18px;right:18px;box-shadow:0 8px 24px #0003}.modal{z-index:20;background:#172018cc;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow:auto}.modal form,.success>div{background:var(--paper);border-radius:24px;width:min(720px,100%);max-height:94vh;padding:34px;position:relative;overflow:auto}.modal h2{margin:10px 0;font-size:38px}.close{cursor:pointer;background:0 0;border:0;font-size:32px;position:absolute;top:16px;right:22px}.summary{background:#ebe7d7;border-radius:12px;justify-content:space-between;padding:14px;display:flex}.formgrid{grid-template-columns:1fr 1fr;gap:14px;margin:20px 0;display:grid}.formgrid label{font-size:12px;font-weight:600}.formgrid input,.formgrid textarea{background:#fff;border:1px solid #aaa48f;border-radius:9px;width:100%;margin-top:6px;padding:12px;display:block}.wide{grid-column:1/-1}.check{align-items:start;gap:8px;margin:10px 0;font-size:12px;display:flex}.paynote{background:#f3e7af;border-radius:9px;padding:13px;font-size:13px}.error{color:#9d2f20;font-weight:600}.submit{width:100%;margin-top:8px}.honeypot{left:-9999px;position:absolute!important}.success{text-align:center}.successmark{background:var(--lime);border-radius:50%;place-items:center;width:70px;height:70px;margin:auto;font-size:36px;display:grid}.success strong{margin:14px;font:600 34px Fraunces;display:block}.legal{max-width:780px;margin:auto;padding:70px 24px;line-height:1.8}.legal h1{font:600 56px Fraunces}.legal .notice{background:#f3e7af;border-radius:12px;padding:18px}.admin-shell{background:#eeebe3;min-height:100vh}.admin-top{background:var(--ink);color:#fff;justify-content:space-between;padding:24px 4vw;display:flex}.admin-main{padding:36px 4vw}.metrics{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.metric{background:#fff;border-radius:15px;padding:22px}.metric b{font:600 32px Fraunces;display:block}.tabs{gap:8px;margin:30px 0;display:flex}.panel{background:#fff;border-radius:18px;padding:24px;overflow:auto}.admin-table{border-collapse:collapse;width:100%;font-size:13px}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid #ddd;padding:12px}.admin-form{grid-template-columns:1fr 1fr;gap:14px;display:grid}.admin-form label{font-size:12px}.admin-form input,.admin-form textarea,.admin-form select{border:1px solid #aaa;border-radius:8px;width:100%;margin-top:5px;padding:11px;display:block}.admin-form .wide{grid-column:1/-1}@media (width<=800px){header{height:68px;padding:0 18px}nav{display:none}.pill{padding:10px 14px}.hero{grid-template-columns:1fr;gap:48px;padding:54px 22px 55px}.hero h1{font-size:50px}.hero-art{min-height:360px}.arch{inset:50px 35px 0}.arch b{font-size:38px}.section{padding:70px 20px}.section-head{display:block}.filters{margin-top:26px}.grid{grid-template-columns:1fr}.about,.contact{grid-template-columns:1fr;padding:70px 22px}.about-mark{height:260px;font-size:100px}.values{grid-template-columns:1fr}.contact{gap:30px}footer{padding-bottom:100px;display:block}footer div:last-child{flex-wrap:wrap;margin-top:26px}.formgrid,.admin-form{grid-template-columns:1fr}.wide{grid-column:auto}.modal form{padding:26px 20px}.metrics{grid-template-columns:1fr 1fr}.admin-table{min-width:900px}.whatsapp{text-align:center;left:18px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.admin-shell{--admin-border:#ded9cf;--admin-muted:#73766e}.admin-top{align-items:center}.admin-top-actions{gap:22px;font-size:13px;display:flex}.admin-top a{color:#fff}.admin-main{max-width:1500px;margin:auto}.admin-heading,.panel-head{justify-content:space-between;align-items:center;gap:20px;display:flex}.admin-heading h1{margin:8px 0 25px;font:600 clamp(34px,4vw,54px) Fraunces}.metrics{grid-template-columns:repeat(5,1fr)}.metric{border:1px solid var(--admin-border);box-shadow:0 8px 24px #29251c08}.metric small{letter-spacing:.1em;color:var(--admin-muted);font-size:10px}.metric b{margin-top:7px}.tabs{border-bottom:1px solid #d1cdc3;gap:24px}.tabs button{cursor:pointer;color:#777a72;background:0 0;border:0;padding:13px 2px 15px;font-weight:600;position:relative}.tabs button.active{color:var(--ink)}.tabs button.active:after{content:"";background:var(--terra);border-radius:3px;height:3px;position:absolute;bottom:-1px;left:0;right:0}.tab-count{color:#7d321c;background:#e9bca1;border-radius:10px;place-items:center;min-width:20px;height:20px;margin-left:7px;padding:0 6px;font-size:11px;display:inline-grid}.admin-message{background:#edf1db;border:1px solid #d5dda7;border-radius:10px;padding:12px 16px}.panel{border:1px solid var(--admin-border);box-shadow:0 12px 35px #332b1f08}.panel h2{margin:8px 0;font:600 32px Fraunces}.panel-head{margin-bottom:24px}.panel-head p:last-child{color:var(--admin-muted);margin:6px 0}.admin-tools{gap:10px;display:flex}.admin-tools input,.admin-tools select{background:#faf9f5;border:1px solid #c5c1b8;border-radius:10px;padding:11px 13px}.admin-tools input{min-width:260px}.table-wrap{overflow:auto}.admin-table th{letter-spacing:.08em;color:var(--admin-muted);background:#f5f3ed;font-size:10px}.admin-table td{vertical-align:middle}.admin-table small{color:var(--admin-muted)}.admin-table select,.status-select{border:1px solid #d7d2c8;border-radius:999px;padding:8px;font-size:12px;font-weight:600}.soft-btn,.publish-btn{color:var(--ink);cursor:pointer;background:#fff;border:1px solid #c9c5bb;border-radius:999px;justify-content:center;align-items:center;padding:9px 14px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.publish-btn{background:var(--green);color:#fff;border-color:var(--green)}.admin-empty{text-align:center;color:var(--admin-muted);padding:45px}.workshop-list{gap:10px;display:grid}.workshop-row{border:1px solid var(--admin-border);border-radius:15px;grid-template-columns:72px 1fr auto;align-items:center;gap:18px;padding:14px;display:grid}.workshop-icon{letter-spacing:3px;background:#eadc8c;border-radius:12px;place-items:center;height:64px;font:600 22px Fraunces;display:grid}.workshop-icon.child{background:#c9d3bb}.workshop-icon.adult{background:#e9bca1}.workshop-info h3{margin:7px 0 3px;font:600 22px Fraunces}.workshop-info p{color:var(--admin-muted);margin:0;font-size:13px}.workshop-info small{letter-spacing:.1em;margin-left:9px;font-size:9px}.status-badge{border-radius:999px;padding:5px 8px;font-size:10px;font-weight:600}.status-badge.draft{color:#695f4b;background:#eee9dd}.status-badge.published{color:#3e5b38;background:#dce6c5}.status-badge.cancelled{color:#8c3324;background:#f4d3cb}.status-badge.completed{color:#405163;background:#dae1e8}.row-actions{gap:8px;display:flex}.admin-modal form{width:min(820px,100%)}.admin-modal h2{font-size:34px}.admin-modal .admin-form{margin-top:20px}.modal-actions{border-top:1px solid var(--admin-border);justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;display:flex}.reservation-context{background:#f0ede5;border-radius:10px;padding:12px}.admin-form label{color:#5f625b;font-weight:600}.admin-form input,.admin-form textarea,.admin-form select{background:#fcfbf8;border-color:#c9c5bc}.s-new{background:#fff4ca}.s-confirmed{background:#e2edcc}.s-cancelled{background:#f5d9d1}.cover-editor{background:#f3f0e8;border-radius:16px;grid-template-columns:220px 1fr;gap:22px;margin:18px 0 24px;padding:18px;display:grid}.cover-preview{text-align:center;background:#e9bca1;border-radius:12px;place-items:center;height:150px;display:grid;overflow:hidden}.cover-preview.child{background:#c9d3bb}.cover-preview.special{background:#eadc8c}.cover-preview img{object-fit:cover;width:100%;height:100%}.cover-preview span{letter-spacing:8px;font:600 34px Fraunces}.cover-preview small{letter-spacing:.1em;margin-top:-30px;font-size:8px}.cover-controls h3{margin:3px 0;font:600 22px Fraunces}.cover-controls p{color:var(--admin-muted);font-size:13px;line-height:1.5}.cover-controls>small{color:var(--admin-muted);margin-top:10px;font-size:10px;display:block}.upload-btn{cursor:pointer;background:var(--ink);color:#fff;border-color:var(--ink)}.upload-btn input{pointer-events:none;opacity:0!important;width:1px!important;height:1px!important;position:absolute!important}.remove-cover{color:#963a29;cursor:pointer;background:0 0;border:0;padding:10px 0 0;font-size:12px;text-decoration:underline;display:block}@media (width<=1000px){.metrics{grid-template-columns:repeat(3,1fr)}.workshop-row{grid-template-columns:60px 1fr}.row-actions{grid-column:2}.admin-tools{flex-direction:column}.admin-tools input{min-width:0}}@media (width<=650px){.admin-main{padding:24px 16px}.admin-top{padding:18px 16px}.admin-top-actions a:first-child{display:none}.admin-heading{align-items:flex-start}.admin-heading .btn{padding:12px;font-size:0}.admin-heading .btn:after{content:"+";font-size:20px}.metrics{grid-template-columns:1fr 1fr}.metric{padding:16px}.metric b{font-size:26px}.tabs{gap:15px;overflow:auto}.tabs button{white-space:nowrap}.panel{padding:17px}.panel-head{flex-direction:column;align-items:flex-start}.admin-tools{width:100%}.workshop-row{grid-template-columns:48px 1fr;gap:12px;padding:11px}.workshop-icon{height:48px;font-size:16px}.row-actions{grid-column:1/-1;justify-content:flex-end}.workshop-info p{line-height:1.5}.admin-modal form{padding:25px 18px}.modal-actions{flex-wrap:wrap}.modal-actions>*{flex:1}.admin-top .brand{font-size:22px}.cover-editor{grid-template-columns:1fr}.cover-preview{height:180px}}.brand-logo{letter-spacing:.04em;align-items:center;gap:10px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;display:flex}.brand-logo img{object-fit:cover;border-radius:50%;width:58px;height:58px;box-shadow:0 3px 12px #3b4c2730}.hero-logo-wrap{place-items:center;display:grid;position:absolute;inset:48px 42px 42px}.hero-logo{aspect-ratio:1;object-fit:cover;border-radius:50%;width:min(100%,410px);transform:rotate(-2deg);box-shadow:0 20px 50px #1c2c1945,0 0 0 10px #fffaf020}.footer-brand{align-items:center;gap:14px;display:flex}.footer-brand img{object-fit:cover;border-radius:50%;width:76px;height:76px}.footer-brand div{gap:4px;display:grid}.footer-brand strong{font:600 22px Fraunces}.footer-brand span{letter-spacing:.08em;color:#676b61;font-size:10px}.admin-brand{align-items:center;gap:12px;font-weight:600;display:flex}.admin-brand img{object-fit:cover;border-radius:50%;width:52px;height:52px;box-shadow:0 0 0 2px #ffffff26}.admin-brand span{letter-spacing:.08em;text-transform:uppercase;border-left:1px solid #ffffff50;padding-left:12px;font-size:13px}.hero-art small{line-height:1.5}@media (width<=800px){.brand-logo img{width:48px;height:48px}.brand-logo span{display:none}.hero-logo-wrap{inset:38px 28px 36px}.hero-logo{max-width:300px}.footer-brand img{width:62px;height:62px}.footer-brand span{display:none}}.brand-logo span{color:var(--ink);letter-spacing:.01em;font-size:18px;font-style:normal}.menu-toggle{cursor:pointer;background:0 0;border:0;padding:10px;display:none}.menu-toggle span{background:var(--ink);border-radius:2px;width:24px;height:2px;margin:5px 0;display:block}.location-eyebrow{color:#43533f;background:#e2e7c8;border-radius:999px;align-items:center;gap:7px;padding:9px 13px;display:inline-flex}.hero h1,.section h2,.about h2,.contact h2{white-space:pre-line}.card.clickable{cursor:pointer;transition:transform .2s,box-shadow .2s}.card.clickable:hover,.card.clickable:focus-visible{outline:2px solid var(--terra);outline-offset:4px;transform:translateY(-5px);box-shadow:0 18px 40px #332b1f18}.card-foot span{font-weight:600}.about-mark{overflow:hidden}.about-mark img{object-fit:cover;width:100%;height:100%}.faq{background:#f8f4e9;grid-template-columns:.8fr 1.2fr;gap:8vw;display:grid}.faq-intro{align-self:start;position:sticky;top:30px}.faq-intro>p:last-child{max-width:430px;font-size:17px;line-height:1.6}.faq-list{border-top:1px solid #b8b3a7}.faq details{border-bottom:1px solid #b8b3a7;padding:0}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:25px 0;font:600 24px Fraunces;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary span{font:400 30px DM Sans;transition:transform .2s}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{white-space:pre-line;color:#555b51;margin:0 0 25px;line-height:1.8}.contact-image{object-fit:cover;border-radius:22px;width:100%;max-width:460px;height:220px;margin-top:18px}.social-float{z-index:10;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:fixed;bottom:18px;right:18px}.social-float a{color:#fff;border-radius:999px;align-items:center;gap:8px;padding:12px 17px;font-weight:600;text-decoration:none;display:flex;box-shadow:0 8px 24px #0003}.social-float .whatsapp{background:#1f6a45;position:static}.instagram-float{background:#c66d6c}.paynote a{color:#654218;font-weight:700}.ticker{justify-content:center}.ticker span{align-items:center;gap:26px;display:flex}.ticker b{color:var(--lime)}@media (width<=800px){header{grid-template-columns:48px 1fr 48px;padding:0 12px;display:grid;position:relative}.menu-toggle{grid-column:1;display:block}.brand-logo{grid-column:2;justify-self:center}.brand-logo img{width:52px;height:52px}.header-cta{display:none}header nav{background:var(--paper);border:1px solid #d5d0c5;border-radius:16px;flex-direction:column;gap:0;padding:12px;display:none;position:absolute;top:66px;left:12px;right:12px;box-shadow:0 16px 35px #0002}header nav.open{display:flex}header nav a{border-bottom:1px solid #e4dfd3;padding:14px 12px}header nav a:last-child{border:0}.faq{grid-template-columns:1fr;gap:35px}.faq-intro{position:static}.faq summary{font-size:20px}.social-float{align-items:flex-start;bottom:10px;left:10px;right:auto}.social-float a{justify-content:center;width:42px;height:42px;padding:0;font-size:19px}.social-float a span{display:none}.whatsapp{left:auto}.hero h1{white-space:pre-line}}.content-editor form{gap:18px;display:grid}.content-editor fieldset{border:1px solid var(--admin-border);border-radius:16px;margin:0;padding:22px}.content-editor legend{padding:0 10px;font:600 24px Fraunces}.content-image-field{background:#f4f1e9;border-radius:14px;grid-template-columns:180px 1fr;align-items:center;gap:18px;margin-top:16px;padding:14px;display:grid}.content-image-preview{color:#686b63;background:#d9ddc8;border-radius:10px;place-items:center;height:120px;font-size:12px;display:grid;overflow:hidden}.content-image-preview img{object-fit:cover;width:100%;height:100%}.content-image-field p{color:var(--admin-muted);font-size:12px}.save-content{justify-self:end;position:sticky;bottom:16px;box-shadow:0 10px 30px #0003}.admin-login{background:var(--green);place-items:center;min-height:100vh;padding:20px;display:grid}.admin-login form{background:var(--paper);border-radius:24px;gap:16px;width:min(440px,100%);padding:36px;display:grid;box-shadow:0 25px 70px #17201855}.admin-login form>img{object-fit:cover;border-radius:50%;width:92px;height:92px;margin:auto}.admin-login h1{text-align:center;margin:0 0 10px;font:600 38px Fraunces}.admin-login .eyebrow{text-align:center}.admin-login label{font-size:12px;font-weight:600}.admin-login input{background:#fff;border:1px solid #aaa48f;border-radius:10px;width:100%;margin-top:6px;padding:13px;display:block}.admin-login .btn{width:100%}.admin-login form>a{text-align:center;font-size:12px}.admin-login .error{text-align:center}.content-editor textarea{resize:vertical}@media (width<=650px){.content-editor fieldset{padding:16px}.content-image-field{grid-template-columns:1fr}.content-image-preview{height:170px}.save-content{justify-self:stretch;width:100%}.admin-login form{padding:28px 20px}.admin-login h1{font-size:32px}}.footer-admin{border:1px solid #8f8e86;border-radius:999px;padding:8px 12px;font-weight:600;text-decoration:none}.footer-admin:hover{background:var(--ink);color:#fff;text-decoration:none}.filters button{color:var(--ink);appearance:none}.filters button:visited{color:var(--ink)}.filters button.active{color:#fff}@media (width<=800px){.social-float{gap:10px;bottom:72px;left:12px}.social-float a{justify-content:flex-start;width:auto;min-width:178px;height:50px;padding:0 16px;font-size:16px}.social-float a span{font-size:14px;display:inline}.filters button{color:var(--ink);background:0 0}.filters button.active{color:#fff;background:var(--ink)}}.password-section{border-top:1px solid var(--admin-border);margin-top:34px;padding-top:28px}.password-section h2{margin-bottom:5px}.password-section>p{color:var(--admin-muted)}.password-form{grid-template-columns:repeat(3,1fr) auto;align-items:end;gap:12px;margin-top:18px;display:grid}.password-form label{font-size:12px;font-weight:600}.password-form input{border:1px solid #aaa;border-radius:8px;width:100%;margin-top:5px;padding:11px;display:block}.password-form .btn{white-space:nowrap}@media (width<=800px){.password-form{grid-template-columns:1fr}.password-form .btn{width:100%}}
