@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Prata&display=swap');
:root{--wine:#761638;--wine-dark:#4d0b25;--pink:#f4dce4;--blush:#fff7f9;--ink:#24191d;--muted:#74666b;--line:#e9dde1;--white:#fff;--radius:24px;--shadow:0 22px 70px rgba(55,17,32,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:16px/1.6 Manrope,Arial,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}img{display:block;max-width:100%}.skip{position:fixed;left:1rem;top:-5rem;z-index:100;background:#fff;padding:.7rem 1rem}.skip:focus{top:1rem}.header{height:88px;padding:0 max(4vw,24px);display:flex;align-items:center;gap:32px;border-bottom:1px solid rgba(255,255,255,.15);position:absolute;z-index:20;width:100%;color:#fff}.brand{display:flex;align-items:center;gap:4px;font:24px/1 Prata,serif;white-space:nowrap}.brand i{font-size:13px;color:#df9cb1}.nav{display:flex;gap:28px;margin-left:auto}.nav a,.header-phone{font-size:14px}.nav a:hover,.header-phone:hover{text-decoration:underline;text-underline-offset:6px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:54px;padding:0 24px;border:1px solid var(--wine);border-radius:999px;background:var(--wine);color:#fff;font-weight:700;cursor:pointer;transition:.25s}.button:hover{background:var(--wine-dark);transform:translateY(-2px)}.button-small{min-height:44px;padding:0 20px;background:#fff;color:var(--wine);border-color:#fff}.button-light{background:transparent;border-color:rgba(255,255,255,.6)}.button-light:hover{background:#fff;color:var(--wine)}.button-outline{background:transparent;color:var(--wine)}.button-white{background:#fff;color:var(--wine);border-color:#fff}.menu{display:none;margin-left:auto;width:44px;height:44px;border:0;border-radius:50%;background:#fff}.menu span{display:block;width:18px;height:1px;background:var(--wine);margin:6px auto}.hero{min-height:760px;background:var(--wine-dark);color:#fff;display:grid;grid-template-columns:1.05fr .95fr;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:auto auto -260px -220px;width:620px;height:620px;border:1px solid rgba(255,255,255,.1);border-radius:50%}.hero-copy{padding:170px 5vw 100px 7vw;position:relative;z-index:2}.eyebrow{display:flex;align-items:center;gap:14px;font-size:14px}.rating{border:1px solid rgba(255,255,255,.4);border-radius:999px;padding:5px 11px;color:#ffd563}.hero h1{font:clamp(74px,9vw,142px)/.82 Prata,serif;letter-spacing:-.06em;margin:56px 0 34px}.hero h1 em{font-style:normal;color:#e9a9be;font-size:.55em;vertical-align:.25em}.lead{font-size:18px;max-width:600px;color:#f7e8ed;margin:0 0 36px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-meta{display:flex;gap:25px;margin-top:38px;color:#ead5dc;font-size:14px}.hero-meta a{text-decoration:underline;text-underline-offset:5px}.hero-visual{position:relative;min-height:760px}.hero-main{width:100%;height:100%;object-fit:cover;filter:saturate(.88)}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--wine-dark) 0,transparent 24%),linear-gradient(0deg,rgba(35,8,18,.35),transparent 45%)}.hero-inset{position:absolute;z-index:2;left:-42px;bottom:70px;width:190px;height:240px;object-fit:cover;border:8px solid #fff}.hero-mark{position:absolute;z-index:3;right:28px;bottom:32px;background:#fff;color:var(--wine);width:132px;height:132px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;text-align:center;font-size:12px;line-height:1.35}.hero-mark span{font:32px/1 Prata,serif}.hero-links{display:none}.facts{max-width:1280px;margin:-1px auto 0;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);position:relative;z-index:3;background:#fff}.facts article{display:flex;gap:16px;align-items:flex-start;padding:30px;border-right:1px solid var(--line)}.facts article:last-child{border:0}.fact-icon{width:38px;height:38px;border-radius:50%;background:var(--pink);display:grid;place-items:center;color:var(--wine);flex:none}.facts h3{font-size:15px;margin:0 0 5px}.facts p{font-size:13px;color:var(--muted);margin:0;line-height:1.45}.section{padding:120px max(5vw,24px)}.section-head{max-width:1280px;margin:0 auto 50px;display:flex;align-items:end;justify-content:space-between;gap:40px}.section-head h2,.booking-band h2,.contact-card h2,.dialog-head h2{font:clamp(38px,5vw,68px)/1.08 Prata,serif;letter-spacing:-.035em;margin:10px 0 0}.section-head>p{max-width:420px;color:var(--muted);margin:0}.kicker{font-size:12px;text-transform:uppercase;letter-spacing:.2em;font-weight:700;color:var(--wine)}.service-grid{max-width:1280px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{position:relative;height:430px;border-radius:var(--radius);overflow:hidden;color:#fff;cursor:pointer}.service-card img{width:100%;height:100%;object-fit:cover;transition:.5s}.service-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(28,5,14,.9),rgba(28,5,14,0) 70%)}.service-card:hover img{transform:scale(1.04)}.service-info{position:absolute;z-index:2;left:22px;right:22px;bottom:22px}.service-info h3{font:24px/1.18 Prata,serif;margin:0 0 6px}.service-info p{font-size:13px;color:#f1e5e9;margin:0 0 13px;min-height:42px}.service-price{display:flex;justify-content:space-between;align-items:center;font-weight:700}.service-price span:last-child{width:36px;height:36px;border:1px solid rgba(255,255,255,.6);border-radius:50%;display:grid;place-items:center}.center{display:flex;justify-content:center;margin-top:42px}.gallery-section{background:var(--wine-dark);color:#fff}.section-head.light p{color:#ddc8cf}.section-head.light .kicker{color:#e9a9be}.gallery-feature{max-width:1280px;margin:auto;display:grid;grid-template-columns:1.45fr .8fr .8fr;grid-template-rows:260px 260px;gap:12px}.gallery-item{border:0;padding:0;overflow:hidden;background:#34101d;cursor:zoom-in;border-radius:16px}.gallery-item:first-child{grid-row:1/3}.gallery-item:nth-child(4){grid-column:2/4}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.45s}.gallery-item:hover img{transform:scale(1.035)}.reviews{background:var(--blush)}.review-summary{display:flex;align-items:center;gap:18px}.review-summary strong{font:64px/1 Prata,serif}.review-summary span{color:#e5a62f;letter-spacing:3px}.review-summary small{color:var(--muted);letter-spacing:0}.review-viewport{max-width:1280px;margin:auto;overflow:hidden}.review-track{display:flex;gap:18px;transition:transform .5s ease}.review-card{min-width:calc((100% - 36px)/3);background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;display:flex;flex-direction:column;min-height:310px}.review-stars{color:#e5a62f;letter-spacing:2px}.review-card blockquote{font-size:15px;margin:24px 0;flex:1}.review-author{border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;gap:12px}.review-author strong{font-size:14px}.review-author span{font-size:12px;color:var(--muted)}.carousel-controls{max-width:1280px;margin:24px auto 0;display:flex;justify-content:flex-end;align-items:center;gap:12px}.carousel-controls button{width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid var(--line);cursor:pointer}.carousel-controls span{font-size:13px;color:var(--muted);margin:0 6px}.text-link{text-decoration:underline;text-underline-offset:6px}.booking-band{padding:70px max(6vw,30px);background:var(--wine);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:40px}.booking-band .kicker{color:#efb5c8}.booking-band h2{font-size:clamp(34px,4vw,58px);max-width:800px}.contacts{padding:110px max(5vw,24px);display:grid;grid-template-columns:.9fr 1.1fr;max-width:1440px;margin:auto}.contact-card{padding:30px 7vw 30px 0}.contact-card dl{margin:38px 0}.contact-card dl>div{display:grid;grid-template-columns:120px 1fr;padding:14px 0;border-bottom:1px solid var(--line)}dt{font-size:13px;color:var(--muted)}dd{margin:0}.contact-actions{display:flex;gap:12px;flex-wrap:wrap}.map{min-height:560px;border-radius:var(--radius);overflow:hidden;background:#eee}.map iframe{border:0;width:100%;height:100%}footer{background:#21171b;color:#fff;padding:48px max(5vw,24px) 90px;display:flex;align-items:center;gap:40px}footer p{color:#bcaeb3;margin-right:auto}.brand-footer{font-size:26px}footer>div{display:flex;gap:24px}.mobile-book{display:none}.catalog-dialog,.gallery-dialog{width:min(1200px,calc(100% - 32px));height:min(90vh,920px);border:0;border-radius:28px;padding:0;box-shadow:var(--shadow);overflow:hidden}.catalog-dialog::backdrop,.gallery-dialog::backdrop{background:rgba(27,8,15,.72);backdrop-filter:blur(5px)}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;padding:30px 36px 22px;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:4}.dialog-head h2{font-size:38px}.dialog-close{width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:28px;cursor:pointer}.catalog-tools{padding:22px 36px 14px;background:#fff;position:sticky;top:111px;z-index:3}.search{height:50px;border:1px solid var(--line);border-radius:999px;padding:0 18px;display:flex;align-items:center;gap:10px}.search input{border:0;outline:0;width:100%;font-size:16px}.chips{display:flex;gap:8px;overflow:auto;padding:14px 0 2px;scrollbar-width:none}.chips button{white-space:nowrap;border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 14px;cursor:pointer;font-size:13px}.chips button.active{background:var(--wine);color:#fff;border-color:var(--wine)}.result-count{margin:5px 36px;color:var(--muted);font-size:13px}.catalog-grid{padding:18px 36px 42px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;overflow:auto}.catalog-card{display:grid;grid-template-columns:92px 1fr auto;gap:16px;align-items:center;border:1px solid var(--line);border-radius:18px;padding:10px;text-align:left;background:#fff;color:var(--ink);cursor:pointer}.catalog-card:hover{border-color:#c895a6}.catalog-card img{width:92px;height:82px;border-radius:12px;object-fit:cover}.catalog-card h3{font-size:14px;line-height:1.35;margin:0 0 7px}.catalog-card small{color:var(--muted)}.catalog-price{font-weight:700;color:var(--wine);white-space:nowrap;padding-right:10px}.gallery-dialog{overflow:auto}.gallery-filters{padding:18px 36px;position:sticky;top:111px;background:#fff;z-index:3}.gallery-all{padding:0 36px 42px;columns:4 200px;column-gap:12px}.gallery-all button{border:0;padding:0;margin:0 0 12px;width:100%;border-radius:14px;overflow:hidden;break-inside:avoid;cursor:zoom-in;background:#eee}.gallery-all img{width:100%;height:auto}.lightbox{position:fixed;z-index:100;inset:0;background:rgba(18,7,11,.96);display:flex;align-items:center;justify-content:center;color:#fff}.lightbox[hidden]{display:none}.lightbox figure{margin:0;max-width:calc(100vw - 170px);max-height:88vh;display:flex;flex-direction:column;align-items:center}.lightbox figure img{max-height:80vh;max-width:100%;object-fit:contain}.lightbox figcaption{margin-top:12px;font-size:13px;color:#d8c9ce}.lightbox-close,.lightbox-arrow{position:absolute;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.08);color:#fff;border-radius:50%;cursor:pointer}.lightbox-close{top:22px;right:22px;width:48px;height:48px;font-size:27px}.lightbox-arrow{top:50%;width:54px;height:54px;font-size:24px}.lightbox-arrow.prev{left:25px}.lightbox-arrow.next{right:25px}.lightbox-count{position:absolute;bottom:22px;right:28px}.no-results{grid-column:1/-1;text-align:center;padding:70px;color:var(--muted)}
@media(max-width:1050px){.header-phone{display:none}.nav{gap:18px}.hero{grid-template-columns:1fr 1fr}.hero-copy{padding-left:4vw}.service-grid{grid-template-columns:repeat(2,1fr)}.facts{margin:0;border-left:0;border-right:0}.facts article{padding:22px}.review-card{min-width:calc((100% - 18px)/2)}.gallery-all{columns:3 190px}}
@media(max-width:760px){body{padding-bottom:68px}.header{height:70px;padding:0 18px;position:absolute}.header>.button,.header-phone{display:none}.brand{font-size:20px}.menu{display:block}.nav{position:absolute;top:70px;left:12px;right:12px;background:#fff;color:var(--ink);border-radius:18px;padding:18px;display:none;flex-direction:column;box-shadow:var(--shadow)}.nav.open{display:flex}.hero{min-height:auto;display:block;padding-bottom:34px}.hero-copy{padding:120px 20px 36px}.hero h1{font-size:72px;margin:38px 0 28px}.lead{font-size:16px}.hero-actions .button{width:100%}.hero-meta{display:grid;gap:8px}.hero-visual{min-height:460px;margin:0 14px;border-radius:24px;overflow:hidden}.hero-main{min-height:460px}.hero-inset{left:14px;bottom:14px;width:120px;height:150px;border-width:5px}.hero-mark{width:100px;height:100px;right:14px;bottom:14px}.facts{grid-template-columns:1fr 1fr}.facts article:nth-child(2){border-right:0}.facts article{border-bottom:1px solid var(--line);padding:18px 14px;gap:10px}.section{padding:78px 16px}.section-head{display:block;margin-bottom:34px}.section-head>p{margin-top:18px}.section-head h2{font-size:42px}.service-grid{grid-template-columns:1fr 1fr;gap:10px}.service-card{height:330px;border-radius:17px}.service-info{left:15px;right:15px;bottom:15px}.service-info h3{font-size:19px}.service-info p{display:none}.gallery-feature{grid-template-columns:1fr 1fr;grid-template-rows:280px 180px 180px}.gallery-item:first-child{grid-column:1/3;grid-row:auto}.gallery-item:nth-child(4){grid-column:auto}.review-summary{margin-top:22px}.review-card{min-width:100%;min-height:330px}.carousel-controls{justify-content:center}.booking-band{padding:55px 20px;display:block}.booking-band .button{width:100%;margin-top:25px}.contacts{padding:70px 16px;display:block}.contact-card{padding:0 0 35px}.contact-card dl>div{grid-template-columns:100px 1fr}.contact-actions .button{width:100%}.map{min-height:380px}footer{display:block;padding:45px 20px 35px}footer p{margin:18px 0}footer>div{flex-wrap:wrap}.mobile-book{display:flex;position:fixed;z-index:50;left:10px;right:10px;bottom:10px;height:52px;border-radius:999px;background:var(--wine);color:#fff;align-items:center;justify-content:center;font-weight:700;box-shadow:0 10px 30px rgba(80,12,38,.35)}.catalog-dialog,.gallery-dialog{width:100%;max-width:none;height:100%;max-height:none;border-radius:0}.dialog-head{padding:20px}.dialog-head h2{font-size:32px}.catalog-tools{top:96px;padding:15px 16px 10px}.result-count{margin:5px 18px}.catalog-grid{padding:12px 16px 34px;grid-template-columns:1fr}.catalog-card{grid-template-columns:72px 1fr auto}.catalog-card img{width:72px;height:72px}.gallery-filters{top:96px;padding:14px 16px}.gallery-all{padding:0 12px 30px;columns:2 140px}.lightbox figure{max-width:100vw;padding:0 12px}.lightbox-arrow{top:auto;bottom:20px}.lightbox-arrow.prev{left:16px}.lightbox-arrow.next{right:16px}.lightbox-count{left:50%;right:auto;transform:translateX(-50%);bottom:34px}.lightbox-close{top:14px;right:14px}.lightbox figcaption{padding:0 12px;text-align:center}.contact-actions{display:grid}.hero-visual:after{background:linear-gradient(0deg,rgba(35,8,18,.25),transparent 50%)}}
@media(max-width:420px){.hero h1{font-size:62px}.service-grid{grid-template-columns:1fr}.service-card{height:380px}.facts{grid-template-columns:1fr}.facts article{border-right:0}.gallery-all{columns:2 120px}.catalog-card{grid-template-columns:64px 1fr}.catalog-card img{width:64px;height:64px}.catalog-price{grid-column:2;text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
.brand{gap:0}.brand-logo{width:62px;height:64px;object-fit:contain}.brand-footer .brand-logo{width:76px;height:78px}.catalog-dialog[open]{display:flex;flex-direction:column;max-height:min(90dvh,920px)}.catalog-dialog .dialog-head,.catalog-dialog .catalog-tools,.catalog-dialog .result-count{flex:0 0 auto}.catalog-dialog .catalog-tools{position:static}.catalog-dialog .catalog-grid{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}@media(max-width:760px){.brand-logo{width:48px;height:50px}.brand-footer .brand-logo{width:72px;height:74px}.catalog-dialog[open]{height:100dvh;max-height:100dvh}}
.team{overflow:hidden}.team-grid{max-width:1280px;margin:auto;display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.team-card{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff;transition:.25s}.team-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.team-card img{width:100%;height:260px;object-fit:cover;object-position:top}.team-card div{padding:18px}.team-card h3{font:20px/1.25 Prata,serif;margin:0 0 8px}.team-card p{font-size:13px;line-height:1.45;color:var(--muted);margin:0 0 13px}.team-card span{font-size:13px;color:var(--wine);font-weight:700}
@media(max-width:1050px){.team-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.team-grid{display:flex;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.team-card{min-width:72vw;scroll-snap-align:start}.team-card img{height:330px}}
.catalog-tools #serviceFilters{flex-wrap:wrap;overflow:visible}.gallery-home-filters{max-width:1280px;margin:0 auto 24px;flex-wrap:wrap;overflow:visible}.gallery-home-filters button{color:#fff;background:transparent;border-color:rgba(255,255,255,.35)}.gallery-home-filters button.active{color:var(--wine);background:#fff;border-color:#fff}.gallery-feature.compact{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-template-rows:320px}.gallery-feature.compact .gallery-item:first-child,.gallery-feature.compact .gallery-item:nth-child(4){grid-row:auto;grid-column:auto}@media(max-width:760px){.catalog-tools #serviceFilters{gap:7px}.catalog-tools #serviceFilters button{padding:8px 11px;font-size:12px}.gallery-home-filters{gap:7px;margin-bottom:18px}.gallery-home-filters button{padding:8px 12px}.gallery-feature.compact{grid-template-columns:repeat(2,1fr);grid-template-rows:220px}.gallery-feature.compact .gallery-item:first-child{grid-column:auto}.gallery-feature.compact .gallery-item:only-child{grid-column:1/3}}
.mobile-category-toggle{display:none}@media(max-width:760px){.catalog-dialog .catalog-tools{position:relative}.mobile-category-toggle{width:100%;height:44px;margin-top:10px;padding:0 14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;cursor:pointer}.mobile-category-toggle strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.mobile-category-toggle span{flex:none;color:var(--wine);font-size:12px;font-weight:700}.catalog-tools #serviceFilters{display:none}.catalog-tools #serviceFilters.mobile-open{position:absolute;z-index:8;top:calc(100% - 4px);left:16px;right:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:44dvh;padding:10px;overflow-y:auto;overscroll-behavior:contain;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.catalog-tools #serviceFilters.mobile-open button{white-space:normal;text-align:left;line-height:1.25}}
