:root {
    --oz-ivory: #f8f2ec;
    --oz-cream: #fffaf6;
    --oz-soft: #f7ebe4;
    --oz-blush: #eed8cb;
    --oz-rose-gold: #c98e6b;
    --oz-rose-deep: #ad6f4e;
    --oz-gold: #d8b07a;
    --oz-brown: #5a3a2e;
    --oz-muted: #806d64;
    --oz-white: #ffffff;
    --oz-border: rgba(90, 58, 46, 0.12);
    --oz-shadow: 0 18px 50px rgba(87, 52, 38, 0.12);
    --oz-container: 1240px;
    --oz-radius: 22px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    background: var(--oz-cream);
    color: var(--oz-brown);
    font-family: "Manrope", Arial, sans-serif;
    line-height: 1.6;
}
img { max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.oz-container { width: min(calc(100% - 48px), var(--oz-container)); margin-inline: auto; }

.site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: rgba(255, 250, 246, 0.92);
    backdrop-filter: blur(14px);
    border-bottom: 1px solid var(--oz-border);
}
.site-header__inner {
    min-height: 92px;
    display: grid;
    grid-template-columns: 170px 1fr auto;
    align-items: center;
    gap: 34px;
}
.site-logo { display: block; width: 150px; }
.site-logo img { display: block; width: 100%; border-radius: 50%; box-shadow: 0 8px 24px rgba(174, 106, 74, 0.08); }
.site-navigation { justify-self: center; }
.primary-menu {
    display: flex;
    align-items: center;
    gap: 30px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.primary-menu a { position: relative; font-size: 14px; font-weight: 600; }
.primary-menu a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -8px;
    width: 0;
    height: 1px;
    background: var(--oz-rose-gold);
    transition: width .2s ease;
}
.primary-menu a:hover::after { width: 100%; }
.header-cta, .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 48px;
    padding: 0 24px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .04em;
    transition: .2s ease;
}
.header-cta, .button--primary {
    color: var(--oz-white);
    background: linear-gradient(135deg, var(--oz-rose-gold), var(--oz-rose-deep));
    box-shadow: 0 10px 24px rgba(173, 111, 78, .18);
}
.header-cta:hover, .button--primary:hover { transform: translateY(-1px); box-shadow: 0 14px 30px rgba(173,111,78,.24); }
.button--ghost { border: 1px solid rgba(173,111,78,.38); background: rgba(255,255,255,.5); }
.button--ghost:hover { border-color: var(--oz-rose-gold); background: var(--oz-white); }
.menu-toggle { display: none; border: 0; background: transparent; padding: 8px; }
.menu-toggle span:not(.screen-reader-text) { display: block; width: 24px; height: 2px; margin: 5px 0; background: var(--oz-brown); }

