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

:root{
  --cream:#f6efe5;--ivory:#fffaf2;--sand:#d9c5ad;--taupe:#9c836d;
  --brown:#493628;--deep:#1f1b17;--muted:#70665d;--line:rgba(31,27,23,.13)
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Montserrat",sans-serif;background:var(--cream);color:var(--deep);line-height:1.75;letter-spacing:.01em}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:22px clamp(20px,4vw,56px);background:rgba(246,239,229,.9);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.brand{font-family:"Playfair Display",serif;font-size:24px;letter-spacing:.22em}
.nav-links{display:flex;gap:24px;align-items:center;flex-wrap:wrap}
.nav-links a{font-size:11px;letter-spacing:.17em;text-transform:uppercase;color:var(--muted)}
.nav-links a:hover{color:var(--deep)}
.hero{min-height:90vh;display:grid;place-items:center;position:relative;overflow:hidden;background:var(--deep);padding:80px 22px}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;filter:brightness(.54);transform:scale(1.02)}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.06),rgba(0,0,0,.55)),radial-gradient(circle at 50% 42%,rgba(255,255,255,.08),transparent 60%)}
.hero-content{position:relative;z-index:2;text-align:center;max-width:960px;color:var(--ivory)}
.eyebrow{font-size:11px;letter-spacing:.34em;text-transform:uppercase;margin-bottom:24px;color:rgba(255,250,242,.78)}
.logo{font-family:"Playfair Display",serif;font-size:clamp(70px,14vw,170px);font-weight:400;letter-spacing:.14em;line-height:.9}
.slogan{margin-top:24px;font-family:"Playfair Display",serif;font-style:italic;font-size:clamp(24px,3.5vw,42px)}
.hero-text{max-width:690px;margin:28px auto 0;color:rgba(255,250,242,.84);font-size:15px}
.cta-row{margin-top:38px;display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
.btn{display:inline-block;border:1px solid currentColor;padding:13px 24px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;transition:.25s ease}
.btn.dark{background:var(--deep);color:var(--ivory);border-color:var(--deep)}
.btn.light{color:var(--ivory)}
.btn:hover{transform:translateY(-2px)}
section{padding:96px clamp(20px,4vw,56px)}
.container{width:min(1160px,100%);margin:auto}
.label{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--taupe);margin-bottom:18px}
h1,h2,h3{font-family:"Playfair Display",serif;font-weight:400;line-height:1.05}
.page-title{font-size:clamp(48px,8vw,104px);letter-spacing:-.04em;margin-bottom:28px}
.section-title{font-size:clamp(38px,6vw,76px);letter-spacing:-.04em;margin-bottom:30px}
.lead{font-family:"Playfair Display",serif;font-size:clamp(22px,3vw,34px);color:var(--brown);line-height:1.5;max-width:820px}
.copy{max-width:720px;color:var(--muted);font-size:15px}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{background:rgba(255,250,242,.68);border:1px solid var(--line);padding:20px}
.card img{height:390px;width:100%;object-fit:cover;margin-bottom:24px}
.card h3{font-size:32px;margin-bottom:8px}
.words{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--taupe);margin-bottom:18px}
.card p{color:var(--muted);font-size:14px;max-width:340px}
.editorial{border-top:1px solid var(--line);padding-top:36px;margin-top:46px}
.editorial p{max-width:720px;color:var(--muted);margin-top:16px}
.split-image{min-height:560px;width:100%;object-fit:cover;box-shadow:0 30px 80px rgba(31,28,25,.12)}
.collection-hero{background:linear-gradient(180deg,var(--cream),#eee1d0)}
.product-layout{display:grid;grid-template-columns:.96fr 1.04fr;gap:58px;align-items:center}
.product-image{height:700px;width:100%;object-fit:cover}
.product-meta{border-top:1px solid var(--line);margin-top:28px;padding-top:24px;color:var(--muted);font-size:14px}
.note{margin-top:28px;padding-top:20px;border-top:1px solid var(--line);color:var(--brown);font-family:"Playfair Display",serif;font-size:22px;line-height:1.5}
.bullets{margin-top:24px;color:var(--muted);font-size:14px;list-style:none}
.bullets li{padding:5px 0}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:50px}
.gallery img{height:430px;width:100%;object-fit:cover}
.faq-list{max-width:860px}
.faq-item{border-top:1px solid var(--line);padding:28px 0}
.faq-item h2{font-size:28px;margin-bottom:10px}
.faq-item p{color:var(--muted);max-width:720px}
.journal-entry{border-top:1px solid var(--line);padding:44px 0;max-width:840px}
.journal-entry h2{font-size:clamp(34px,5vw,62px);letter-spacing:-.035em;margin-bottom:18px}
.journal-entry p{color:var(--muted);max-width:680px;margin-top:16px}
.footer{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;border-top:1px solid var(--line);padding:34px clamp(20px,4vw,56px);color:var(--muted);font-size:12px}
.footer strong{font-family:"Playfair Display",serif;letter-spacing:.18em;color:var(--deep);font-size:18px}
.footer .positioning{margin-top:8px;line-height:1.8}
.footer-links{display:flex;gap:18px;flex-wrap:wrap}
.footer-links a{font-size:11px;letter-spacing:.16em;text-transform:uppercase}
@media(max-width:860px){
  .nav{align-items:flex-start;flex-direction:column}
  .nav-links{gap:13px}
  .hero{min-height:82vh}
  .grid-2,.grid-3,.product-layout,.gallery{grid-template-columns:1fr}
  section{padding:72px 20px}
  .card img,.product-image,.gallery img{height:420px}
}


@media(max-width:860px){.hero img{object-position:center center}.hero-content{padding-top:24px;padding-bottom:24px}.hero-text{font-size:14px;max-width:92%}}


/* ORVEE final luxury typography refinements */
.page-title{
  font-size:clamp(38px,6.4vw,84px) !important;
}
.journal-entry h2{
  font-size:clamp(28px,4vw,50px) !important;
}
@media(max-width:860px){
  .page-title{
    font-size:clamp(34px,10vw,56px) !important;
  }
  .journal-entry h2{
    font-size:clamp(28px,8vw,42px) !important;
  }
}
