@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Jost:wght@300;400;500;600&family=Pinyon+Script&display=swap');

:root{
--gold-50:#fbf6ee;--gold-100:#f5e9d6;--gold-200:#ecd7b5;--gold-300:#e3c596;--gold-400:#d4ac78;--gold-500:#c9a063;--gold-600:#b8874a;--gold-700:#9c6f3a;--gold-800:#7d582e;
--neutral-0:#ffffff;--neutral-50:#faf7f2;--neutral-100:#f2ede4;--neutral-200:#e5ddd0;--neutral-300:#d2c6b4;--neutral-400:#a99c8a;--neutral-500:#8a7d6c;--neutral-600:#6b6055;--neutral-700:#4a423a;--neutral-800:#382f27;--neutral-900:#211a14;
--blush-100:#f7e6e0;--blush-400:#d9a89a;
--success-500:#6b8e5a;--error-500:#b85450;
--color-bg:var(--neutral-50);--color-bg-alt:var(--gold-50);--color-surface:var(--neutral-0);--color-surface-sunken:var(--neutral-100);
--color-text:var(--neutral-900);--color-text-muted:var(--neutral-600);--color-text-inverse:var(--neutral-0);
--color-accent:var(--gold-500);--color-accent-strong:var(--gold-600);--color-accent-soft:var(--gold-100);
--color-border:var(--neutral-200);--color-border-strong:var(--neutral-300);
--color-success:var(--success-500);--color-error:var(--error-500);
--color-link:var(--gold-700);--color-link-hover:var(--gold-800);
--font-script:'Pinyon Script',cursive;--font-display:'Playfair Display',Georgia,serif;--font-sans:'Jost',-apple-system,sans-serif;
--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.125rem;--text-lg:1.375rem;--text-xl:1.75rem;--text-2xl:2.25rem;--text-3xl:2.75rem;--text-4xl:3.5rem;--text-5xl:4.5rem;--text-6xl:5.75rem;
--leading-tight:1.1;--leading-snug:1.3;--leading-normal:1.6;--leading-relaxed:1.8;
--tracking-tight:-0.01em;--tracking-normal:0;--tracking-wide:.12em;--tracking-wider:.22em;
--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;
--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-xl:32px;--radius-full:999px;
--shadow-sm:0 1px 3px rgba(56,47,39,.08);--shadow-md:0 8px 24px rgba(56,47,39,.10);--shadow-lg:0 20px 48px rgba(56,47,39,.14);
--container-max:1180px;
--ease-standard:cubic-bezier(.4,0,.2,1);--duration-fast:150ms;--duration-normal:250ms;
}

*{box-sizing:border-box}
body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans)}
a{color:var(--color-link)}
a:hover{color:var(--color-link-hover)}
img{max-width:100%}
h1,h2,h3{margin:0;font-family:var(--font-display)}
.container{max-width:var(--container-max);margin:0 auto}

/* Button */
.btn{font-family:var(--font-sans);font-weight:500;letter-spacing:var(--tracking-wide);text-transform:uppercase;border-radius:var(--radius-full);cursor:pointer;padding:14px 28px;font-size:var(--text-base);background:var(--color-accent);color:var(--color-text);border:1px solid var(--color-accent);transition:transform var(--duration-fast) var(--ease-standard),background var(--duration-fast) var(--ease-standard)}
.btn:hover{transform:translateY(-1px)}
.btn--lg{padding:18px 36px;font-size:var(--text-md)}
.btn--md{padding:14px 28px;font-size:var(--text-base)}
.btn--dark{background:var(--color-text);color:var(--color-text-inverse);border-color:var(--color-text)}

/* Badge */
.badge{display:inline-flex;width:fit-content;align-self:flex-start;align-items:center;padding:6px 14px;border-radius:var(--radius-full);font-family:var(--font-sans);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;background:var(--color-accent-soft);color:var(--gold-700)}

/* Nav */
.nav{display:flex;justify-content:space-between;align-items:center;padding:12px 64px;position:sticky;top:0;background:var(--color-surface);z-index:10;border-bottom:1px solid var(--color-border);gap:24px;flex-wrap:wrap}
.nav__logo{height:84px;position:relative;z-index:11}
.nav__contact{display:flex;align-items:center;gap:20px}
.contact-item{display:flex;flex-direction:column;align-items:center;gap:2px}
.contact-item__label{font-family:var(--font-sans);font-size:10px;letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--gold-700)}
.contact-item__value{font-family:var(--font-display);font-size:var(--text-md);color:var(--color-text);text-decoration:none}
.divider-v{width:1px;height:36px;background:var(--color-border-strong)}

/* Hero */
.hero{display:flex;align-items:center;gap:48px;padding:96px 64px 64px;max-width:1180px;margin:0 auto;flex-wrap:wrap}
.hero__copy{flex:1 1 400px;display:flex;flex-direction:column;gap:24px}
.hero__title{font-size:var(--text-5xl);line-height:var(--leading-tight)}
.hero__sub{font-size:var(--text-md);color:var(--color-text-muted);line-height:var(--leading-relaxed);max-width:480px;margin:0}
.hero__media{flex:1 1 540px;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ba{display:flex;flex-direction:column;gap:10px}
.ba img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:top;border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}
.ba--after img{box-shadow:var(--shadow-lg)}
.ba__label{text-align:center;font-size:var(--text-xs);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-text-muted)}
.ba--after .ba__label{color:var(--gold-700)}

/* Sections */
.section{padding:80px 64px}
.section--alt{background:var(--color-bg-alt)}
.section__head{text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}
.section__title{font-size:var(--text-3xl)}
.stack{display:flex;flex-direction:column;gap:40px}
.stack--wide{gap:56px}

