:root{--accent: #F2A541;--on-accent: #17120F;--stage: #17120F;--wood: #221B16;--wood-2: #2C231D;--line: #3A2F27;--ivory: #F3EBDF;--ash: #BBAC98;--paper: #F7F2EA;--card: #FFFFFF;--ink: #1F1915;--ink-2: #5C5046;--rule: #E4DACD;--ok-bg: #DDEFE4;--ok: #1D5A35;--warn-bg: #FCE9C8;--warn: #7A4B0E;--bad-bg: #F8DEDA;--bad: #8A2E1C;--info-bg: #E7EEF7;--info: #23466E;--display: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;--body: "Instrument Sans", "Segoe UI", system-ui, sans-serif;--r-sm: 10px;--r-md: 16px;--r-lg: 28px;--wrap: 1180px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--body);font-size:17px;line-height:1.6}img{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 22px;border-radius:999px;border:1.5px solid transparent;font-weight:600;text-decoration:none;cursor:pointer;white-space:nowrap}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-ghost{background:transparent;border-color:currentColor}.btn-dark{background:var(--ink);color:var(--paper)}.btn-danger{background:transparent;border-color:var(--bad);color:var(--bad)}.btn-sm{min-height:38px;padding:0 14px;font-size:14px}.btn-block{width:100%}.field{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}.field input,.field select,.field textarea{min-height:48px;padding:10px 14px;border-radius:var(--r-sm);font-weight:400;font-size:16px}.field textarea{resize:vertical;min-height:96px}.field .hint{font-weight:400;font-size:13px}.field .error{font-weight:500;font-size:13px;color:var(--bad)}.check{display:inline-flex;align-items:center;gap:10px;font-size:15px;cursor:pointer}.check input{width:20px;height:20px;accent-color:var(--accent)}.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}.stack{display:flex;flex-direction:column;gap:16px}.row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.row-between{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.notice{padding:12px 16px;border-radius:var(--r-sm);font-size:15px}.notice-error{background:var(--bad-bg);color:var(--bad)}.notice-ok{background:var(--ok-bg);color:var(--ok)}.notice-info{background:var(--info-bg);color:var(--info)}.site{background:var(--stage);color:var(--ivory);min-height:100vh}.site a{color:var(--ivory)}.site .field input,.site .field select,.site .field textarea{background:var(--stage);border:1.5px solid var(--line);color:var(--ivory)}.site .field .hint{color:var(--ash)}.site .field .error{color:#ff9c86}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}.site-header .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;padding-bottom:20px}.brand{display:inline-flex;align-items:center;gap:12px;font-family:var(--display);font-weight:800;font-size:24px;letter-spacing:-.02em;text-decoration:none}.brand img{height:40px;width:auto}.site-nav{display:flex;flex-wrap:wrap;align-items:center;gap:6px 24px;font-weight:500}.site-nav a:not(.btn){text-decoration:none;padding:8px 0}.site-nav a:not(.btn):hover{color:var(--accent)}.hero{position:relative;overflow:hidden}.hero-media{position:absolute;top:0;right:0;bottom:0;left:0}.hero-media img{width:100%;height:100%;object-fit:cover;opacity:.42}.hero-media:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 35%,var(--stage) 98%)}.hero-inner{position:relative;padding-top:14vh;padding-bottom:10vh;display:flex;flex-direction:column;gap:28px}.hero-name{margin:0;font-family:var(--display);font-weight:800;line-height:.86;letter-spacing:-.045em;font-size:clamp(64px,13vw,200px);color:var(--ivory);text-wrap:balance;animation:rise .9s cubic-bezier(.2,.7,.2,1) both}.hero-tagline{margin:0;max-width:34ch;font-size:clamp(19px,2.2vw,24px);color:var(--ivory)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}@keyframes rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.events-line{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.events-line p{margin:0 auto;padding-top:22px;padding-bottom:22px;font-family:var(--display);font-weight:500;font-size:clamp(18px,2.4vw,26px);color:var(--ash)}.events-line strong{color:var(--ivory);font-weight:500}.section{padding:96px 0}.section-alt{background:#1c1612}.section-title{margin:0 0 32px;font-family:var(--display);font-weight:700;font-size:clamp(34px,5vw,54px);line-height:1.04;letter-spacing:-.025em;max-width:18ch}.about{display:grid;gap:48px;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));align-items:center}.about-photo{border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4 / 5;background:var(--wood)}.about-photo img{width:100%;height:100%;object-fit:cover}.about-text{white-space:pre-line;color:var(--ash);font-size:18px;max-width:60ch}.packages{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}.package{background:var(--wood);border-radius:22px;padding:32px;display:flex;flex-direction:column;gap:14px}.package h3{margin:0;font-family:var(--display);font-size:26px;font-weight:700}.package .meta{margin:0;color:var(--ash);font-size:15px}.package .price{margin:0;font-family:var(--display);font-size:38px;font-weight:800;letter-spacing:-.02em}.package ul{margin:0;padding-left:20px;color:var(--ash)}.package .btn{margin-top:auto}.gallery-videos{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));margin-bottom:16px}.video{aspect-ratio:16 / 9;border-radius:18px;overflow:hidden;background:var(--wood)}.video iframe{width:100%;height:100%;border:0}.gallery-photos{columns:3 260px;column-gap:16px}.gallery-photos figure{margin:0 0 16px;break-inside:avoid;border-radius:16px;overflow:hidden;background:var(--wood)}.gallery-photos figcaption{padding:10px 14px;font-size:14px;color:var(--ash)}.quotes{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr))}.quote{margin:0;padding:28px 0 0;border-top:2px solid var(--accent);display:flex;flex-direction:column;gap:14px}.quote blockquote{margin:0;font-family:var(--display);font-size:22px;font-weight:500;line-height:1.3}.quote figcaption{color:var(--ash);font-size:15px}.cta-band{background:var(--accent);color:var(--on-accent);border-radius:32px;padding:clamp(36px,6vw,64px);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}.cta-band h2{margin:0;font-family:var(--display);font-weight:800;font-size:clamp(32px,5vw,52px);line-height:1;letter-spacing:-.03em;max-width:16ch}.cta-band p{margin:10px 0 0;font-size:18px}.cta-band .btn{background:var(--on-accent);color:var(--ivory)}.site-footer{border-top:1px solid var(--line);padding:48px 0 32px;color:var(--ash);font-size:15px}.site-footer .cols{display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))}.site-footer h2{margin:0 0 8px;font-size:15px;color:var(--ivory)}.site-footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.site-footer .legal{margin-top:40px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px}.site-footer .legal a{color:var(--ash)}.booking{display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start;padding:24px 0 96px}.booking-main{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:24px}.booking-aside{flex:1 1 320px;min-width:0;position:sticky;top:16px}.panel{background:var(--wood);border-radius:22px;padding:clamp(20px,3vw,32px);display:flex;flex-direction:column;gap:18px}.panel h2{margin:0;font-family:var(--display);font-size:24px;font-weight:700}.panel-muted{color:var(--ash);margin:0}.summary{margin:0;display:flex;flex-direction:column;gap:10px}.summary div{display:flex;justify-content:space-between;gap:12px}.summary dt{color:var(--ash)}.summary dd{margin:0;text-align:right;font-weight:600}.summary .total{padding-top:12px;border-top:1px solid var(--line)}.summary .total dd{font-family:var(--display);font-size:28px;color:var(--accent)}.choices{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr))}.choice{text-align:left;padding:18px;border-radius:16px;border:2px solid var(--line);background:transparent;color:var(--ivory);cursor:pointer;display:flex;flex-direction:column;gap:4px}.choice[aria-pressed=true]{border-color:var(--accent);background:var(--wood-2)}.choice strong{font-size:17px}.choice span{color:var(--ash);font-size:14px}.sinpe-box{background:var(--stage);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:8px}.sinpe-box .big{font-family:var(--display);font-size:30px;font-weight:800;letter-spacing:.02em}.onvo-host{background:#fff;color:#111;border-radius:16px;padding:12px;min-height:120px}.done{max-width:640px;margin:0 auto;padding:96px 0;text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px}.done h1{margin:0;font-family:var(--display);font-size:clamp(40px,6vw,60px);font-weight:800;letter-spacing:-.03em;line-height:1}.done p{margin:0;color:var(--ash);font-size:18px}.cal{display:flex;flex-direction:column;gap:12px}.cal-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.cal-head strong{font-size:17px}.cal-nav{width:44px;height:44px;border-radius:999px;border:none;cursor:pointer;font-size:20px;background:var(--wood-2);color:inherit}.cal-nav:disabled{opacity:.35;cursor:default}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.cal-dow{text-align:center;font-size:13px;font-weight:600;color:var(--ash);padding-bottom:4px}.cal-day{height:52px;border-radius:12px;border:1.5px solid var(--line);background:var(--wood-2);color:inherit;font-weight:600;cursor:pointer}.cal-day:disabled{cursor:not-allowed;background:transparent;border-color:transparent;color:#7f7263}.cal-day.is-taken:disabled{text-decoration:line-through}.cal-day[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.cal-legend{display:flex;flex-wrap:wrap;gap:18px;font-size:14px;color:var(--ash)}.cal-legend span{display:inline-flex;align-items:center;gap:8px}.cal-legend i{width:14px;height:14px;border-radius:4px;display:inline-block}.loading{padding:120px 24px;text-align:center;color:var(--ash)}.admin{background:var(--paper);color:var(--ink);min-height:100vh;display:flex;flex-wrap:wrap;font-size:15px}.admin a{color:#7a4b0e}.admin .field input,.admin .field select,.admin .field textarea{background:var(--card);border:1.5px solid var(--rule)}.admin .field .hint{color:var(--ink-2)}.admin .btn-ghost{color:var(--ink);border-color:var(--rule)}.admin .cal-day{background:var(--card);border-color:var(--rule)}.admin .cal-day:disabled{color:#a3978a}.admin .cal-nav{background:var(--card);border:1px solid var(--rule)}.admin .cal-dow,.admin .cal-legend{color:var(--ink-2)}.admin .cal-day.is-blocked{background:var(--bad-bg);border-color:var(--bad-bg);color:var(--bad)}.admin .cal-day.is-booked{background:var(--warn-bg);border-color:var(--warn-bg);color:var(--warn)}.side{flex:1 1 230px;max-width:100%;background:var(--stage);color:var(--ivory);padding:24px 16px;display:flex;flex-direction:column;gap:24px}.side .brand{color:var(--ivory);font-size:20px;padding:0 8px}.side nav{display:flex;flex-direction:column;gap:2px}.side nav a{color:var(--ivory);text-decoration:none;padding:11px 12px;border-radius:12px;font-weight:500}.side nav a:hover{background:var(--wood-2)}.side nav a.active{background:var(--accent);color:var(--on-accent)}.side .nav-group{margin:14px 12px 4px;font-size:13px;color:var(--ash)}.side .who{margin-top:auto;padding:0 8px;font-size:14px;color:var(--ash);display:flex;flex-direction:column;gap:8px}.side .who button{align-self:flex-start;background:none;border:none;color:var(--ivory);text-decoration:underline;cursor:pointer;padding:0}@media (max-width: 760px){.side{flex-basis:100%;padding:16px;gap:12px}.side nav{flex-direction:row;flex-wrap:wrap;gap:4px}.side .nav-group{display:none}.side .who{flex-direction:row;align-items:center;justify-content:space-between}}.main{flex:999 1 640px;min-width:0;padding:clamp(20px,3vw,40px);display:flex;flex-direction:column;gap:24px}.page-title{margin:0;font-family:var(--display);font-size:32px;font-weight:800;letter-spacing:-.02em}.page-sub{margin:4px 0 0;color:var(--ink-2)}.card{background:var(--card);border-radius:18px;padding:clamp(16px,2.5vw,24px);display:flex;flex-direction:column;gap:16px}.card h2{margin:0;font-family:var(--display);font-size:21px;font-weight:700}.muted{color:var(--ink-2)}.table-box{overflow-x:auto}.table{width:100%;min-width:640px;border-collapse:collapse}.table th{text-align:left;font-size:13px;font-weight:600;color:var(--ink-2);padding:10px 8px;border-bottom:1px solid var(--rule)}.table td{padding:12px 8px;border-bottom:1px solid #F0E8DD;vertical-align:top}.table tr:last-child td{border-bottom:none}.table .num{text-align:right;white-space:nowrap}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:13px;font-weight:600;white-space:nowrap}.badge-pending{background:#efe8df;color:#4a3f36}.badge-confirmed,.badge-approved,.badge-completed{background:var(--ok-bg);color:var(--ok)}.badge-review{background:var(--warn-bg);color:var(--warn)}.badge-cancelled,.badge-rejected{background:var(--bad-bg);color:var(--bad)}.pills{display:flex;flex-wrap:wrap;gap:8px}.pill{min-height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--rule);background:transparent;cursor:pointer}.pill[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.stats{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr))}.stat{background:var(--card);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:4px}.stat span{font-size:13px;color:var(--ink-2)}.stat strong{font-family:var(--display);font-size:28px}.bars{display:flex;flex-direction:column;gap:8px}.bar{display:grid;grid-template-columns:56px 1fr 120px;align-items:center;gap:12px;font-size:14px}.bar-track{height:14px;background:#f0e8dd;border-radius:999px;overflow:hidden}.bar-fill{height:100%;background:var(--ink);border-radius:999px}.media-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr))}.media-item{border:1px solid var(--rule);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;background:var(--card)}.media-thumb{aspect-ratio:4 / 3;background:#efe8df;display:flex;align-items:center;justify-content:center;color:var(--ink-2);font-size:13px}.media-thumb img{width:100%;height:100%;object-fit:cover}.media-body{padding:10px;display:flex;flex-direction:column;gap:8px}.media-body input[type=text]{min-height:38px;padding:6px 10px;border-radius:8px;border:1px solid var(--rule);font-size:14px}.icon-btn{width:36px;height:36px;border-radius:10px;border:1px solid var(--rule);background:var(--card);cursor:pointer}.dropzone{border:2px dashed var(--rule);border-radius:16px;padding:24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}.login{min-height:100vh;width:100%;display:grid;place-items:center;padding:24px;background:var(--stage)}.login-card{width:min(420px,100%);background:var(--paper);color:var(--ink);border-radius:24px;padding:32px;display:flex;flex-direction:column;gap:18px}.login-card h1{margin:0;font-family:var(--display);font-size:30px;font-weight:800}.login-card .field input{background:var(--card);border:1.5px solid var(--rule)}.divider{display:flex;align-items:center;gap:12px;color:var(--ink-2);font-size:14px}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--rule)}.apple-btn{min-height:44px;border-radius:999px;background:#000;color:#fff;border:none;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.admin .summary dt{color:var(--ink-2)}.admin .summary .total{border-top-color:var(--rule)}.admin .summary .total dd{font-size:24px}.pay-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.pay-list li{padding:14px 0;border-top:1px solid #F0E8DD;display:flex;flex-direction:column;gap:10px}.pay-list li:empty{display:none}.pay-list .row:empty{display:none}
