@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600&display=swap');

:root{--ink:#211b1b;--muted:#6e6460;--wine:#7b2638;--wine-dark:#551827;--gold:#c49a55;--cream:#f8f1e7;--paper:#fffdf9;--line:#ded4c7;--white:#fff;--shadow:0 18px 50px rgba(42,25,24,.12);--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:'DM Sans',sans-serif;line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(1160px,calc(100% - 40px));margin-inline:auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:16px;top:16px;z-index:100;background:#fff;padding:10px 16px}.eyebrow{display:block;color:var(--wine);font-size:.77rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 24px;border:1px solid var(--wine);border-radius:999px;background:var(--wine);color:#fff;font-weight:700;cursor:pointer;transition:.2s ease}.button:hover{background:var(--wine-dark);border-color:var(--wine-dark);transform:translateY(-1px)}.button--light{background:#fff;color:var(--wine);border-color:#fff}.button--outline{background:transparent;color:var(--ink);border-color:var(--line)}.button--outline:hover{color:var(--wine);background:#fff;border-color:var(--wine)}.button--wide{width:100%}.text-link{color:var(--wine);font-weight:700;border-bottom:1px solid currentColor}

.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,249,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(222,212,199,.7)}.nav{height:84px;display:flex;align-items:center;justify-content:space-between}.brand img{width:252px;height:auto}.nav__links{display:flex;align-items:center;gap:30px}.nav__links>a:not(.button){font-size:.92rem;font-weight:600}.nav__links>a:not(.button):hover{color:var(--wine)}.nav-toggle{display:none;border:0;background:transparent;padding:8px}.nav-toggle span{display:block;width:26px;height:2px;margin:5px;background:var(--ink)}

