@font-face{font-family:Allura;src:url('assets/fonts/allura.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Barlow Condensed';src:url('assets/fonts/barlow-condensed-bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
:root{color-scheme:dark;--bg:#231f15;--surface:#352f20;--blue:#78602c;--pink:#c4a560;--pink-deep:#b69243;--white:#FFFFFF;--muted:#e5d8ba;--border:#c1ad8137;--sans:Arial,Helvetica,sans-serif;--display:'Barlow Condensed',Impact,sans-serif;--script:Allura,'Brush Script MT',cursive}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--white);font-family:var(--sans);font-size:17px;line-height:1.75}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:default}img{display:block;max-width:100%}::selection{background:var(--pink);color:var(--bg)}:focus-visible{outline:3px solid var(--pink);outline-offset:5px}[hidden]{display:none!important}p{margin:0 0 1.3em}h1,h2,h3{margin:0}h2,h3{font-family:var(--display);font-weight:700;line-height:1.05;letter-spacing:-.015em}h2{font-size:clamp(2.9rem,5.2vw,5.1rem)}h3{font-size:2rem}em{font-style:normal;color:var(--pink)}strong{font-weight:700}.muted{color:var(--muted);font-size:1rem}.section-shell{width:min(1240px,88%);margin:auto;padding-block:110px}.eyebrow{font-size:.875rem;letter-spacing:.15em;font-weight:700;color:var(--pink);margin:0 0 24px;line-height:1.5}.skip-link{position:fixed;left:16px;top:-80px;padding:10px 20px;background:var(--pink);color:var(--bg);z-index:100}.skip-link:focus{top:14px}
.site-header{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:14px 6%;border-bottom:1px solid #ffffff25;position:absolute;top:0;width:100%;z-index:5;background:linear-gradient(#231f15cc,#231f1524)}.wordmark{flex-shrink:0;display:block}.wordmark-script{font:400 2.4rem/1 var(--script);white-space:nowrap}.wordmark-script b{font-weight:400;color:var(--pink)}nav{display:flex;align-items:center;gap:32px;font-size:.9rem}nav a{transition:color .2s}nav a:hover{color:var(--pink)}.nav-cta{border:1px solid #c4a560a1;border-radius:4px;padding:11px 18px;background:#231f1538}.menu-toggle{display:none}
.hero{position:relative;isolation:isolate;overflow:hidden;min-height:900px;display:flex;align-items:center;background:radial-gradient(ellipse at 14% 8%,#78602c 0%,#3f3726 35%,#231f15 73%)}.hero-photo{position:absolute;inset:0 0 0 37%;z-index:-2;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:55% 0%;animation:portrait-arrive 1.2s ease-out both}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#3f3726 0%,#3f3726d4 12%,#3f372630 37%,transparent 58%),linear-gradient(0deg,#231f15 0%,#231f1594 10%,transparent 33%)}.hero-content{width:min(680px,54%);margin-left:6%;padding-block:150px 136px;position:relative;animation:content-arrive .9s ease-out both}.hero .eyebrow{color:#fff;letter-spacing:.13em;margin-bottom:36px;text-shadow:0 1px 15px #231f1570}.hero .eyebrow span{display:block;color:var(--muted);font-size:.875rem;letter-spacing:.12em;margin-top:4px;font-weight:400}h1{font:400 clamp(6.5rem,11vw,10rem)/.88 var(--script);letter-spacing:0;transform:rotate(-5deg);transform-origin:bottom left;margin:0 0 37px -10px;position:relative;width:fit-content;text-shadow:0 3px 25px #231f1530}h1 span{display:block}h1 span:last-child{margin-left:1.05em}h1:after{content:'';position:absolute;width:58%;height:5px;background:var(--pink);left:25%;bottom:-12px;transform:rotate(-5deg);border-radius:100% 20% 80% 0;box-shadow:0 3px 20px #c4a56056}.hero-statement{font:700 clamp(1.9rem,2.7vw,2.65rem)/1.15 var(--display);margin:0 0 18px;letter-spacing:.005em}.hero-statement strong{color:var(--pink);font-weight:700}.hero-intro{font-size:1.05rem;color:#f4efe3;max-width:385px;line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:17px 23px;min-height:56px;line-height:1.4;font-size:1rem;border:1px solid transparent;border-radius:4px;transition:background .2s,transform .2s,box-shadow .2s}.button-pink{background:var(--pink);color:var(--bg);font-weight:700;box-shadow:0 8px 28px #b6924326}.button-pink:hover{background:#d4bd8b;transform:translateY(-2px);box-shadow:0 10px 30px #b692433d}.button span{font-size:1.25rem}.hero-telegram{border-bottom:1px solid #ede3ce84;font-size:1rem;padding:4px 0}.hero-telegram:hover{color:var(--pink)}.text-link{font-size:1rem;border:0;border-bottom:1px solid #c4a56084;background:transparent;color:#e9ddc2;padding:3px 0;display:inline-block;line-height:1.7;text-align:left}.text-link:hover{color:#fff}.hero-note{font-size:.875rem;color:var(--muted);margin:22px 0 0;max-width:440px}.hero-bottom{position:absolute;bottom:30px;left:6%;right:6%;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #decda740;padding-top:20px;gap:20px;font-size:.875rem;letter-spacing:.12em;color:#efe7d4}.hero-bottom a{display:flex;gap:18px;align-items:center;white-space:nowrap}.hero-bottom a span{font-size:1.25rem;color:var(--pink)}
.about{display:grid;grid-template-columns:.95fr 1fr;gap:10%;align-items:center}.about-image{position:relative;max-width:505px}.about-image img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 18%;border-radius:6px}.about-image:before{content:'';position:absolute;z-index:-1;border:1px solid #c4a5604d;inset:22px -22px -22px 22px;border-radius:6px}.photo-signature{position:absolute;right:-24px;bottom:12px;font:400 clamp(3.8rem,6vw,5.5rem)/1 var(--script);color:#fff;text-shadow:1px 2px 12px #1a160f;transform:rotate(-6deg)}.about-copy h2{margin-bottom:30px}.about-copy p{color:#eee5d2}.about-copy blockquote{margin:30px 0;font-family:var(--display);font-weight:700;font-size:1.75rem;color:#fff;line-height:1.3;border-left:3px solid var(--pink);padding-left:23px}.encounters{background:linear-gradient(135deg,#3e3726,#2a251a 75%);border-block:1px solid var(--border)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:46px}.section-heading>p{color:var(--muted);font-size:1rem;margin-bottom:4px}.encounter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.encounter-card{position:relative;display:flex;flex-direction:column;min-width:0;border:1px solid #d1bd913d;border-top:3px solid #b99545;padding:36px 30px;background:#302a1d;transition:transform .25s,border-color .25s;border-radius:4px}.encounter-card:hover{transform:translateY(-5px);border-color:var(--pink)}.encounter-card.bold{background:linear-gradient(150deg,#423a28,#312b1d);border-top-color:var(--pink)}.encounter-card.duo{background:linear-gradient(150deg,#5a4821,#302a1d);border-top-color:#ddcba2}.card-number{display:block;font-size:.875rem;letter-spacing:.15em;margin-bottom:30px;color:#e4d9bf}.encounter-card h3{font-size:clamp(2.4rem,3.5vw,3.45rem);margin-bottom:24px;line-height:1.08;overflow-wrap:break-word}.encounter-card p{color:#e9dec7;font-size:1rem;line-height:1.75}.encounter-card .text-link{align-self:flex-start;margin-top:auto;font-size:.95rem}.encounter-card .duo-note{margin:17px 0 0;font-size:.875rem;color:#e5d8bb;line-height:1.65}.welcome-note{display:grid;grid-template-columns:215px 1fr;gap:30px;border-top:1px solid var(--border);margin-top:48px;padding-top:35px;align-items:center}.welcome-label{font:700 2rem/1.12 var(--display);color:var(--pink)}.welcome-note p{margin:0;color:#e9dec5;max-width:780px}.welcome-note strong{color:#fff}
.location{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.location-copy>p:first-child{font-size:1.1rem;color:#f3eddf}.amenities{display:flex;flex-wrap:wrap;gap:11px;margin:23px 0}.amenities span{border:1px solid #b4924778;padding:7px 16px;color:#f6f1e5;border-radius:30px;font-size:.95rem}.gallery-section{background:#2a2519;border-block:1px solid var(--border)}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.gallery-item{position:relative;display:block;padding:0;border:0;overflow:hidden;background:#2d271b;border-radius:5px;text-align:left;min-width:0}.gallery-item img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center 22%;transition:transform .55s ease}.gallery-item:hover img{transform:scale(1.035)}.gallery-item>span{position:absolute;inset:auto 0 0;display:flex;justify-content:space-between;align-items:center;gap:12px;background:linear-gradient(transparent,#1b1810e8);padding:55px 22px 22px;font:700 1.6rem/1.2 var(--display)}.gallery-item i{font:400 1.3rem var(--sans);color:var(--pink)}
.booking{display:grid;grid-template-columns:1fr 1.1fr;gap:10%;align-items:start}.booking-intro{position:sticky;top:60px}.booking-intro h2{font-size:clamp(3.2rem,5.7vw,5.5rem);margin-bottom:30px}.booking-intro>p{color:#e8ddc5;max-width:420px}.contact-number{font:700 clamp(2.1rem,3.8vw,3.3rem)/1.2 var(--display);display:block;margin:32px 0 20px;letter-spacing:.005em}.contact-number span{display:block;font:700 .875rem/1.5 var(--sans);letter-spacing:.16em;color:var(--pink);margin-top:7px}.contact-options{display:flex;flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:27px}.booking-panel{padding:38px;background:linear-gradient(145deg,#403827,#2d271b);border:1px solid #b19a665c;border-radius:7px;min-width:0;box-shadow:0 15px 70px #110f0a33}.booking-panel h3{font-size:2.3rem;margin:0 0 26px;line-height:1.15}.field{margin-bottom:20px;min-width:0}.field label{display:block;font-size:.95rem;color:#f8f4ec;margin-bottom:8px;line-height:1.55}.field label span{color:var(--muted);font-size:.875rem}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field input,.field textarea,.field select,.request-result textarea{width:100%;font-size:1rem;line-height:1.55;border:1px solid #b19a66;background:#262117;color:#fff;border-radius:4px;padding:13px;min-height:49px;min-width:0;max-width:100%;color-scheme:dark}.field textarea,.request-result textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#d4c6a8;opacity:1}.field input:focus,.field textarea:focus,.field select:focus,.request-result textarea:focus{border-color:var(--pink);outline:2px solid #c4a56033;outline-offset:1px}.booking-panel form>.button{width:100%;margin-top:4px}.form-note{font-size:.875rem;line-height:1.65;color:#dfd4ba;margin:14px 0 0}.request-calendar{margin:24px 0;padding:18px;background:#231f15;border:1px solid #9e875575;border-radius:4px;overflow:hidden}.calendar-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.calendar-top button{border:1px solid #998558;border-radius:3px;background:transparent;color:#fff;min-width:44px;min-height:44px;font-size:1.2rem}.calendar-top button:hover:not(:disabled){background:#78602c;border-color:#dbc89d}.calendar-top strong{text-transform:capitalize;font-size:1.05rem}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-week span{text-align:center;font-size:.875rem;padding-bottom:10px;color:#e8dcc0}.calendar-day{font:inherit;font-size:1rem;background:transparent;color:#faf8f2;border:1px solid transparent;border-radius:3px;min-height:44px;min-width:0;cursor:pointer;padding:4px}.calendar-day:hover:not(:disabled){border-color:var(--pink);background:#c4a5601a}.calendar-day[aria-pressed=true]{background:var(--pink);color:var(--bg);font-weight:700}.calendar-day:disabled,.calendar-top button:disabled{opacity:.32;cursor:default}.calendar-day:focus-visible{outline:3px solid var(--pink);outline-offset:-3px;position:relative;z-index:1}.request-calendar .form-note{margin:16px 0 0}#duo-hint{padding:12px 14px;background:#c4a5601a;border-left:2px solid var(--pink);color:#f2ebdc}#booking-error{color:#ede4cf;margin-bottom:12px}#booking-error:empty{display:none}.request-result label{display:block;margin-bottom:12px;font-size:1rem}.request-result textarea{margin-bottom:18px;white-space:pre-wrap;line-height:1.65}.request-result>.button{width:100%}.telegram-result{margin-top:21px;font-size:.95rem}.result-actions{display:flex;gap:22px;flex-wrap:wrap;margin-top:20px}
.closing{position:relative;text-align:center;padding:58px 6% 76px;background:radial-gradient(ellipse at 50% 100%,#78602c80,transparent 70%);border-top:1px solid var(--border);overflow:hidden}.closing>p{font:700 1.25rem/1.4 var(--display);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:12px}.closing>span{display:inline-block;font:400 clamp(4rem,9vw,8rem)/1.2 var(--script);transform:rotate(-4deg);color:#fff}.site-footer{padding:26px 6%;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap;background:#1d1911}.footer-brand{font-family:var(--display);font-weight:700;font-size:1.2rem;letter-spacing:.07em;color:var(--pink)}.site-footer p,.adult-label{font-size:.875rem;color:var(--muted);margin:0}dialog{padding:18px;background:#272217;border:1px solid #ad996c;max-width:min(900px,94vw);max-height:94dvh;border-radius:6px;overflow:auto;color:#fff}dialog::backdrop{background:#12100be8;backdrop-filter:blur(7px)}#photo-full{width:auto;max-width:100%;height:auto;max-height:72dvh;object-fit:contain;margin:auto}.dialog-close{position:sticky;top:0;float:right;z-index:2;width:44px;height:44px;margin-bottom:-44px;background:#231f15db;border:1px solid #f2ecdd7d;border-radius:50%;font-size:1.9rem;line-height:1;color:#fff}#photo-caption{text-align:center;font:700 1.6rem/1.2 var(--display);margin:18px 50px 12px}.photo-controls{display:flex;justify-content:center;align-items:center;gap:20px}.photo-controls button{background:#3d3524;border:1px solid #9e8755;width:44px;min-height:44px;font-size:1.3rem;border-radius:4px}#photo-counter{font-size:.95rem;color:var(--muted)}
@keyframes content-arrive{from{opacity:0;translate:0 20px}to{opacity:1;translate:0 0}}@keyframes portrait-arrive{from{opacity:.7;scale:1.025}to{opacity:1;scale:1}}
@media(min-width:1700px){.hero{min-height:1000px}.hero-photo{inset:0 0 0 43%}.hero-photo img{object-fit:contain;object-position:right top;background:#78602c}.hero-content{margin-left:max(6%,calc((100% - 1440px)/2));width:660px}h1{font-size:10.5rem}}
@media(max-width:1100px){nav{gap:19px}.hero{min-height:865px}.hero-content{width:55%;padding-top:155px}.hero-photo{left:32%}.hero-photo:after{background:linear-gradient(90deg,#3f3726 0%,#3f3726e0 13%,#3f372626 52%,transparent 70%),linear-gradient(0deg,#231f15 0%,#231f157d 13%,transparent 36%)}h1{font-size:clamp(6rem,11.4vw,8rem)}.hero-statement{font-size:2.15rem}.encounter-grid{gap:15px}.encounter-card{padding:30px 22px}.about,.booking{gap:7%}.booking-panel{padding:29px}.section-heading{gap:28px}.section-heading>p{max-width:280px}.welcome-note{grid-template-columns:190px 1fr}}
@media(max-width:820px){.site-header{min-height:80px;padding:16px 6%}.wordmark-script{font-size:2.25rem}.menu-toggle{display:flex;gap:10px;align-items:center;border:1px solid #d6c19167;border-radius:4px;background:#231f158c;font-size:.9rem;padding:9px 13px;min-height:44px}.menu-toggle span{font-size:1.2rem}nav{display:none;position:absolute;top:80px;left:0;right:0;background:#2b261a;border-bottom:1px solid #c1ac7c;padding:16px 6% 23px;flex-direction:column;align-items:stretch;gap:0;font-size:1rem}nav.is-open{display:flex}nav a{padding:13px 10px}.nav-cta{margin-top:9px;text-align:center}.hero{min-height:820px}.hero-content{width:57%;padding-top:155px}h1{font-size:6.6rem}.hero-statement{font-size:1.9rem}.hero-intro{max-width:310px;font-size:1rem}.hero-photo{left:30%}.hero-actions{gap:15px}.hero-bottom{font-size:.8rem;letter-spacing:.07em}.about{gap:7%}.about-copy h2{font-size:3rem}.about-copy blockquote{font-size:1.55rem}.encounter-grid{grid-template-columns:1fr}.encounter-card{display:grid;grid-template-columns:1fr 1fr;column-gap:34px;padding:30px}.card-number{grid-column:1/-1;margin-bottom:20px}.encounter-card h3{grid-column:1;grid-row:2/5;font-size:3rem;margin:0}.encounter-card p,.encounter-card .text-link{grid-column:2}.encounter-card .text-link{justify-self:start}.encounter-card .duo-note{grid-column:2}.gallery{gap:14px}.gallery-item>span{font-size:1.35rem;padding:45px 16px 16px}.booking{grid-template-columns:1fr 1.1fr;gap:5%}.booking-panel{padding:24px 18px}.booking-intro h2{font-size:3.5rem}.field-row{grid-template-columns:1fr}.booking-panel .button{font-size:.95rem;gap:12px}.calendar-week,.calendar-days{gap:2px}.request-calendar{padding:10px}.calendar-day{min-height:40px}.booking-intro{position:static}.section-shell{padding-block:82px}}
@media(max-width:600px){body{font-size:16px}.site-header{min-height:78px}.wordmark-script{font-size:2rem}nav{top:78px}.hero{display:block;min-height:0;background:linear-gradient(180deg,#78602c 0,#231f15 70%);padding-bottom:86px}.hero-photo{inset:0 0 auto 0;height:670px}.hero-photo img{object-position:65% 0;object-fit:cover}.hero-photo:after{background:linear-gradient(0deg,#231f15 0%,#231f158c 19%,#231f1500 54%),linear-gradient(90deg,#231f153d,transparent 65%)}.hero-content{margin:0;width:100%;padding:435px 6% 20px}.hero .eyebrow{position:absolute;top:105px;left:6%;max-width:145px;font-size:.875rem;line-height:1.6;color:#fff;margin:0;letter-spacing:.09em}.hero .eyebrow span{font-size:.8rem;color:#f3ecdd;margin-top:9px;letter-spacing:.07em;max-width:120px}h1{font-size:clamp(5.8rem,22vw,8rem);margin:0 0 33px -4px;line-height:.87;max-width:94%;transform:rotate(-5deg);text-shadow:0 2px 18px #231f15}h1 span:last-child{margin-left:.75em}h1:after{width:54%;height:4px;left:25%;bottom:-13px}.hero-statement{font-size:2.05rem;max-width:360px;line-height:1.15;margin-bottom:19px}.hero-intro{max-width:350px;font-size:1.05rem}.hero-actions{gap:23px;margin-top:27px}.hero-actions .button{font-size:1rem;padding:16px 20px}.hero-note{font-size:.875rem;max-width:320px;margin-top:22px}.hero-bottom{bottom:25px;padding-top:17px;font-size:.78rem;letter-spacing:.075em}.hero-bottom>a{display:none}.section-shell{width:88%;padding-block:72px}h2{font-size:clamp(2.9rem,10.5vw,3.8rem)}.eyebrow{margin-bottom:19px;font-size:.875rem;letter-spacing:.12em}.about{grid-template-columns:1fr;gap:57px}.about-image{width:92%;margin-inline:auto;max-width:420px}.about-image:before{inset:16px -14px -16px 14px}.photo-signature{right:-15px;bottom:16px;font-size:4.5rem}.about-copy h2{font-size:clamp(3rem,10vw,3.7rem)}.about-copy blockquote{font-size:1.65rem;padding-left:18px}.section-heading{display:block;margin-bottom:33px}.section-heading>p{margin:24px 0 0;max-width:100%}.encounter-grid{gap:19px}.encounter-card{display:flex;flex-direction:column;padding:31px 27px}.encounter-card h3{font-size:3.3rem;margin-bottom:23px;line-height:1.03}.encounter-card .text-link{font-size:1rem}.card-number{margin-bottom:24px}.encounter-card p{font-size:1rem}.welcome-note{grid-template-columns:1fr;gap:20px;padding-top:30px;margin-top:35px}.welcome-label{font-size:1.9rem;word-spacing:4px}.welcome-label br{display:none}.location{grid-template-columns:1fr;gap:30px}.location-copy>p:first-child{font-size:1.05rem}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-item>span{font-size:1.25rem;padding:40px 12px 15px}.gallery-item i{display:none}.booking{grid-template-columns:1fr;gap:34px}.booking-intro h2{font-size:3.7rem}.booking-intro h2 br:first-of-type{display:none}.booking-intro>p{max-width:none}.contact-number{font-size:2.65rem}.booking-panel{padding:27px 20px}.booking-panel h3{font-size:2.15rem}.field-row{grid-template-columns:1fr 1fr;gap:12px}.request-calendar{padding:12px}.calendar-day{min-height:44px}.calendar-top strong{font-size:1rem}.booking-panel .button{font-size:1rem}.result-actions{gap:18px;flex-direction:column;align-items:flex-start}.closing{padding:47px 6% 60px}.closing>span{font-size:clamp(3.5rem,12.8vw,5rem);line-height:1.2}.site-footer{gap:14px;padding:25px 6%}.site-footer p{flex-basis:100%}dialog{max-width:95vw;padding:12px}#photo-caption{font-size:1.4rem;margin-inline:30px}}
@media(max-width:380px){.wordmark-script{font-size:1.75rem}.site-header{gap:10px}.menu-toggle{padding:8px 10px}.hero-content{padding-top:420px}h1{font-size:22vw}.hero-photo{height:610px}.hero-actions{gap:20px}.hero-statement{font-size:1.9rem}.field-row{grid-template-columns:1fr}.booking-panel{padding:24px 15px}.calendar-days,.calendar-week{gap:1px}.calendar-day{padding:2px}.gallery-item>span{font-size:1.1rem}.encounter-card h3{font-size:3rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