/* Benefits */
.grid-benefits{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px}
.benefit{display:flex;flex-direction:column;gap:8px}
.benefit__t{font-family:var(--font-display);font-size:var(--text-lg)}
.benefit__d{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-relaxed)}
.grid-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}
.step{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:32px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px}
.step__num{width:48px;height:48px;border-radius:var(--radius-full);background:var(--color-accent);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:var(--text-lg)}
.step__t{font-family:var(--font-display);font-size:var(--text-lg)}
.step__d{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-relaxed)}

/* Results */
.grid-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.card{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow:hidden;display:flex;flex-direction:column}
.card img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:top}
.card__body{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-2)}
.card__label{display:block;text-align:center;font-size:var(--text-sm);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-text-muted)}

/* Testimonials */
.rating{display:inline-flex;align-items:center;gap:14px;padding:14px 30px;border-radius:var(--radius-full);background:var(--color-surface);border:1px solid var(--gold-400);box-shadow:var(--shadow-md)}
.rating__score{font-family:var(--font-display);font-size:var(--text-xl)}
.stars{color:var(--gold-600);font-size:var(--text-lg);letter-spacing:3px;display:inline-flex;align-items:center}
.star-half{position:relative;display:inline-block;letter-spacing:0;line-height:1}
.star-half__empty{color:var(--color-border)}
.star-half__fill{position:absolute;left:0;top:0;width:50%;overflow:hidden;color:var(--gold-600);white-space:nowrap}
.star-half__outline{position:absolute;left:0;top:0;color:var(--gold-600)}
.rating__label{font-size:var(--text-sm);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-text-muted)}
.grid-reviews{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}
.review{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);padding:28px;display:flex;flex-direction:column;gap:14px}
.review__stars{color:var(--gold-600);font-size:var(--text-md);letter-spacing:2px}
.review__text{margin:0;font-size:var(--text-sm);line-height:var(--leading-relaxed)}
.review__who{margin-top:auto;display:flex;flex-direction:column}
.review__name{font-family:var(--font-display)}
.review__meta{font-size:var(--text-xs);color:var(--color-text-muted)}

/* FAQ */
.faq{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:32px}
.accordion{display:flex;flex-direction:column;border-top:1px solid var(--color-border)}
.accordion__item{border-bottom:1px solid var(--color-border)}
.accordion__btn{width:100%;display:flex;justify-content:space-between;align-items:center;padding:20px 4px;background:transparent;border:none;cursor:pointer;font-family:var(--font-display);font-size:var(--text-md);color:var(--color-text);text-align:left}
.accordion__icon{color:var(--color-accent-strong);font-size:var(--text-lg);transition:transform var(--duration-normal) var(--ease-standard)}
.accordion__item.is-open .accordion__icon{transform:rotate(45deg)}
.accordion__panel{margin:0;padding:0 4px 20px;color:var(--color-text-muted);line-height:var(--leading-relaxed);display:none}
.accordion__item.is-open .accordion__panel{display:block}

/* Form */
.form-wrap{max-width:640px;margin:0 auto;display:flex;flex-direction:column;gap:24px}
.form{display:flex;flex-direction:column;gap:20px;background:var(--color-surface);padding:32px;border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}
.form__row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.field{display:flex;flex-direction:column;gap:8px}
.field__label{font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-text-muted)}
.field input,.field select,.field textarea{font-family:var(--font-sans);font-size:var(--text-base);padding:14px 16px;border-radius:var(--radius-sm);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);outline:none}
.field textarea{resize:vertical}
.form__note{color:var(--color-text-muted);margin:0}
.thanks{max-width:560px;margin:0 auto;text-align:center;display:flex;flex-direction:column;gap:12px}

/* Footer */
.footer{background:var(--color-text);color:var(--color-text-inverse);padding:56px 64px 32px;display:flex;flex-direction:column;gap:12px}
.footer__top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:32px}
.footer__logo{height:72px;background:#fff;padding:10px 18px;border-radius:var(--radius-md)}
.footer__contact{display:flex;gap:40px;flex-wrap:wrap;text-align:center;flex:1;justify-content:center}
.footer .contact-item__label{color:var(--gold-400)}
.footer .contact-item__value{color:var(--color-text-inverse)}
.footer__copy{font-size:var(--text-sm);opacity:.6;text-align:right}

/* Sticky mobile CTA */
.mobile-cta{display:none;position:fixed;bottom:0;left:0;right:0;padding:12px;background:var(--color-surface);border-top:1px solid var(--color-border);z-index:20}

@media(max-width:900px){
.nav,.hero,.section,.footer{padding-left:24px;padding-right:24px}
.hero{padding-top:64px}
.hero__title{font-size:var(--text-4xl)}
}
@media(max-width:700px){
.mobile-cta{display:block}
.mobile-cta .btn{width:100%}
body{padding-bottom:76px}
.nav__contact{gap:12px}
.contact-item__value{font-size:var(--text-sm)}
.form__row{grid-template-columns:1fr}
.footer__contact{gap:24px}
.footer__copy{text-align:center}
}


/* ========== MOBILE NAV FIX — logo beside contact ========== */
@media (max-width: 700px) {
    .nav {
        flex-wrap: nowrap;
        padding: 8px 16px;
        gap: 12px;
    }
    .nav__logo {
        height: 48px;
        transform: none;
    }
    .nav__contact {
        gap: 8px;
    }
    .contact-item__label {
        font-size: 8px;
    }
    .contact-item__value {
        font-size: 12px;
    }
}