:root{--color-bg:#f7f2ea;--color-surface:#fff;--color-text:#172033;--color-muted:#667085;--color-primary:#244b5a;--color-accent:#d8aa3b;--color-soft-blue:#dbe7ea;--color-warm:#c9a875;--shadow-soft:0 24px 60px #1720331f;--radius-large:28px;--radius-medium:18px;--container-width:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--color-text);background:var(--color-bg);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}.section{padding:96px 24px}.section__inner{width:min(100%, var(--container-width));margin:0 auto}.eyebrow{color:var(--color-primary);letter-spacing:.16em;text-transform:uppercase;margin:0 0 12px;font-size:.78rem;font-weight:800}.image-placeholder{border-radius:var(--radius-large);min-height:320px;box-shadow:var(--shadow-soft);text-align:center;color:var(--color-primary);background:radial-gradient(circle at 0 0,#d8a93b38,#0000 34%),linear-gradient(135deg,#dbe7eae6,#ffffffb8);border:1px solid #244b5a29;place-items:center;padding:32px;display:grid}.image-placeholder__mark{width:54px;height:54px;color:var(--color-accent);background:#ffffffb8;border-radius:999px;place-items:center;margin:0 auto 14px;font-size:1.4rem;display:grid}.image-placeholder p{margin:0;font-weight:800}.image-placeholder--small{border-radius:var(--radius-medium);min-height:220px;box-shadow:none}@media (width<=760px){.section{padding:72px 18px}.image-placeholder{min-height:260px}}.button{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-weight:800;line-height:1;transition:transform .18s,background-color .18s,border-color .18s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button--primary{background:var(--color-primary);color:#fff}.button--secondary{color:var(--color-primary);background:#ffffff9e;border-color:#244b5a38}.site-header{z-index:50;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f7f2eae0;border-bottom:1px solid #244b5a1f;position:sticky;top:0}.site-header__inner{width:min(100%, var(--container-width));justify-content:space-between;align-items:center;gap:24px;min-height:78px;margin:0 auto;padding:0 24px;display:flex}.site-header__brand{gap:2px;display:grid}.site-header__brand-main{letter-spacing:.02em;font-size:1.1rem;font-weight:900}.site-header__brand-sub{color:var(--color-muted);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:700}.site-header__nav{color:var(--color-muted);align-items:center;gap:22px;font-size:.94rem;font-weight:700;display:flex}.site-header__nav a:hover{color:var(--color-primary)}.site-header__actions{align-items:center;gap:12px;display:flex}.language-toggle{background:#ffffff9e;border:1px solid #244b5a24;border-radius:999px;padding:4px;display:inline-flex}.language-toggle button{min-width:38px;height:32px;color:var(--color-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;font-size:.78rem;font-weight:900}.language-toggle button.is-active{background:var(--color-primary);color:#fff}.menu-toggle{cursor:pointer;background:#ffffffb8;border:1px solid #244b5a29;border-radius:999px;width:44px;height:44px;display:none}.menu-toggle span{background:var(--color-primary);border-radius:999px;width:18px;height:2px;margin:4px auto;display:block}.mobile-menu{display:none}@media (width<=920px){.site-header__nav,.site-header__actions>.button,.language-toggle{display:none}.menu-toggle{display:block}.mobile-menu{background:#f7f2eaf5;border-top:1px solid #244b5a1a;gap:14px;padding:18px 24px 24px;display:grid}.mobile-menu a{font-weight:800}.mobile-menu__languages{gap:10px;display:flex}.mobile-menu__languages button{min-height:40px;color:var(--color-primary);cursor:pointer;background:#ffffffb8;border:1px solid #244b5a29;border-radius:999px;padding:0 14px;font-weight:800}.mobile-menu__languages button.is-active{background:var(--color-primary);color:#fff}}.hero{width:min(100%, var(--container-width));grid-template-columns:minmax(0,1fr) minmax(320px,.92fr);align-items:center;gap:56px;min-height:calc(100vh - 78px);margin:0 auto;padding:88px 24px 96px;display:grid}.hero__content{max-width:680px}.hero h1{letter-spacing:-.075em;margin:0;font-size:clamp(3rem,7vw,6.4rem);line-height:.95}.hero__text{max-width:560px;color:var(--color-muted);margin:24px 0 0;font-size:1.16rem;line-height:1.7}.hero__actions{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}@media (width<=920px){.hero{grid-template-columns:1fr;min-height:auto;padding-top:72px}.hero h1{font-size:clamp(2.6rem,12vw,4.6rem)}}@media (width<=560px){.hero{gap:36px;padding:56px 18px 72px}.hero__actions,.hero__actions .button{width:100%}}.image-frame{border-radius:var(--radius-large);background:var(--color-soft-blue);min-height:320px;box-shadow:var(--shadow-soft);border:1px solid #244b5a29;overflow:hidden}.image-frame img{object-fit:cover;object-position:center;width:100%;height:100%;min-height:320px}.image-frame--small{border-radius:var(--radius-medium);min-height:220px;box-shadow:none}.image-frame--small img{aspect-ratio:4/3;min-height:220px}.about-section{background:linear-gradient(#ffffff5c,#f7f2ea00)}.about-section__grid{grid-template-columns:minmax(300px,.9fr) minmax(0,1fr);align-items:center;gap:64px;display:grid}.about-section__content{max-width:620px}.about-section__content h2{letter-spacing:-.06em;margin:0;font-size:clamp(2.2rem,5vw,4.2rem);line-height:1}.about-section__content p:not(.eyebrow){color:var(--color-muted);margin:22px 0 0;font-size:1.08rem;line-height:1.75}@media (width<=920px){.about-section__grid{grid-template-columns:1fr;gap:38px}}.visit-section{background:var(--color-primary);color:#fff}.visit-section .eyebrow{color:var(--color-accent)}.visit-section__grid{grid-template-columns:minmax(0,.95fr) minmax(280px,.7fr) minmax(300px,.85fr);align-items:stretch;gap:28px;display:grid}.visit-section__content h2{letter-spacing:-.06em;max-width:560px;margin:0;font-size:clamp(2.2rem,5vw,4.2rem);line-height:1}.visit-card,.visit-panel{border-radius:var(--radius-large);background:#ffffff14;border:1px solid #ffffff29;padding:28px}.visit-card{gap:22px;margin-top:34px;display:grid}.visit-card__label{color:#ffffffad;letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px;font-size:.76rem;font-weight:900;display:block}.visit-card p{margin:0;line-height:1.6}.opening-hours h3{margin:0 0 18px;font-size:1.4rem}.opening-hours ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.opening-hours li{border-bottom:1px solid #ffffff24;justify-content:space-between;gap:18px;padding-bottom:12px;display:flex}.opening-hours span{color:#ffffffbd}.qr-card{border-top:1px solid #ffffff24;margin-top:28px;padding-top:24px}.qr-card__placeholder{width:96px;height:96px;color:var(--color-primary);background:#fff;border-radius:18px;place-items:center;font-weight:900;display:grid}.qr-card p{color:#ffffffbd;margin:12px 0 0;font-weight:800}@media (width<=1040px){.visit-section__grid{grid-template-columns:1fr 1fr}.visit-section__media{grid-column:1/-1}}@media (width<=720px){.visit-section__grid{grid-template-columns:1fr}}.qr-card{text-align:center;justify-items:center;display:grid}.qr-card__image{object-fit:cover;object-position:center;background:#fff;border:6px solid #fff;border-radius:18px;width:178px;height:178px;display:block}.qr-card p{color:#ffffffdb;text-align:center;margin:14px 0 0;font-weight:900}@media (width<=920px){.reviews-grid{grid-template-columns:1fr}.review-card{min-height:auto}}.reviews-section{background:radial-gradient(circle at top right, #d8a93b29, transparent 34%), var(--color-bg)}.reviews-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.review-card{border-radius:var(--radius-large);background:#ffffffb8;border:1px solid #244b5a1f;flex-direction:column;justify-content:space-between;min-height:250px;padding:28px;display:flex;box-shadow:0 16px 42px #17203314}.review-card__stars{color:var(--color-accent);letter-spacing:.08em;font-size:1.05rem}.review-card p{color:var(--color-text);margin:24px 0;font-size:1.05rem;line-height:1.7}.review-card span{color:var(--color-muted);font-weight:800}.reviews-section__actions{margin-top:34px}@media (width<=920px){.reviews-grid{grid-template-columns:1fr}.review-card{min-height:auto}}.contact-section{background:radial-gradient(circle at bottom left, #d8a93b24, transparent 34%), var(--color-bg)}.contact-section__inner{grid-template-columns:minmax(0,.95fr) minmax(320px,.75fr);align-items:center;gap:48px;display:grid}.contact-section h2{letter-spacing:-.06em;margin:0;font-size:clamp(2.2rem,5vw,4.2rem);line-height:1}.contact-section p{max-width:560px;color:var(--color-muted);font-size:1.08rem;line-height:1.7}.contact-card{border-radius:var(--radius-large);box-shadow:var(--shadow-soft);background:#ffffffbd;border:1px solid #244b5a1f;gap:22px;padding:30px;display:grid}.contact-card__label{color:var(--color-primary);letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px;font-size:.76rem;font-weight:900;display:block}.contact-card p{color:var(--color-text);margin:0;font-size:1rem}.contact-card a:not(.button){color:var(--color-primary);font-weight:800}@media (width<=860px){.contact-section__inner{grid-template-columns:1fr}}.qr-card__link{color:#fff;border:1px solid #ffffff38;border-radius:999px;justify-content:center;margin-top:14px;padding:10px 16px;font-size:.9rem;font-weight:900;transition:background-color .18s,transform .18s;display:inline-flex}.qr-card__link:hover{background:#ffffff1a;transform:translateY(-1px)}.contact-card__actions{flex-wrap:wrap;gap:12px;display:flex}.contact-card__actions .button{flex:1;min-width:150px}.site-footer{background:var(--color-text);color:#fff;padding:56px 24px 24px}.site-footer__inner{width:min(100%, var(--container-width));grid-template-columns:minmax(320px,1.2fr) minmax(140px,.35fr) minmax(360px,.75fr);align-items:start;gap:56px;margin:0 auto;display:grid}.site-footer h2{margin:0;font-size:1.5rem}.site-footer p{color:#ffffffb8;margin:10px 0 0;line-height:1.6}.site-footer__links,.site-footer__contact{gap:10px;display:grid}.site-footer__links a{color:#ffffffd1;font-weight:800}.site-footer__links a:hover{color:#fff}.site-footer__contact p{margin:0}.site-footer__bottom{width:min(100%, var(--container-width));border-top:1px solid #ffffff1f;margin:36px auto 0;padding-top:22px}.site-footer__bottom p{margin:0;font-size:.9rem}@media (width<=860px){.site-footer__inner{grid-template-columns:1fr}}
