:root{
            --wine:#6b2437;
            --wine-dark:#4c1726;
            --rose:#d98c97;
            --rose-2:#edb7bd;
            --rose-soft:#f6dddf;
            --blush:#fbefed;
            --cream:#fffaf6;
            --paper:#fffdfb;
            --ink:#36262a;
            --muted:#76656a;
            --line:rgba(96,51,61,.14);
            --shadow:0 18px 60px rgba(79,42,51,.10);
            --radius:28px;
            --serif:"Cormorant Garamond",serif;
            --sans:"Montserrat",sans-serif;
            --script:"Caveat",cursive;
            --small:"Old Standard TT",serif;
            --max:1440px;
        }

        *{box-sizing:border-box}
        html{
            scroll-behavior:smooth;
            scrollbar-width:thin;
            scrollbar-color:#d98c97 #f9eaea;
        }

        html::-webkit-scrollbar{
            width:8px;
        }

        html::-webkit-scrollbar-track{
            background:#f9eaea;
            border-radius:999px;
        }

        html::-webkit-scrollbar-thumb{
            background:#d98c97;
            border:2px solid #f9eaea;
            border-radius:999px;
        }

        html::-webkit-scrollbar-thumb:hover{
            background:#c86f82;
        }
        body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;overflow-x:hidden}
        h1,h2,h3,h4,h5,h6,.display,.section-title{font-family:var(--serif)}
        p{font-family:var(--sans)}
        small,label{font-family:var(--small)}
        input,textarea,select,button{font-family:var(--sans)}
        body.menu-open{overflow:hidden}
        img{display:block;width:100%;height:100%;object-fit:cover}
        a{color:inherit;text-decoration:none}
        button,input,textarea,select{font:inherit}
        button{cursor:pointer}
        .container{width:min(calc(100% - 64px),var(--max));margin-inline:auto}
        .section{padding:96px 0}
        .section--soft{background:linear-gradient(180deg,#fff 0%,#fff7f3 100%)}
        .eyebrow{margin:0 0 14px;text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:700;color:var(--wine)}
        .serif{font-family:var(--serif)}
        .accent{color:var(--rose);font-family:var(--script);font-style:normal}
        .display{font-family:var(--serif);font-size:clamp(48px,5.3vw,88px);line-height:.9;letter-spacing:-.045em;font-weight:600;margin:0}
        .section-title{font-family:var(--serif);font-size:clamp(38px,4vw,64px);line-height:.98;letter-spacing:-.035em;font-weight:600;margin:0}
        .lead{font-size:18px;color:var(--muted);max-width:680px;margin:22px 0 0}
        .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:14px 22px;font-size:13px;font-weight:700;transition:.25s ease;border:1px solid transparent}
        .btn:hover{transform:translateY(-2px)}
        .btn--primary{background:var(--wine);color:white;box-shadow:0 12px 26px rgba(107,36,55,.18)}
        .btn--ghost{border-color:rgba(107,36,55,.32);color:var(--wine);background:rgba(255,255,255,.45)}
        .icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(107,36,55,.18);color:var(--rose);background:#fff9f7}
        .icon svg{width:20px;height:20px}
        
        [data-reveal]{opacity:1;--pmf-reveal-from:translateY(20px);transform:none;transition:opacity .65s ease,transform .65s ease}
        [data-reveal].visible{opacity:1;transform:none}
        @media (max-width:900px){
            .container{width:min(calc(100% - 36px),var(--max))}
            .section{padding:72px 0}
        }
        @media (max-width:620px){
            .display{font-size:clamp(48px,15vw,70px)}
        }
