
:root{
  --ivory:#f3eee4;--cream:#faf7f0;--ink:#1d1a17;--muted:#6b635a;--gold:#c49a5a;
  --gold2:#9d7440;--line:#d8c9b4;--coal:#15191d;--coal2:#20262b;--sand:#ddcdb7;--max:1220px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.58}
a{color:inherit;text-decoration:none}.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}
header{position:sticky;top:0;z-index:20;background:rgba(243,238,228,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(157,116,64,.22)}
.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}.logo{font:700 .92rem/1 Georgia,serif;letter-spacing:.18em}.navlinks{display:flex;gap:28px;font-size:.77rem;text-transform:uppercase;letter-spacing:.12em}.navlinks a{opacity:.72}.navlinks a:hover,.navlinks a[aria-current=page]{opacity:1;color:var(--gold2)}.menu{display:none;border:0;background:none;font-size:1.5rem}
.hero{min-height:760px;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(14,16,18,.93) 0 43%,rgba(14,16,18,.52) 58%,rgba(14,16,18,.08)),linear-gradient(180deg,#c7ac83 0,#5d5345 39%,#302c29 58%,#0d1012 100%);color:#fff;border-bottom:1px solid #2c241b}
.hero:before{content:'';position:absolute;right:0;top:0;width:62%;height:100%;background:radial-gradient(circle at 72% 28%,rgba(244,193,114,.9),transparent 17%),linear-gradient(155deg,transparent 0 44%,rgba(211,172,109,.16) 44% 46%,transparent 46% 100%),linear-gradient(105deg,transparent 0 56%,rgba(255,255,255,.11) 56% 58%,transparent 58% 100%);clip-path:polygon(21% 0,100% 0,100% 100%,0 100%,10% 70%,34% 59%,46% 35%)}
.hero:after{content:'';position:absolute;right:8%;bottom:0;width:39%;height:58%;background:linear-gradient(140deg,#5a4c3e 0 12%,transparent 12% 18%,#7a6955 18% 31%,transparent 31% 39%,#92795c 39% 48%,transparent 48%);opacity:.56;transform:skewX(-8deg)}
.hero .wrap{min-height:760px;display:flex;align-items:center;position:relative;z-index:2}.hero-copy{width:min(720px,66%);padding:86px 0}.eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.24em;color:#e3b978;font-weight:700;margin-bottom:24px}.hero h1,.pagehero h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}.hero h1{font-size:clamp(3.7rem,6.3vw,7.6rem);line-height:.97;margin:0 0 28px;letter-spacing:-.035em}.hero p{font-size:1.16rem;color:#e4ddd3;max-width:650px}.cta{display:inline-flex;margin-top:22px;padding:13px 18px;border:1px solid #d9b275;color:#f9f4eb;text-transform:uppercase;letter-spacing: .08em;font-size:.72rem}.cta:hover{background:#d9b275;color:#151515}
section{padding:100px 0;border-bottom:1px solid var(--line)}.sectionhead{display:grid;grid-template-columns:220px 1fr;gap:46px;margin-bottom:46px}.label{font-size:.72rem;text-transform:uppercase;letter-spacing: .08em;color:var(--gold2);font-weight:700}.sectionhead h2{font-size:clamp(2.5rem,4.7vw,4.7rem);line-height:1.03;margin:0}.sectionhead p{max-width:720px;color:var(--muted)}
.brandgrid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.brandcard{min-height:520px;position:relative;overflow:hidden;padding:42px;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid rgba(104,83,55,.22)}.brandcard:before,.brandcard:after{content:'';position:absolute;inset:0}.brandcard>*{position:relative;z-index:2}.brandcard h3{font-size:3rem;margin:10px 0}.brandcard p{max-width:500px}.formation{color:#fff;background:linear-gradient(160deg,#0f1215,#293039)}.formation:before{background:radial-gradient(circle at 69% 20%,rgba(255,255,255,.18),transparent 19%),linear-gradient(142deg,transparent 0 51%,rgba(255,255,255,.08) 51% 53%,transparent 53%),linear-gradient(180deg,transparent 20%,rgba(0,0,0,.52) 100%)}.formation:after{inset:11% 8% auto auto;width:54%;height:62%;border:1px solid rgba(255,255,255,.15);transform:rotate(-7deg)}
.vale{background:linear-gradient(145deg,#efe5d7,#d8c6ae);color:#2c251f}.vale:before{inset:9% 8% 24% 42%;border:1px solid rgba(104,79,51,.23);transform:rotate(9deg)}.vale:after{inset:18% 20% 31% 50%;background:linear-gradient(135deg,rgba(255,255,255,.72),rgba(171,142,105,.12));box-shadow:0 28px 50px rgba(66,50,33,.15);transform:rotate(-4deg)}
.pill{align-self:flex-start;border:1px solid currentColor;padding:6px 9px;font-size:.66rem;letter-spacing: .08em;text-transform:uppercase}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{padding:26px 0;border-top:1px solid var(--ink)}.card h3{font-size:1.55rem;margin:0 0 10px}.card p{color:var(--muted)}
.manifesto{background:#151718;color:#f7f2e9;text-align:center;padding:125px 0}.manifesto p{font-family:Georgia,serif;font-size:clamp(2.3rem,4.8vw,5.1rem);line-height:1.08;margin:0 auto;max-width:1050px}.philosophy{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.philosophy h2{font-size:clamp(2.6rem,4vw,4.4rem);line-height:1.04;margin:0}.philosophy .copy{font-size:1.08rem;color:var(--muted)}
.pagehero{padding:130px 0 95px;background:linear-gradient(145deg,#ede3d4,#f8f4ec)}.pagehero.dark{background:linear-gradient(145deg,#111416,#262d33);color:#f6f2eb}.pagehero.soft{background:linear-gradient(145deg,#e5d4be,#f5eee4)}.pagehero h1{font-size:clamp(3.6rem,7vw,7.2rem);line-height:.98;margin:0 0 25px}.pagehero p{font-size:1.16rem;max-width:790px;color:var(--muted)}.pagehero.dark p{color:#cfc8be}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:76px}.twocol h2{font-size:3.2rem;margin:0}.list{list-style:none;padding:0;margin:0}.list li{padding:17px 0;border-bottom:1px solid var(--line)}
.contactbox{max-width:780px;border:1px solid var(--line);padding:48px;background:rgba(255,255,255,.26)}footer{background:#101112;color:#efebe4;padding:56px 0}.foot{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end}.foot .logo{font-size:1rem}.footnav{display:flex;gap:20px;font-size:.72rem;text-transform:uppercase;letter-spacing: .08em;color:#bbb5ab}.legal{font-size:.78rem;color:#9e988f;margin-top:12px}
@media(max-width:820px){.wrap{width:min(100% - 30px,var(--max))}.navlinks{display:none;position:absolute;top:78px;left:0;right:0;background:var(--ivory);padding:18px 24px;flex-direction:column;border-bottom:1px solid var(--line)}.navlinks.open{display:flex}.menu{display:block}.hero,.hero .wrap{min-height:670px}.hero-copy{width:100%;padding:68px 0}.hero:before{width:100%;opacity:.55}.hero h1{font-size:clamp(3.25rem,15vw,5.8rem)}.sectionhead,.brandgrid,.cards,.philosophy,.twocol,.foot{grid-template-columns:1fr}.sectionhead{gap:18px}.brandcard{min-height:430px;padding:30px}.footnav{flex-wrap:wrap}section{padding:75px 0}}

/* v1.2 photographic visual layer */
.hero{background-image:linear-gradient(90deg,rgba(12,14,16,.84) 0 34%,rgba(12,14,16,.52) 56%,rgba(12,14,16,.10) 100%),url('images/hero-bg.webp');background-size:cover;background-position:center 48%;}
.hero:before,.hero:after{display:none}
.brandcard{background-size:cover!important;background-position:center!important;isolation:isolate}
.brandcard:before{z-index:0!important}
.brandcard.formation{background-image:linear-gradient(180deg,rgba(8,10,12,.08),rgba(8,10,12,.84)),url('images/formation-bg.webp')!important}
.brandcard.formation:before{background:linear-gradient(180deg,rgba(9,11,13,.04),rgba(9,11,13,.72))!important}
.brandcard.formation:after{display:none}
.brandcard.vale{background-image:linear-gradient(180deg,rgba(246,239,229,.12),rgba(235,221,200,.86)),url('images/mvale-bg.webp')!important;background-position:center 45%!important}
.brandcard.vale:before{background:linear-gradient(180deg,rgba(255,250,242,.04),rgba(240,227,208,.58))!important;inset:0!important;border:0!important;transform:none!important}
.brandcard.vale:after{display:none}
.manifesto{position:relative;background-image:linear-gradient(rgba(11,13,14,.76),rgba(11,13,14,.86)),url('images/manifesto.webp');background-size:cover;background-position:center;}
.manifesto .wrap{position:relative;z-index:1}
.hero-copy{background:linear-gradient(90deg,rgba(11,13,14,.30),transparent);padding-right:24px}
.visual-note{font-size:.7rem;letter-spacing: .08em;text-transform:uppercase;color:#938879;margin-top:16px}

/* Palatine v1.2 final typography QA overrides */
.label,
.eyebrow,
.kicker,
.footer-kicker,
.brand-label,
.section-label {
  letter-spacing: 0.06em !important;
  word-spacing: normal !important;
}

/* === Palatine homepage QA fix: hero → Our Brands === */
main > section.hero {
  padding: 0 !important;
  margin: 0 !important;
}
main > section.hero + section {
  padding-top: 44px !important;
  margin-top: 0 !important;
}
main > section.hero + section .sectionhead {
  margin-top: 0 !important;
  margin-bottom: 34px !important;
}

@media (max-width:820px) {
  main > section.hero + section {
    padding-top: 32px !important;
  }
}

/* v1.3: simplified homepage brand transition */
main > section.hero + section {
  padding-top: 34px !important;
}
main > section.hero + section .brand-grid,
main > section.hero + section .brands-grid,
main > section.hero + section .grid {
  margin-top: 0 !important;
}


/* v1.9 — approved compact homepage rhythm */
@media (min-width: 821px) {
  body.home main > section:not(.hero),
  main > section:not(.hero) {
    padding-top: 58px;
    padding-bottom: 58px;
  }

  main > section.hero + section {
    padding-top: 48px !important;
  }

  main > section .sectionhead {
    margin-bottom: 26px;
  }

  main > section .sectionhead h2,
  main > section .sectionhead h1 {
    margin-bottom: 10px;
  }

  main > section .sectionhead p {
    margin-top: 0;
  }

  main > section + section {
    margin-top: 0;
  }
}

@media (max-width: 820px) {
  main > section:not(.hero) {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  main > section.hero + section {
    padding-top: 34px !important;
  }

  main > section .sectionhead {
    margin-bottom: 22px;
  }
}
