:root{--ink:#201d1a;--cream:#f4f0e9;--rose:#c6807c;--wine:#723e43;--line:rgba(32,29,26,.18);--white:#fffaf4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:Inter,Arial,sans-serif}.header{position:absolute;z-index:2;top:0;left:0;display:flex;width:100%;align-items:center;justify-content:space-between;padding:28px 5vw;border-bottom:1px solid rgba(255,255,255,.28)}.brand{color:#fff;text-decoration:none;font:700 24px Georgia,serif;letter-spacing:.04em}.brand span{display:block;font:9px Arial,sans-serif;letter-spacing:.32em;text-transform:uppercase}.header nav{display:flex;gap:30px}.header nav a{color:#fff;text-decoration:none;font-size:12px;letter-spacing:.08em}.hero{display:grid;min-height:700px;grid-template-columns:1.12fr .88fr;background:var(--wine)}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:130px 8vw 90px;color:#fff}.eyebrow{margin:0 0 22px;font-size:10px;font-weight:700;letter-spacing:.24em;text-transform:uppercase}.hero h1{margin:0;font:400 clamp(48px,6vw,88px)/.98 Georgia,serif;letter-spacing:-.04em}.hero h1 em{color:#eab4ad;font-weight:400}.hero-copy>p:not(.eyebrow){max-width:510px;margin:35px 0;color:#e6d4d1;font-size:16px;line-height:1.65}.button{display:inline-flex;width:max-content;min-height:50px;align-items:center;justify-content:center;padding:0 26px;color:#fff;background:var(--rose);border:0;border-radius:999px;text-decoration:none;font-weight:700;cursor:pointer}.button:hover{background:#b56e6a}.hero-art{position:relative;overflow:hidden;background:linear-gradient(155deg,#d7a39d,#b66e6b)}.hero-art:before,.hero-art:after{position:absolute;content:"";border:1px solid rgba(255,255,255,.55);border-radius:50%}.hero-art:before{width:500px;height:500px;right:-110px;top:100px}.hero-art:after{width:310px;height:310px;right:-20px;top:195px}.hero-art span{position:absolute;width:90px;height:310px;left:18%;top:25%;background:#f3d2c2;border-radius:50px 50px 35px 35px;transform:rotate(18deg);box-shadow:inset -12px -10px 0 rgba(114,62,67,.08)}.hero-art b{position:absolute;right:8%;bottom:7%;color:rgba(255,255,255,.35);font:120px Georgia,serif}.hero-art i{position:absolute;left:8%;bottom:9%;color:#fff;font:italic 42px/1 Georgia,serif}.services{padding:110px 8vw}.section-title{display:flex;align-items:flex-end;justify-content:space-between}.section-title p{font-size:11px;text-transform:uppercase;letter-spacing:.2em}.section-title h2{margin:0;font:400 clamp(38px,5vw,68px)/1.05 Georgia,serif}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:60px;background:var(--line)}.service-card{min-height:240px;padding:32px;background:var(--cream)}.service-card small{color:var(--rose);font-size:11px;letter-spacing:.16em;text-transform:uppercase}.service-card h3{margin:25px 0 12px;font:400 29px Georgia,serif}.service-card p{min-height:48px;color:#716964;font-size:13px;line-height:1.55}.service-card b{display:block;margin-top:24px;font-size:17px}.booking{display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;padding:110px 8vw;color:#fff;background:#24211e}.booking h2{margin:0;font:400 clamp(42px,5vw,70px)/1 Georgia,serif}.booking-intro>p:not(.eyebrow){max-width:420px;color:#bdb4ac;line-height:1.65}.booking ol{margin:45px 0 0;padding:0;list-style:none;counter-reset:steps}.booking li{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.14);counter-increment:steps}.booking li:before{content:"0" counter(steps);margin-right:18px;color:var(--rose);font-size:11px}form{min-width:0}.fields{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}label,legend{font-size:11px;font-weight:700;letter-spacing:.05em}label span{color:#968f89;font-weight:400}input,select,textarea{width:100%;margin-top:8px;padding:13px;color:#fff;background:#302c28;border:1px solid #4b4540;border-radius:7px;font:inherit}select{height:46px}textarea{resize:vertical}.contact{margin-top:22px}fieldset{margin:24px 0 0;padding:0;border:0}.slots{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;min-height:44px}.slots p{margin:8px 0;color:#aaa19a;font-size:12px}.slot{padding:10px 14px;color:#fff;background:transparent;border:1px solid #5d554e;border-radius:999px;cursor:pointer}.slot.active{color:#201d1a;background:#efc2bc;border-color:#efc2bc}.comment{display:block;margin-top:18px}.consent{display:flex;gap:9px;align-items:flex-start;margin-top:17px;color:#bdb4ac;font-weight:400}.consent input{width:auto;margin-top:1px}.submit{margin-top:22px}.submit:disabled{opacity:.38;cursor:not-allowed}.form-status{min-height:20px;color:#e9b2ab;font-size:13px}.contacts{display:grid;grid-template-columns:1fr 1fr 1fr;gap:50px;padding:90px 8vw}.contacts h2{margin:0;font:58px Georgia,serif}.contacts address{display:flex;flex-direction:column;gap:10px;font-style:normal}.contacts address a{color:var(--wine)}.contacts>p{margin:0;color:#766e67;font-size:12px;line-height:1.5}footer{display:flex;justify-content:space-between;padding:24px 8vw;color:#978d84;background:#201d1a;font-size:11px}footer a{color:#dbc0b5}@media(max-width:850px){.header nav{display:none}.hero{grid-template-columns:1fr}.hero-art{display:none}.hero-copy{padding:150px 7vw 90px}.service-grid{grid-template-columns:1fr}.booking{grid-template-columns:1fr}.fields{grid-template-columns:1fr}.contacts{grid-template-columns:1fr}footer{gap:12px;flex-direction:column}}
