@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400&family=DM+Sans:ital,wght@0,300;0,400;0,500;1,300&display=swap');
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--black:#0d0d0d;--white:#f8f5f0;--warm:#f0ece3;--warm-dark:#e5e0d5;--orange:#e8611a;--orange-dim:rgba(232,97,26,0.12);--orange-light:#fdf0e8;--gray:#888;--gray-light:#e2ddd5;--text:#1a1818;--muted:#6b6560;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',system-ui,sans-serif}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:var(--sans);background:var(--white);color:var(--text);line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{text-decoration:none;color:inherit}
.nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:1.25rem 4rem;transition:background .3s,border-color .3s}
.nav.scrolled{background:rgba(13,13,13,0.95);border-bottom:1px solid rgba(255,255,255,0.08)}
.nav.light.scrolled{background:rgba(248,245,240,0.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--gray-light)}
.nav-logo{font-family:var(--serif);font-size:1.3rem;color:var(--white);letter-spacing:.01em}
.nav-logo span{color:var(--orange)}
.nav.light .nav-logo{color:var(--black)}
.nav-links{display:flex;align-items:center;gap:2.5rem;list-style:none}
.nav-links a{font-size:.8rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:rgba(248,245,240,0.7);transition:color .2s}
.nav-links a:hover,.nav-links a.active{color:var(--orange)}
.nav.light .nav-links a{color:var(--muted)}
.nav.light .nav-links a:hover{color:var(--orange)}
.nav-cta{padding:.65rem 1.5rem;background:var(--orange);color:white!important;border-radius:2px;font-size:.78rem!important;letter-spacing:.1em!important;transition:opacity .2s,transform .2s!important}
.nav-cta:hover{opacity:.88!important;transform:translateY(-1px)}
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2.5rem;font-family:var(--sans);font-size:.82rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;border:none;cursor:pointer;transition:all .22s;border-radius:2px}
.btn-primary{background:var(--orange);color:white}.btn-primary:hover{opacity:.88;transform:translateY(-2px)}
.btn-ghost{background:transparent;color:var(--white);border:1px solid rgba(248,245,240,0.25)}.btn-ghost:hover{border-color:var(--orange);color:var(--orange)}
.btn-dark{background:var(--black);color:var(--white)}.btn-dark:hover{background:#222;transform:translateY(-2px)}
.section-tag{display:inline-block;font-size:.7rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--orange);margin-bottom:1rem}
.section-title{font-family:var(--serif);font-size:clamp(2rem,4vw,3.25rem);font-weight:400;line-height:1.12;color:var(--black)}
.section-title em{font-style:italic;color:var(--orange)}
.section-intro{font-size:1.05rem;color:var(--muted);font-weight:300;line-height:1.75;max-width:560px}
.footer{background:var(--black);color:rgba(248,245,240,0.35);padding:3rem 4rem}
.footer-top{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:2rem;border-bottom:1px solid rgba(248,245,240,0.08);margin-bottom:2rem}
.footer-logo{font-family:var(--serif);font-size:1.2rem;color:var(--white);margin-bottom:.5rem}
.footer-logo span{color:var(--orange)}
.footer-tagline{font-size:.82rem;color:rgba(248,245,240,0.35);font-weight:300}
.footer-links{display:flex;gap:2rem;list-style:none}
.footer-links a{font-size:.8rem;color:rgba(248,245,240,0.4);transition:color .2s}
.footer-links a:hover{color:var(--orange)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;font-size:.75rem}
.footer-bottom a{color:var(--orange)}
.img-placeholder{background:var(--warm-dark);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;position:relative;overflow:hidden}
.img-placeholder::after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 20px,rgba(0,0,0,0.03) 20px,rgba(0,0,0,0.03) 21px)}
@media(max-width:768px){.nav{padding:1rem 1.5rem}.nav-links{display:none}.footer{padding:2.5rem 1.5rem}.footer-top{flex-direction:column;gap:2rem}.footer-bottom{flex-direction:column;gap:.75rem;text-align:center}}