.hero{position:relative;min-height:740px;display:grid;align-items:center;color:#fff;background:#171719 url('hero-viscount-booth.webp') center/cover no-repeat}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,13,15,.9) 0%,rgba(15,13,15,.68) 36%,rgba(15,13,15,.16) 68%,rgba(15,13,15,.05))}.hero__content{position:relative;max-width:670px;padding:100px 0}.hero .eyebrow{color:#e0bd81}.hero h1,.page-hero h1{font:600 clamp(3.3rem,7vw,6.2rem)/.98 'Playfair Display',serif;letter-spacing:-.04em;margin:0 0 24px}.hero p{max-width:575px;font-size:1.17rem;color:rgba(255,255,255,.85);margin:0 0 36px}.hero__actions{display:flex;gap:12px;flex-wrap:wrap}.hero__note{display:flex;gap:28px;margin-top:50px;padding-top:25px;border-top:1px solid rgba(255,255,255,.25);font-size:.85rem;color:rgba(255,255,255,.75)}.hero__note strong{display:block;color:#fff;font-size:1.05rem}

section{padding:105px 0}.intro{display:grid;grid-template-columns:.72fr 1.28fr;gap:90px;align-items:start}.intro h2,.section-heading h2,.split h2,.cta h2{font:600 clamp(2.25rem,4vw,4rem)/1.08 'Playfair Display',serif;letter-spacing:-.025em;margin:0}.intro__body{font-size:1.12rem;color:var(--muted)}.intro__body p:first-child{font-size:1.34rem;color:var(--ink);margin-top:0}.proof{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:var(--radius);margin-top:64px;background:#fff}.proof__item{padding:27px;text-align:center;border-right:1px solid var(--line)}.proof__item:last-child{border:0}.proof__item strong{display:block;font:600 1.55rem 'Playfair Display',serif;color:var(--wine)}.proof__item span{font-size:.84rem;color:var(--muted)}

.services{background:var(--cream)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:44px}.section-heading p{max-width:520px;color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px;box-shadow:0 4px 0 transparent}.service-card--featured{border-color:var(--gold);box-shadow:var(--shadow);transform:translateY(-9px)}.badge{position:absolute;right:22px;top:0;transform:translateY(-50%);padding:6px 12px;border-radius:999px;background:var(--gold);color:#241b14;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.service-card h3{font:600 2rem 'Playfair Display',serif;margin:3px 0 7px}.service-card__tagline{min-height:52px;color:var(--muted);font-size:.93rem}.price{font:600 2.1rem 'Playfair Display',serif;color:var(--wine);margin:19px 0}.price small{font:400 .78rem 'DM Sans',sans-serif;color:var(--muted)}.feature-list{list-style:none;padding:0;margin:0 0 28px;flex:1}.feature-list li{position:relative;padding:7px 0 7px 24px;font-size:.89rem;border-bottom:1px solid #eee8df}.feature-list li:before{content:'✓';position:absolute;left:0;color:var(--wine);font-weight:700}

.experience{overflow:hidden}.split{display:grid;grid-template-columns:1fr 1fr;gap:88px;align-items:center}.image-frame{position:relative;min-height:530px;border-radius:var(--radius);overflow:hidden;background:url('digital-window.webp') 50% center/cover}.image-frame:after{content:'Four screens. One limitless view.';position:absolute;right:24px;bottom:24px;padding:17px 22px;background:var(--cream);color:var(--wine);font:600 1rem 'Playfair Display',serif;border-radius:999px}.split__copy p{color:var(--muted)}.step{display:grid;grid-template-columns:42px 1fr;gap:15px;padding:20px 0;border-top:1px solid var(--line)}.step__number{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--cream);color:var(--wine);font-weight:700}.step strong{display:block}.step p{margin:2px 0 0;font-size:.9rem}

.use-cases{background:#231b1d;color:#fff}.use-cases .section-heading p{color:#bfb5b2}.case-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.15)}.case{min-height:235px;padding:30px;background:#231b1d;display:flex;flex-direction:column;justify-content:flex-end}.case span{color:var(--gold);font-size:2rem}.case h3{font:600 1.4rem 'Playfair Display',serif;margin:12px 0 5px}.case p{color:#bfb5b2;font-size:.88rem;margin:0}.quote{padding:80px 0;text-align:center}.quote blockquote{max-width:860px;margin:0 auto;font:500 clamp(1.8rem,4vw,3.4rem)/1.2 'Playfair Display',serif}.quote cite{display:block;margin-top:22px;color:var(--muted);font-style:normal}.cta{padding:0 0 105px}.cta__inner{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:58px;border-radius:var(--radius);color:#fff;background:var(--wine)}.cta h2{max-width:640px}.cta .eyebrow{color:#e7c993}

.page-hero{padding:90px 0 65px;background:var(--cream)}.page-hero h1{font-size:clamp(2.8rem,6vw,5rem);color:var(--ink);max-width:850px}.page-hero p{max-width:670px;color:var(--muted);font-size:1.1rem}.booking-layout{display:grid;grid-template-columns:1fr 370px;gap:50px;align-items:start;padding:70px 0 110px}.form-card,.summary-card,.login-card,.admin-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px}.form-card h2,.summary-card h2{font:600 1.8rem 'Playfair Display',serif;margin-top:0}.form-section{padding:28px 0;border-top:1px solid var(--line)}.form-section:first-of-type{border:0;padding-top:6px}.form-section h3{font-size:.77rem;text-transform:uppercase;letter-spacing:.14em;color:var(--wine)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field--full{grid-column:1/-1}label{display:block;font-size:.83rem;font-weight:700;margin-bottom:7px}input,select,textarea{width:100%;min-height:48px;border:1px solid #cfc5bb;border-radius:9px;background:#fff;padding:11px 13px;color:var(--ink)}textarea{min-height:115px;resize:vertical}input:focus,select:focus,textarea:focus{outline:3px solid rgba(123,38,56,.12);border-color:var(--wine)}.summary-card{position:sticky;top:108px;background:var(--cream)}.summary-row{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--line)}.summary-total{font-size:1.25rem;font-weight:700;color:var(--wine)}.fine-print{font-size:.76rem;color:var(--muted);margin:14px 0}.alert{padding:14px 17px;border-radius:10px;margin-bottom:20px;background:#fde8e8;color:#842029}.success{max-width:720px;margin:90px auto;text-align:center}.success__mark{display:grid;place-items:center;width:76px;height:76px;margin:0 auto 24px;border-radius:50%;background:#e8f5ed;color:#216e3b;font-size:2rem}.success h1{font:600 3rem 'Playfair Display',serif}.success__ref{display:inline-block;padding:8px 14px;background:var(--cream);border-radius:999px;color:var(--wine);font-weight:700}.hidden{display:none!important}

.faq{background:var(--cream)}.faq-list{max-width:850px;margin:0 auto}.faq-list details{border-top:1px solid var(--line);padding:20px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{position:relative;padding-right:40px;font-weight:700;font-size:1.05rem;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:8px;color:var(--wine);font-size:1.45rem;line-height:1}.faq-list details[open] summary:after{content:'–'}.faq-list p{color:var(--muted);max-width:760px;margin:12px 0 0}

.site-footer{padding:65px 0 25px;background:#181315;color:#d6ccca}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px}.footer-logo{filter:brightness(0) invert(1);width:230px;margin-bottom:17px}.site-footer h3{color:#fff;font-size:.82rem;text-transform:uppercase;letter-spacing:.12em}.site-footer a{display:block;margin:8px 0;color:#d6ccca}.site-footer a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;margin-top:45px;padding-top:22px;border-top:1px solid #382e31;font-size:.78rem;color:#8f8385}

.admin-shell{padding:50px 0 100px}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.admin-header h1{font:600 2.7rem 'Playfair Display',serif;margin:0}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:25px}.stat{padding:23px;background:var(--cream);border-radius:14px}.stat strong{display:block;font-size:1.8rem;color:var(--wine)}table{width:100%;border-collapse:collapse;font-size:.86rem}th,td{text-align:left;padding:13px;border-bottom:1px solid var(--line)}th{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.status{display:inline-block;padding:4px 9px;border-radius:999px;background:#eee;color:#555}.status--paid{background:#e1f4e7;color:#17622e}.login-card{max-width:460px;margin:80px auto}.login-card h1{font:600 2.2rem 'Playfair Display',serif}.login-card .field{margin-bottom:17px}

@media(max-width:900px){.nav__links{position:absolute;left:0;right:0;top:84px;display:none;flex-direction:column;align-items:stretch;padding:24px 20px;background:var(--paper);box-shadow:var(--shadow)}.nav__links.is-open{display:flex}.nav-toggle{display:block}.hero{min-height:650px;background-position:62% center}.hero:before{background:rgba(16,13,15,.63)}.intro,.split,.booking-layout{grid-template-columns:1fr;gap:45px}.service-grid{grid-template-columns:1fr}.service-card--featured{transform:none}.case-grid{grid-template-columns:1fr 1fr}.proof{grid-template-columns:1fr 1fr}.proof__item:nth-child(2){border-right:0}.proof__item:nth-child(-n+2){border-bottom:1px solid var(--line)}.summary-card{position:static}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.stats{grid-template-columns:1fr}}
@media(max-width:600px){.container{width:min(100% - 28px,1160px)}.brand img{width:210px}.hero{min-height:620px}.hero__content{padding:72px 0}.hero h1{font-size:3.2rem}.hero__note{gap:16px}.hero__note span:last-child{display:none}section{padding:75px 0}.section-heading{display:block}.section-heading p{margin-top:18px}.proof,.case-grid{grid-template-columns:1fr}.proof__item{border-right:0;border-bottom:1px solid var(--line)!important}.proof__item:last-child{border:0!important}.cta__inner{display:block;padding:38px 28px}.cta__inner .button{margin-top:25px}.form-grid{grid-template-columns:1fr}.field--full{grid-column:auto}.form-card,.summary-card{padding:24px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:block}.page-hero{padding:60px 0 40px}.image-frame{min-height:400px}table{display:block;overflow-x:auto}}