.hero {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 86% 20%, rgba(216,176,122,.22), transparent 28%),
        radial-gradient(circle at 12% 88%, rgba(201,142,107,.14), transparent 26%),
        linear-gradient(135deg, #fffaf6 0%, #f8efe9 58%, #f1dfd5 100%);
}
.hero::before, .hero::after {
    content: "";
    position: absolute;
    width: 220px;
    height: 220px;
    border: 1px solid rgba(201,142,107,.18);
    border-radius: 50%;
}
.hero::before { left: -110px; bottom: -95px; }
.hero::after { right: -120px; top: 70px; }
.hero__grid {
    min-height: 700px;
    display: grid;
    grid-template-columns: 1.02fr .98fr;
    align-items: center;
    gap: 70px;
    padding-top: 58px;
    padding-bottom: 58px;
}
.hero__content { max-width: 650px; }
.hero__eyebrow, .section-kicker {
    margin: 0 0 18px;
    color: var(--oz-rose-gold);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .28em;
}
.hero h1 {
    margin: 0;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(58px, 6vw, 86px);
    line-height: .98;
    font-weight: 500;
    letter-spacing: -.025em;
}
.hero__ornament { display: flex; align-items: center; gap: 14px; width: 230px; margin: 28px 0 22px; color: var(--oz-rose-gold); }
.hero__ornament span { flex: 1; height: 1px; background: linear-gradient(90deg, transparent, rgba(201,142,107,.6)); }
.hero__ornament span:last-child { background: linear-gradient(90deg, rgba(201,142,107,.6), transparent); }
.hero__ornament b { font-size: 13px; }
.hero__text { max-width: 560px; margin: 0; color: var(--oz-muted); font-size: 17px; }
.hero__actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 32px; }
.hero__features { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 44px; }
.hero__features div { padding-top: 15px; border-top: 1px solid rgba(173,111,78,.22); }
.hero__features strong, .hero__features span { display: block; }
.hero__features strong { font-size: 12px; text-transform: uppercase; letter-spacing: .06em; }
.hero__features span { margin-top: 5px; color: var(--oz-muted); font-size: 11px; }
.hero__visual { position: relative; }
.hero__logo-card {
    min-height: 520px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 42px;
    border: 1px solid rgba(201,142,107,.18);
    border-radius: 36px 36px 90px 36px;
    background: rgba(255,255,255,.58);
    box-shadow: var(--oz-shadow);
}
.hero__logo-card img { width: min(420px, 90%); border-radius: 50%; box-shadow: 0 24px 70px rgba(107,64,45,.16); }
.hero__logo-card p { margin: 22px 0 0; color: var(--oz-muted); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
.hero__image { display: block; width: 100%; min-height: 540px; object-fit: cover; border-radius: 36px 36px 90px 36px; box-shadow: var(--oz-shadow); }

.home-intro { padding: 90px 0; background: var(--oz-white); }
.home-intro__inner { max-width: 820px; text-align: center; }
.home-intro h2 {
    margin: 0;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(38px, 4vw, 58px);
    line-height: 1.05;
    font-weight: 500;
}
.home-intro p:last-child { color: var(--oz-muted); }

.oz-content { padding-block: 80px; }
.site-footer { padding: 70px 0 26px; background: #5a382d; color: rgba(255,255,255,.82); }
.site-footer__grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 60px; }
.site-footer h2 { margin-top: 0; color: #fff; font-family: "Cormorant Garamond", Georgia, serif; font-weight: 500; }
.site-footer__brand img { width: 150px; border-radius: 50%; background: #fff; }
.footer-menu, .footer-menu .primary-menu { list-style: none; margin: 0; padding: 0; }
.footer-menu li { margin: 7px 0; }
.site-footer__bottom { margin-top: 50px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.12); font-size: 12px; }

@media (max-width: 1000px) {
    .site-header__inner { grid-template-columns: 130px 1fr auto; }
    .site-logo { width: 120px; }
    .site-navigation {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        display: none;
        padding: 20px 24px 26px;
        background: var(--oz-cream);
        border-bottom: 1px solid var(--oz-border);
    }
    .site-navigation.is-open { display: block; }
    .primary-menu { flex-direction: column; align-items: flex-start; gap: 16px; }
    .menu-toggle { display: block; justify-self: end; }
    .header-cta { display: none; }
    .hero__grid { grid-template-columns: 1fr; min-height: auto; gap: 44px; padding-top: 70px; padding-bottom: 70px; }
    .hero__content { max-width: 760px; }
    .hero__visual { max-width: 720px; width: 100%; }
    .site-footer__grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 680px) {
    .oz-container { width: min(calc(100% - 30px), var(--oz-container)); }
    .site-header__inner { min-height: 78px; grid-template-columns: 92px 1fr; }
    .site-logo { width: 86px; }
    .hero__grid { padding-top: 52px; }
    .hero h1 { font-size: clamp(46px, 14vw, 66px); }
    .hero__features { grid-template-columns: 1fr; }
    .hero__logo-card { min-height: 360px; padding: 24px; border-radius: 24px 24px 58px 24px; }
    .hero__actions { flex-direction: column; align-items: stretch; }
    .button { width: 100%; }
    .site-footer__grid { grid-template-columns: 1fr; gap: 30px; }
}
