:root{--willow-900:#22301f;--willow-800:#2c3d28;--willow-700:#3d5136;--willow-500:#6b7f62;--willow-200:#cdd6c4;--willow-100:#e6ebdf;--cream:#faf7f1;--cream-2:#f3eee3;--cream-3:#ece5d6;--gold:#b99a5f;--gold-soft:#d8c39a;--gold-pale:#f0e6d2;--ink:#2f2d27;--ink-soft:#57534a;--muted:#7c766a;--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--radius-lg:1.75rem;--radius-md:1.1rem;--shadow-soft:0 24px 60px -28px rgba(34, 48, 31, 0.35);--shadow-lift:0 30px 70px -30px rgba(34, 48, 31, 0.45)}html{scroll-behavior:smooth;overflow-x:clip}body{font-family:var(--sans);color:var(--ink);background:var(--cream);font-weight:300;line-height:1.75;overflow-x:clip}.serif,h1,h2,h3,h4{font-family:var(--serif);font-weight:500;color:var(--willow-900);letter-spacing:.01em}h1{font-weight:400}p{color:var(--ink-soft)}a{color:var(--willow-700);text-decoration:none}a:hover{color:var(--gold)}::selection{background:var(--gold-pale);color:var(--willow-900)}img{max-width:100%;height:auto}.eyebrow{display:inline-flex;align-items:center;gap:.65rem;font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--gold)}.eyebrow::before{content:"";width:2.4rem;height:1px;background:var(--gold);animation:4.5s ease-in-out infinite breathe}.section{padding:5.5rem 0}.section--cream{background:var(--cream)}.section--cream2{background:var(--cream-2)}.section--dark{background:var(--willow-900);color:var(--cream)}.section--dark h1,.section--dark h2,.section--dark h3,.section--dark h4{color:var(--cream)}.section--dark p{color:rgba(250,247,241,.78)}.section--tint{background:linear-gradient(180deg,var(--cream) 0,var(--cream-2) 100%)}.lead-lg{font-size:1.18rem}.rule{width:4rem;height:2px;background:var(--gold);margin:1.25rem 0 1.5rem;animation:4.5s ease-in-out infinite breathe}.display-hero{font-size:clamp(2.9rem, 6vw, 4.9rem);line-height:1.05;font-weight:400}.btn{border-radius:999px;padding:.8rem 1.9rem;font-weight:500;letter-spacing:.04em;transition:.35s}.btn:hover{transform:translateY(-2px)}.btn-gold{background:var(--gold);color:#fff;border:1px solid var(--gold)}.btn-gold:hover{background:#a8874c;color:#fff}.btn-darkgreen{background:var(--willow-800);color:var(--cream);border:1px solid var(--willow-800)}.btn-darkgreen:hover{background:var(--willow-900);color:#fff}.btn-outline-cream{border:1px solid rgba(250,247,241,.5);color:var(--cream)}.btn-outline-cream:hover{background:var(--cream);color:var(--willow-900)}.btn-outline-willow{border:1px solid var(--willow-700);color:var(--willow-700)}.btn-outline-willow:hover{background:var(--willow-700);color:#fff}.btn-outline-gold{border:1px solid var(--gold);color:var(--gold)}.btn-outline-gold:hover{background:var(--gold);color:#fff}.topbar{background:#232323;color:rgba(250,247,241,.85);font-size:.8rem;letter-spacing:.05em}.topbar a{color:rgba(250,247,241,.85)}.topbar a:hover{color:var(--gold-soft)}.navbar-willow{background:rgba(250,247,241,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(34,48,31,.08)}.navbar-willow .nav-link{color:var(--ink-soft);font-weight:400;letter-spacing:.05em;font-size:.92rem;position:relative;padding:.6rem .85rem}.navbar-willow .nav-link::after{content:"";position:absolute;left:.85rem;right:.85rem;bottom:.25rem;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .35s}.navbar-willow .nav-link.active::after,.navbar-willow .nav-link:hover::after{transform:scaleX(1)}.navbar-willow .nav-link.active{color:var(--willow-900)}.navbar-willow .navbar-toggler{border:none;color:var(--willow-900);font-size:1.4rem}.navbar-willow .navbar-toggler:focus{box-shadow:none}.logo img{height:52px;width:auto;filter:invert(1) brightness(.2) sepia(.4) saturate(1.4) hue-rotate(60deg);opacity:.92}.hero{position:relative;min-height:94vh;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--cream);overflow:hidden}.hero-video{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;z-index:0;background:#22301f}.hero-video iframe{position:absolute;top:50%;left:50%;width:100vw;height:100vh;transform:translate(-50%,-50%);border:0}@media (min-aspect-ratio:16/9){.hero-video iframe{height:56.25vw}}@media (max-aspect-ratio:16/9){.hero-video iframe{width:177.78vh}}@supports (aspect-ratio:16 / 9){@media (min-aspect-ratio:16/9){.hero-video iframe{width:auto;height:max(56.25vw,100%);aspect-ratio:16/9}}@media (max-aspect-ratio:16/9){.hero-video iframe{width:auto;height:max(100vh,100%,56.25vw);aspect-ratio:16/9}}}.hero-bg{position:absolute;top:0;left:0;right:0;bottom:0;background-image:var(--hero-img);background-size:cover;background-position:center;animation:26s ease-in-out infinite alternate kenburns}.hero::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;background:linear-gradient(180deg,rgba(23,33,22,.55) 0,rgba(23,33,22,.38) 45%,rgba(23,33,22,.72) 100%)}.hero-inner{position:relative;z-index:2;padding:6rem 1rem;max-width:900px}.hero h1{color:var(--cream)}.hero p.hero-sub{color:rgba(250,247,241,.92);font-size:1.2rem}.hero .eyebrow{color:var(--gold-soft)}.hero .eyebrow::before{background:var(--gold-soft)}.hero--inner{min-height:58vh}.hero--inner .hero-inner{padding:7.5rem 1rem 4rem}.scroll-cue{position:absolute;bottom:1.6rem;left:50%;transform:translateX(-50%);z-index:2;color:var(--cream);font-size:1.2rem;opacity:.8;animation:2.6s ease-in-out infinite bob}.privacy-icon{width:3.4rem;height:3.4rem;border-radius:50%;background:var(--gold-pale);border:1px solid rgba(185,154,95,.4);display:inline-flex;align-items:center;justify-content:center;color:var(--willow-800);font-size:1.25rem;margin-bottom:.9rem}.privacy-band .privacy-icon{background:rgba(250,247,241,.08);border-color:rgba(216,195,154,.35);color:var(--gold-soft)}.privacy-band{background:var(--willow-800);color:var(--cream);position:relative;overflow:hidden}.privacy-band p{color:rgba(250,247,241,.76)}.privacy-band .eyebrow{color:var(--gold-soft)}.privacy-band .eyebrow::before{background:var(--gold-soft)}.privacy-band::after{content:"";position:absolute;right:-6rem;top:-6rem;width:22rem;height:22rem;border-radius:50%;background:radial-gradient(circle,rgba(216,195,154,.18) 0,transparent 70%);animation:14s ease-in-out infinite drift}.featurette-img{border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);overflow:hidden;position:relative}.featurette-img img{width:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2, .6, .2, 1);image-orientation:from-image}.featurette-img--short{aspect-ratio:16/9}.object-bottom{object-position:50% 100%}.featurette-img:hover img{transform:scale(1.05)}.frame-gold{position:relative}.frame-gold::before{content:"";position:absolute;top:-1.1rem;right:-1.1rem;bottom:auto;left:auto;width:55%;height:55%;border-top:1px solid var(--gold);border-right:1px solid var(--gold);border-radius:0 var(--radius-lg) 0 0;opacity:.55}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.gallery-item{position:relative;border-radius:var(--radius-md);overflow:hidden;aspect-ratio:4/3;box-shadow:var(--shadow-soft)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2, .6, .2, 1)}.gallery-item:hover img{transform:scale(1.07)}.gallery-item figcaption{position:absolute;top:auto;right:0;bottom:0;left:0;padding:2rem 1.1rem .9rem;background:linear-gradient(180deg,transparent 0,rgba(23,33,22,.82) 100%);color:var(--cream);font-family:var(--serif);font-size:1.05rem;letter-spacing:.03em;opacity:0;transform:translateY(10px);transition:.5s}.gallery-item:hover figcaption{opacity:1;transform:translateY(0)}.gallery-nav{display:none;align-items:center;justify-content:center;gap:1.1rem;margin-top:1.25rem}.gallery-btn{width:2.6rem;height:2.6rem;border-radius:50%;border:1px solid var(--gold);background:var(--willow-900);color:var(--gold-soft);font-size:1.4rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:.3s}.gallery-btn:hover{background:var(--gold);color:var(--willow-900)}.gallery-count{font-family:var(--serif);font-size:.95rem;letter-spacing:.08em;color:var(--willow-800)}@media (max-width:767.98px){.gallery-grid{display:flex;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;gap:1rem}.gallery-grid::-webkit-scrollbar{display:none}.gallery-grid>.gallery-item{flex:0 0 82%;scroll-snap-align:center}.gallery-item figcaption{opacity:1;transform:translateY(0)}.gallery-nav{display:flex}}.package-card{border-radius:var(--radius-lg);overflow:hidden;background:#fff;box-shadow:var(--shadow-soft);border:none;transition:transform .5s,box-shadow .5s;height:100%}.package-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lift)}.package-card .card-img-wrap{position:relative;overflow:hidden;aspect-ratio:16/10}.package-card .card-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2, .6, .2, 1)}.package-card:hover .card-img-wrap img{transform:scale(1.06)}.price-badge{position:absolute;top:1rem;left:1rem;background:rgba(250,247,241,.94);color:var(--willow-900);font-family:var(--serif);font-size:1.35rem;font-weight:600;padding:.35rem 1.1rem;border-radius:999px;box-shadow:var(--shadow-soft);backdrop-filter:blur(6px)}.card-list{list-style:none;padding:0;margin:0}.card-list li{padding:.42rem 0;color:var(--ink-soft);font-size:.95rem;display:flex;gap:.6rem;align-items:flex-start}.card-list li::before{content:"✓";color:var(--gold);font-weight:700;line-height:1.5}.checklist{list-style:none;padding:0;margin:0}.checklist li{display:flex;gap:.9rem;align-items:flex-start;padding:.65rem 0;font-size:1.02rem;color:var(--ink-soft)}.checklist .ck{flex:0 0 auto;width:1.7rem;height:1.7rem;margin-top:.1rem;border-radius:50%;background:var(--gold-pale);color:var(--willow-800);display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700}.section--dark .checklist li{color:rgba(250,247,241,.86)}.section--dark .checklist .ck{background:rgba(216,195,154,.16);color:var(--gold-soft);border:1px solid rgba(216,195,154,.4)}.compare-wrap{border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-soft);overflow:auto}@media (min-width:992px){.compare-wrap{overflow:visible}.compare-table thead tr:first-child th{top:var(--comp-stick,5.4rem);z-index:3}.compare-table thead tr:nth-child(2) th{top:calc(var(--comp-stick,5.4rem) + var(--comp-r1,6rem));z-index:3}.compare-table thead tr:first-child th:first-child,.compare-table thead tr:nth-child(2) th:first-child{z-index:4}}.compare-table{width:100%;min-width:860px;border-collapse:separate;border-spacing:0}.compare-table td,.compare-table th{padding:.95rem 1.1rem;text-align:center;font-size:.95rem}.compare-table thead th{background:var(--willow-900);color:var(--cream);font-family:var(--serif);font-weight:500;font-size:1.12rem;letter-spacing:.03em;border-bottom:3px solid var(--gold);position:sticky;top:0;z-index:2}.compare-table thead th:first-child{background:var(--willow-800)}.compare-table td:first-child{background:var(--cream-2);text-align:left;font-weight:500;color:var(--willow-900);position:sticky;left:0;z-index:1;border-right:1px solid rgba(34,48,31,.08)}.compare-table tbody tr:nth-child(2n) td{background-color:var(--cream)}.compare-table tbody tr:nth-child(2n) td:first-child{background-color:var(--cream-2)}.compare-table tbody tr:hover td{background-color:var(--gold-pale)}.compare-table tbody tr:hover td:first-child{background-color:#e9dcbe}.compare-table .price-cell{font-family:var(--serif);font-size:1.25rem;font-weight:600;color:var(--willow-900)}.compare-table .text-cell{font-family:var(--serif);font-size:1.02rem;font-weight:500;color:var(--willow-900);white-space:nowrap}.compare-table tfoot td{border-top:3px solid var(--gold)}.compare-table .btn-compare{font-family:var(--sans);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;padding:.5rem 1rem;border-radius:999px;white-space:nowrap}.tick{color:var(--willow-700);font-weight:700}.cross{color:#c9c4b8}.compare-group th{background:var(--willow-100);color:var(--willow-800);font-family:var(--sans);font-size:.8rem;letter-spacing:.24em;text-transform:uppercase;font-weight:600;text-align:left;padding:.6rem 1.1rem;border-top:1px solid rgba(34,48,31,.06)}.compare-notes{font-size:.9rem;color:var(--muted)}.compare-notes li{margin-bottom:.35rem}.accordion-willow .accordion-item{background:#fff;border:none;border-radius:var(--radius-md)!important;margin-bottom:.9rem;box-shadow:0 10px 30px -18px rgba(34,48,31,.3);overflow:hidden}.accordion-willow .accordion-button{font-family:var(--serif);font-size:1.28rem;font-weight:500;color:var(--willow-900);background:#fff;padding:1.25rem 1.5rem}.accordion-willow .accordion-button:not(.collapsed){background:#fff;color:var(--willow-800);box-shadow:none}.accordion-willow .accordion-button::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23b99a5f' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");transition:transform .3s}.accordion-willow .accordion-body{color:var(--ink-soft);padding:0 1.5rem 1.4rem}.addon-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width:640px){.addon-grid{grid-template-columns:1fr}}.addon-card{background:#fff;border:1.5px solid rgba(34,48,31,.1);border-radius:var(--radius-md);padding:1.1rem 1.25rem;transition:border-color .3s,box-shadow .3s,transform .3s;cursor:pointer}.addon-card:hover{box-shadow:var(--shadow-soft);transform:translateY(-2px)}.addon-card.selected{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-pale);background:linear-gradient(180deg,#fff 0,var(--gold-pale) 130%)}.addon-card .form-check-input{width:1.35rem;height:1.35rem;margin-right:.9rem;border-color:#c9c2b2;cursor:pointer;flex:0 0 auto}.addon-card .form-check-input:checked{background-color:var(--gold);border-color:var(--gold)}.addon-card .form-check-input:focus{box-shadow:0 0 0 .25rem var(--gold-pale)}.addon-card label{cursor:pointer;margin:0;align-items:flex-start;width:100%}.addon-title{font-family:var(--serif);font-size:1.18rem;font-weight:600;color:var(--willow-900)}.addon-desc{font-size:.88rem;color:var(--muted);margin-top:.2rem}.addon-price{font-family:var(--serif);font-size:1.22rem;font-weight:600;color:var(--gold);white-space:nowrap}.badge-tbc{display:inline-block;font-family:var(--sans);font-size:.62rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);border:1px solid var(--gold);border-radius:999px;padding:.12rem .55rem;vertical-align:middle;margin-left:.4rem}.tbc-note{font-size:.82rem;color:var(--muted);font-style:italic}.summary-card{background:var(--willow-900);color:var(--cream);border-radius:var(--radius-lg);padding:1.8rem;box-shadow:var(--shadow-lift);position:relative;overflow:hidden}.summary-card::before{content:"";position:absolute;top:-5rem;right:-5rem;width:14rem;height:14rem;border-radius:50%;background:radial-gradient(circle,rgba(216,195,154,.22) 0,transparent 70%)}.summary-row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.55rem 0;font-size:1rem;color:rgba(250,247,241,.85);border-bottom:1px dashed rgba(250,247,241,.18)}.summary-row .summary-price{font-family:var(--serif);font-size:1.15rem;color:var(--cream);white-space:nowrap}.summary-row.summary-total{border-bottom:none;padding-top:1.1rem;font-weight:600;color:var(--cream)}.summary-row.summary-total .summary-price{font-size:2rem;color:var(--gold-soft)}.summary-addon-line{display:flex;justify-content:space-between;gap:1rem;font-size:.9rem;color:rgba(250,247,241,.8);padding:.28rem 0;animation:.4s fadein}.summary-addon-line .p{color:var(--gold-soft);white-space:nowrap}.summary-note{font-size:.82rem;color:rgba(250,247,241,.65);text-align:center;margin-top:.9rem;margin-bottom:0}.sticky-summary{position:sticky;top:6.5rem}.stepper{display:inline-flex;align-items:center;gap:.4rem;background:#fff;border:1.5px solid rgba(34,48,31,.12);border-radius:999px;padding:.3rem;box-shadow:var(--shadow-soft)}.stepper button{width:2.6rem;height:2.6rem;border-radius:50%;border:none;background:var(--gold-pale);color:var(--willow-900);font-size:1.3rem;font-weight:500;line-height:1;transition:.25s}.stepper button:hover{background:var(--gold);color:#fff}.stepper .count{min-width:2.6rem;text-align:center;font-family:var(--serif);font-size:1.6rem;font-weight:600;color:var(--willow-900)}.journal-card{border-radius:var(--radius-lg);overflow:hidden;background:#fff;box-shadow:var(--shadow-soft);border:none;height:100%;transition:transform .5s,box-shadow .5s;display:block;color:inherit}.journal-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lift);color:inherit}.journal-card .jc-img{aspect-ratio:16/10;overflow:hidden}.journal-card .jc-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2, .6, .2, 1)}.journal-card:hover .jc-img img{transform:scale(1.07)}.journal-card .jc-body{padding:1.6rem}.journal-card .jc-date{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:600}.journal-card h3{font-size:1.5rem}.post-hero-img{border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);margin-bottom:2.5rem}.prose{font-size:1.06rem}.prose h2,.prose h3{margin-top:2.2rem}.prose ol,.prose p,.prose ul{color:var(--ink-soft);margin-bottom:1.3rem}.prose li{margin-bottom:.5rem}.prose blockquote{border-left:3px solid var(--gold);padding:.4rem 0 .4rem 1.4rem;font-family:var(--serif);font-style:italic;font-size:1.35rem;color:var(--willow-800);margin:2rem 0}.prose img{border-radius:var(--radius-md);margin:1.5rem 0}.footer{background:#232323;color:rgba(250,247,241,.75)}.footer h5{color:var(--gold-soft);font-family:var(--sans);font-size:.8rem;font-weight:600;letter-spacing:.26em;text-transform:uppercase;margin-bottom:1.2rem}.footer a{color:rgba(250,247,241,.75)}.footer a:hover{color:var(--gold-soft)}.footer .footer-line{display:flex;gap:.7rem;margin-bottom:.7rem;font-size:.95rem}.footer .footer-line .ic{color:var(--gold);flex:0 0 auto}.footer .footer-line span:not(.ic){min-width:0;overflow-wrap:break-word}.footer .logo-footer img{filter:brightness(0) invert(1);opacity:.95;height:56px;width:auto}.footer-bottom{border-top:1px solid rgba(250,247,241,.12);font-size:.82rem;color:rgba(250,247,241,.55)}.social-pill{width:2.5rem;height:2.5rem;border-radius:50%;border:1px solid rgba(216,195,154,.4);display:inline-flex;align-items:center;justify-content:center;color:var(--gold-soft)!important;transition:.3s}.social-pill:hover{background:var(--gold);color:var(--willow-900)!important;transform:translateY(-3px)}.newsletter-form .form-control{background:rgba(250,247,241,.08);border:1px solid rgba(250,247,241,.2);color:var(--cream);border-radius:999px;padding:.65rem 1.1rem;font-size:.92rem}.newsletter-form .form-control::placeholder{color:rgba(250,247,241,.45)}.newsletter-form .form-control:focus{background:rgba(250,247,241,.12);color:var(--cream);box-shadow:0 0 0 .2rem rgba(216,195,154,.25);border-color:var(--gold)}.breadcrumb-custom{font-size:.85rem;letter-spacing:.08em}.breadcrumb-custom a{color:var(--gold)}.breadcrumb-custom .sep{color:var(--muted);padding:0 .4rem}.breadcrumb-custom .current{color:var(--muted)}@keyframes kenburns{from{transform:scale(1.02) translateY(0)}to{transform:scale(1.14) translateY(-1.5%)}}@keyframes bob{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,8px)}}@keyframes breathe{0%,100%{opacity:.45}50%{opacity:1}}@keyframes drift{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-2rem,1.5rem) scale(1.08)}}@keyframes fadein{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s,transform .9s cubic-bezier(.2, .6, .2, 1)}.reveal-l{opacity:0;transform:translateX(-34px);transition:opacity .9s,transform .9s cubic-bezier(.2, .6, .2, 1)}.reveal-r{opacity:0;transform:translateX(34px);transition:opacity .9s,transform .9s cubic-bezier(.2, .6, .2, 1)}.reveal-scale{opacity:0;transform:scale(.96);transition:opacity .9s,transform .9s cubic-bezier(.2, .6, .2, 1)}.reveal-l.in,.reveal-r.in,.reveal-scale.in,.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important}.reveal,.reveal-l,.reveal-r,.reveal-scale{opacity:1;transform:none}html{scroll-behavior:auto}}.rounded-big{border-radius:var(--radius-lg)}.card-soft{background:#fff;border:none;border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.pill-stat{text-align:center;padding:1.6rem 1rem;background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-soft)}.pill-stat .num{font-family:var(--serif);font-size:2.3rem;font-weight:600;color:var(--willow-900)}.pill-stat .lab{font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:600}.contact-chip{display:flex;align-items:center;gap:.9rem;background:#fff;border-radius:var(--radius-md);padding:1.1rem 1.4rem;box-shadow:var(--shadow-soft);transition:transform .35s,box-shadow .35s}.contact-chip:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift)}.contact-chip .ic{width:2.9rem;height:2.9rem;flex:0 0 auto;border-radius:50%;background:var(--gold-pale);color:var(--willow-800);display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem}.form-control-willow,.form-select-willow{border-radius:999px;border:1px solid rgba(34,48,31,.15);background:#fff;padding:.75rem 1.3rem}.text-on-dark{color:var(--cream)}.text-on-dark-55{color:rgba(250,247,241,.55)}.text-on-dark-60{color:rgba(250,247,241,.6)}.text-on-dark-70{color:rgba(250,247,241,.7)}.text-on-dark-75{color:rgba(250,247,241,.75)}.text-on-dark-80{color:rgba(250,247,241,.8)}.text-on-dark-85{color:rgba(250,247,241,.85)}.text-willow{color:var(--willow-900)}.text-gold{color:var(--gold)}.text-gold-soft{color:var(--gold-soft)}.text-muted-ink{color:var(--muted)}.text-ink-soft{color:var(--ink-soft)}.mw-540{max-width:540px}.mw-560{max-width:560px}.mw-620{max-width:620px}.mw-640{max-width:640px}.mw-680{max-width:680px}.mw-700{max-width:700px}.mw-760{max-width:760px}.mw-860{max-width:860px}.reveal,.reveal-l,.reveal-r,.reveal-scale{transition-delay:var(--reveal-delay, 0s)}.gallery-grid--2col{grid-template-columns:repeat(2,1fr)}.price-badge-static{position:static;font-size:1.6rem;padding:.5rem 1.6rem}.notice-spa{max-width:760px;background:var(--gold-pale);border:1px solid var(--gold-soft);border-radius:var(--radius-md);padding:1rem 1.25rem;text-align:center}.card-willow{background:var(--willow-900);color:var(--cream)}.card-willow h3{color:var(--cream)}.pkg-meta{letter-spacing:.12em;color:var(--gold);font-weight:600}.post-meta{color:var(--muted);font-size:.9rem}.post-hero-img img{aspect-ratio:16/9}.compare-table .compare-price-row{background:0 0}.compare-table thead th.price-from{font-family:var(--sans);font-weight:600;font-size:.9rem;color:var(--ink);background:var(--cream-2)}.compare-table th.price-head{background:var(--gold-pale)}.compare-table .compare-group .note{text-transform:none;letter-spacing:.02em;color:var(--muted);font-weight:400}.venue-tour-card{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);background:var(--cream);border-radius:1.25rem;overflow:hidden;box-shadow:var(--shadow-soft)}.venue-tour-media{position:relative;width:100%;padding:0;border:0;background:0 0;display:block;cursor:pointer;text-align:left}.venue-tour-media img{width:100%;height:100%;object-fit:cover;display:block}.venue-tour-play{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.5);background:rgba(0,0,0,.15);transition:background .3s}.venue-tour-card:hover .venue-tour-play{background:rgba(0,0,0,.3)}.venue-tour-body{padding:2.5rem;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}@media (max-width:767px){.venue-tour-card{grid-template-columns:1fr}.venue-tour-media img{aspect-ratio:16/9}.venue-tour-body{padding:1.5rem}}.play-icon{vertical-align:-.15em;margin-right:.4em}.video-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:1rem;visibility:hidden;opacity:0;transition:opacity .25s,visibility .25s}.video-modal.open{visibility:visible;opacity:1}.video-modal-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.85)}.video-modal-content{position:relative;width:min(960px,92vw);z-index:1}.video-modal-frame{position:relative;width:100%;aspect-ratio:16/9;background:#000;box-shadow:0 30px 80px rgba(0,0,0,.5)}.video-modal-embed{position:absolute;top:0;left:0;right:0;bottom:0}.video-modal-embed iframe{width:100%;height:100%;border:0;display:block}.video-modal-close{position:absolute;top:-3.2rem;right:0;background:0 0;border:none;color:#fff;font-size:2rem;line-height:1;cursor:pointer;padding:.25rem;z-index:2}body.video-modal-open{overflow:hidden}@media (max-width:767px){.video-modal{padding:0}.video-modal-content{width:100vw}.video-modal-close{top:.75rem;right:.75rem}}.stars{display:inline-flex;gap:.15rem}.stars .star{width:1.1em;height:1.1em;fill:var(--gold-pale);flex:0 0 auto}.stars .star--full{fill:var(--gold)}.review-rating-summary .stars .star{width:1.6em;height:1.6em}.review-stars-wrap .stars .star{width:1.05em;height:1.05em}.review-carousel{max-width:860px;margin-left:auto;margin-right:auto}.review-carousel .carousel-inner{padding:.25rem .5rem .5rem}.review-card{max-width:680px;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:2.75rem 2.5rem 2.25rem;text-align:center;position:relative}.review-quote-mark{position:absolute;top:.55rem;left:50%;transform:translateX(-50%);font-family:var(--serif);font-size:4.5rem;line-height:1;color:var(--gold-pale);pointer-events:none;user-select:none}.review-stars-wrap{margin-bottom:1.1rem}.review-text{font-family:var(--serif);font-size:1.35rem;font-style:italic;line-height:1.6;color:var(--willow-900);margin-bottom:1.5rem;border:0}.review-author{display:flex;align-items:center;justify-content:center;gap:.85rem;flex-wrap:wrap}.review-avatar{width:2.6rem;height:2.6rem;flex:0 0 auto;border-radius:50%;background:var(--gold);color:var(--willow-900);font-family:var(--sans);font-weight:600;font-size:.85rem;display:inline-flex;align-items:center;justify-content:center;letter-spacing:.03em}.review-author-meta{text-align:left}.review-name{font-weight:600;color:var(--willow-900);font-size:.98rem;line-height:1.3}.review-name a{color:inherit}.review-name a:hover{color:var(--gold)}.review-date{font-size:.82rem;color:var(--muted)}.review-source{margin-left:auto;display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;font-weight:600;color:var(--ink-soft);white-space:nowrap}.review-source:hover{color:var(--gold)}.review-source-mark{width:1.35rem;height:1.35rem;border-radius:50%;background:#fff;border:1px solid rgba(34,48,31,.15);color:var(--willow-700);font-weight:700;font-size:.78rem;display:inline-flex;align-items:center;justify-content:center}@media (max-width:575px){.review-card{padding:2.5rem 1.5rem 2rem}.review-text{font-size:1.15rem}.review-source{margin-left:0}.review-author{justify-content:center}}.review-carousel .carousel-control-next,.review-carousel .carousel-control-prev{width:2.6rem;height:2.6rem;top:50%;transform:translateY(-50%);border-radius:50%;background:var(--gold);opacity:1;box-shadow:0 4px 14px rgba(185,154,95,.45);transition:background .3s,box-shadow .3s}.review-carousel .carousel-control-prev{left:-3.4rem}.review-carousel .carousel-control-next{right:-3.4rem}.review-carousel .carousel-control-next:hover,.review-carousel .carousel-control-prev:hover{background:#a8874c;box-shadow:0 6px 18px rgba(185,154,95,.55)}.review-carousel .carousel-indicators{position:static;margin-top:1.6rem}.review-carousel .carousel-indicators [data-bs-target]{width:9px;height:9px;border-radius:50%;background-color:var(--gold-soft);border:0;opacity:.45}.review-carousel .carousel-indicators [data-bs-target].active{opacity:1;background-color:var(--gold)}@media (max-width:991px){.review-carousel .carousel-control-prev{left:-1.25rem}.review-carousel .carousel-control-next{right:-1.25rem}}.review-snippet{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:1.75rem 1.75rem 1.5rem;display:flex;flex-direction:column}.review-snippet-text{font-family:var(--serif);font-size:1.15rem;font-style:italic;line-height:1.6;color:var(--willow-900);border:0;margin-bottom:1.4rem}.review-snippet .review-author{margin-top:auto;justify-content:flex-start}.footer-review-badge{font-size:.85rem;color:rgba(250,247,241,.75);border:1px solid rgba(216,195,154,.35);border-radius:999px;padding:.5rem 1rem;transition:border-color .3s,color .3s}.footer-review-badge:hover{color:var(--gold-soft);border-color:var(--gold-soft)}.footer-review-stars{color:var(--gold);letter-spacing:.08em;font-size:.85rem}