/* ============================================================
   @somasalons — "The AI Culture of Care"
   A distinct sub-brand: Soma's palette, but richer.
   Jewel tones, archival texture, gold leaf. Quietly by Soma.
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Spectral:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,500&family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;1,6..72,400;1,6..72,500&family=Hanken+Grotesk:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap');

:root{
  /* the salons palette — deeper, warmer, jewelled */
  --parch:#F3ECD9; --parch-2:#E8DEC4; --vellum:#FBF6E9;
  --ink:#1A1710; --ink-soft:#403829; --muted:#7A6E57;
  --rule:#D2C5A4; --rule-soft:#E0D6BC;
  /* jewels */
  --aubergine:#3A2348; --aubergine-2:#2A1836;
  --indigo:#1E2A52; --indigo-2:#161F3D;
  --forest:#22402F; --forest-2:#172C20;
  --oxblood:#6E2230; --oxblood-2:#511620;
  --teal:#1C4A4A;
  /* metals + accents */
  --gold:#C49A4A; --gold-soft:#E0C079; --gold-deep:#9C7A2E;
  --care:#3B6B4C; --care-soft:#7CA489; --sage-soft:#D7E0CE;
  --on-dark:#F3ECD9; --on-dark-soft:#CFC3A6;
  --serif:'Spectral',Georgia,serif; --display:'Newsreader','Spectral',serif; --sans:'Hanken Grotesk',system-ui,sans-serif; --mono:'IBM Plex Mono',monospace;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--sans);background:#E4DAC0;color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;}
em{font-style:italic;}
.wrap{max-width:1200px;margin:0 auto;padding:0 clamp(22px,4.5vw,56px);}

/* film grain + faint gold vignette over whole page */
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.04;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}

/* ---------- top bar ---------- */
.bar{position:sticky;top:0;z-index:50;background:rgba(243,236,217,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--rule);}
.bar-in{max-width:1200px;margin:0 auto;padding:13px clamp(22px,4.5vw,56px);display:flex;align-items:center;gap:16px;}
.bar .brand{display:flex;align-items:center;gap:11px;}
.bar .brand .gmk{width:26px;height:26px;flex:none;}
.bar .brand .nm{font-family:var(--serif);font-weight:500;font-size:20px;letter-spacing:.01em;}
.bar .brand .sl{font-family:var(--mono);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-deep);border-left:1px solid var(--rule);padding-left:11px;}
.bar nav{margin-left:auto;display:flex;gap:3px;flex-wrap:wrap;}
.bar nav a{font-size:12px;font-weight:600;color:var(--ink-soft);text-decoration:none;padding:7px 10px;border-radius:6px;transition:.15s;}
.bar nav a:hover{background:var(--parch-2);color:var(--aubergine);}
@media(max-width:820px){.bar nav{display:none;}}

/* ---------- hero ---------- */
header.hero{position:relative;padding:clamp(48px,8vw,108px) 0 clamp(34px,5vw,58px);border-bottom:1px solid var(--rule);overflow:hidden;}
.hero .k{display:flex;align-items:center;gap:13px;margin-bottom:24px;}
.hero .k .ln{width:46px;height:1px;background:var(--gold);}
.hero .k span{font-size:10.5px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-deep);}
.hero h1{font-family:var(--display);font-weight:400;font-size:clamp(38px,6.6vw,84px);line-height:.99;letter-spacing:-.022em;max-width:15ch;}
.hero h1 em{font-style:italic;color:var(--oxblood);}
.hero h1 .gold{font-style:italic;color:var(--gold-deep);}
.hero .dek{font-size:clamp(16px,1.45vw,19px);line-height:1.66;color:var(--ink-soft);max-width:66ch;margin-top:24px;font-weight:300;}
.hero .dek b{color:var(--ink);font-weight:600;}
.hero .dek em{font-style:italic;color:var(--oxblood);}
.hero .handle{display:inline-flex;align-items:center;gap:10px;margin-top:26px;font-size:14px;color:var(--muted);}
.hero .handle b{font-family:var(--serif);font-size:19px;color:var(--ink);font-weight:500;}
.hero .handle .by{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-deep);border-left:1px solid var(--rule);padding-left:10px;}

/* sister-brand strip */
.sister{display:grid;grid-template-columns:1fr 56px 1fr;gap:0;margin-top:36px;border:1px solid var(--rule);border-radius:13px;overflow:hidden;}
@media(max-width:720px){.sister{grid-template-columns:1fr;}}
.sister .s{padding:24px 28px;}
.sister .s.std{background:var(--parch-2);}
.sister .s.sal{background:linear-gradient(135deg,#3A2348,#1E2A52);color:var(--on-dark);}
.sister .mid{display:flex;align-items:center;justify-content:center;background:var(--vellum);font-family:var(--serif);font-style:italic;font-size:15px;color:var(--gold-deep);}
@media(max-width:720px){.sister .mid{padding:8px;}}
.sister .hh{font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px;}
.sister .std .hh{color:var(--muted);}
.sister .sal .hh{color:var(--gold-soft);}
.sister .nn{font-family:var(--serif);font-size:20px;font-weight:500;margin-bottom:8px;}
.sister .sal .nn{color:#fff;}
.sister p{font-size:13.5px;line-height:1.55;font-weight:300;}
.sister .std p{color:var(--ink-soft);}
.sister .sal p{color:var(--on-dark-soft);}
.sister p b{font-weight:600;}.sister .std p b{color:var(--ink);}.sister .sal p b{color:#fff;}

/* ---------- section frame ---------- */
section.blk{padding:clamp(48px,6.5vw,88px) 0;border-bottom:1px solid var(--rule);}
.sechead{max-width:64ch;margin-bottom:clamp(28px,3.6vw,44px);}
.sechead .kx{display:flex;align-items:center;gap:12px;margin-bottom:16px;}
.sechead .kx .n{font-family:var(--mono);font-size:12px;color:var(--gold-deep);letter-spacing:.06em;}
.sechead .kx .ln{width:26px;height:1px;background:var(--gold);}
.sechead .kx .m{font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-deep);}
.sechead h2{font-family:var(--display);font-weight:400;font-size:clamp(27px,3.8vw,48px);line-height:1.04;letter-spacing:-.018em;}
.sechead h2 em{font-style:italic;color:var(--oxblood);}
.sechead .lead{font-size:clamp(15px,1.3vw,17.5px);line-height:1.64;color:var(--ink-soft);margin-top:18px;font-weight:300;}
.sechead .lead b{color:var(--ink);font-weight:600;}
.sechead .lead em{font-style:italic;color:var(--oxblood);}

/* ---------- name options ---------- */
.names{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
@media(max-width:720px){.names{grid-template-columns:1fr;}}
.name{border:1px solid var(--rule);border-radius:11px;padding:22px 24px;background:var(--vellum);position:relative;border-left:3px solid var(--accent,var(--gold));}
.name.pick{background:linear-gradient(135deg,rgba(58,35,72,.05),rgba(196,154,74,.07));border-left-color:var(--gold);box-shadow:0 16px 36px -26px rgba(58,35,72,.5);}
.name .nh{font-family:var(--serif);font-size:23px;font-weight:500;color:var(--ink);display:flex;align-items:baseline;gap:10px;}
.name .nh .rec{font-family:var(--mono);font-size:9.5px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--vellum);background:var(--gold-deep);border-radius:3px;padding:3px 8px;}
.name p{font-size:13px;line-height:1.55;color:var(--muted);font-weight:300;margin-top:9px;}
.name p b{color:var(--ink-soft);font-weight:600;}

/* ---------- audience + conversion ladder ---------- */
.aud{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
@media(max-width:720px){.aud{grid-template-columns:1fr;}}
.ac{display:grid;grid-template-columns:30px 1fr;gap:14px;align-items:start;border:1px solid var(--rule);border-radius:9px;padding:17px 19px;background:var(--vellum);}
.ac .ai{font-family:var(--serif);font-style:italic;font-size:19px;color:var(--gold-deep);line-height:1;}
.ac h4{font-family:var(--sans);font-weight:700;font-size:14px;color:var(--ink);margin-bottom:4px;}
.ac p{font-size:12.5px;line-height:1.5;color:var(--muted);font-weight:300;}

.ladder{display:flex;flex-direction:column;gap:14px;}
.rung{display:grid;grid-template-columns:150px 1fr 220px;gap:24px;align-items:center;border:1px solid var(--rule);border-radius:12px;padding:22px 26px;border-left:4px solid var(--accent);background:var(--vellum);}
@media(max-width:760px){.rung{grid-template-columns:1fr;gap:12px;}}
.rung .rn{display:flex;flex-direction:column;gap:5px;}
.rung .rn .rt{font-family:var(--serif);font-weight:500;font-size:22px;color:var(--ink);}
.rung .rn .rc{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-d);}
.rung .rw{font-size:13.5px;line-height:1.55;color:var(--ink-soft);font-weight:300;}
.rung .rw b{color:var(--ink);font-weight:600;}
.rung .chips{display:flex;flex-wrap:wrap;gap:6px;}
.chip{font-family:var(--mono);font-size:10.5px;letter-spacing:.03em;padding:4px 9px;border-radius:3px;background:var(--parch-2);border:1px solid var(--rule);color:var(--ink-soft);}
.rung-1{--accent:var(--gold-soft);--accent-d:var(--gold-deep);}
.rung-2{--accent:var(--oxblood);--accent-d:var(--oxblood);}
.rung-3{--accent:var(--aubergine);--accent-d:var(--aubergine);}
.rung .ask{font-family:var(--mono);font-size:11px;color:var(--accent-d);margin-top:5px;}

/* ---------- pillars ---------- */
.pillars{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;}
.pil{border:1px solid var(--rule);border-radius:10px;padding:20px 22px;background:var(--vellum);border-top:3px solid var(--gold);}
.pil .pn{font-family:var(--mono);font-size:11px;color:var(--gold-deep);letter-spacing:.06em;margin-bottom:10px;}
.pil h4{font-family:var(--display);font-weight:500;font-size:20px;line-height:1.12;color:var(--ink);}
.pil h4 em{font-style:italic;color:var(--oxblood);}
.pil p{font-size:13px;line-height:1.55;color:var(--muted);font-weight:300;margin-top:9px;}

/* ============================================================
   SAMPLE POSTS — jewelled artboards, 4:5
   ============================================================ */
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:clamp(18px,2vw,26px);}
.cell{display:flex;flex-direction:column;gap:11px;}
.post{position:relative;width:100%;aspect-ratio:4/5;border-radius:15px;overflow:hidden;box-shadow:0 26px 50px -28px rgba(26,23,16,.6);}
.meta{display:flex;align-items:center;gap:9px;padding:0 3px;}
.meta .id{font-family:var(--mono);font-size:10.5px;font-weight:500;letter-spacing:.06em;color:var(--muted);}
.meta .gt{margin-left:auto;font-family:var(--mono);font-size:9.5px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-deep);background:rgba(196,154,74,.14);border:1px solid var(--gold-soft);border-radius:3px;padding:3px 8px;}

.art{position:absolute;inset:0;display:flex;flex-direction:column;padding:30px 30px 26px;overflow:hidden;color:var(--on-dark);}
.art.aubergine{background:radial-gradient(125% 120% at 18% 10%, #4A2E5C 0%, var(--aubergine) 52%, var(--aubergine-2) 100%);}
.art.indigo{background:radial-gradient(125% 120% at 80% 8%, #2A3A6E 0%, var(--indigo) 52%, var(--indigo-2) 100%);}
.art.oxblood{background:radial-gradient(120% 120% at 50% 0%, #8A2E3E 0%, var(--oxblood) 55%, var(--oxblood-2) 100%);}
.art.forest{background:radial-gradient(120% 120% at 15% 12%, #2E5640 0%, var(--forest) 55%, var(--forest-2) 100%);}
.art.teal{background:radial-gradient(120% 120% at 80% 10%, #246060 0%, var(--teal) 60%, #133636 100%);}
.art.parch{background:var(--vellum);color:var(--ink);}

.art .grain{position:absolute;inset:0;pointer-events:none;z-index:1;opacity:.08;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}
/* faint gold corner flourish */
.art .leaf{position:absolute;top:-30px;right:-30px;width:150px;height:150px;z-index:1;opacity:.5;pointer-events:none;
  background:radial-gradient(circle at 70% 30%, rgba(224,192,121,.5), transparent 60%);}
.art.parch .leaf{opacity:.8;background:radial-gradient(circle at 70% 30%, rgba(196,154,74,.22), transparent 60%);}

.eb{position:relative;z-index:2;display:flex;align-items:center;gap:8px;font-size:9.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-soft);}
.eb .ln{width:20px;height:1px;background:var(--gold-soft);}
.art.parch .eb{color:var(--gold-deep);}.art.parch .eb .ln{background:var(--gold-deep);}

.glyph{position:relative;z-index:2;font-family:var(--serif);font-size:34px;color:var(--gold-soft);margin:14px 0 2px;line-height:1;}
.art.parch .glyph{color:var(--gold-deep);}

.big{position:relative;z-index:2;font-family:var(--display);font-weight:400;line-height:1.14;letter-spacing:-.008em;color:#fff;font-size:26px;text-wrap:pretty;}
.big.sm{font-size:22px;}
.art.parch .big{color:var(--ink);}
.big em{font-style:italic;color:var(--gold-soft);}
.art.parch .big em{color:var(--oxblood);}
.big .word{font-style:italic;color:var(--gold-soft);}

.sub{position:relative;z-index:2;font-family:var(--sans);font-weight:300;font-size:13px;line-height:1.5;color:var(--on-dark-soft);margin-top:13px;}
.sub b{color:#fff;font-weight:600;}
.art.parch .sub{color:var(--muted);}.art.parch .sub b{color:var(--ink);}

.push{margin-top:auto;}
.src{position:relative;z-index:2;margin-top:14px;padding-top:12px;border-top:1px solid rgba(243,236,217,.22);font-family:var(--mono);font-size:10.5px;letter-spacing:.02em;color:var(--on-dark-soft);}
.art.parch .src{border-top-color:var(--rule-soft);color:var(--muted);}
.prompt{position:relative;z-index:2;margin-top:14px;padding-top:12px;border-top:1px solid rgba(243,236,217,.22);font-family:var(--sans);font-size:12px;font-style:italic;color:var(--gold-soft);}

/* photo/texture variant */
.art.photo{padding:0;background:#15130d;}
.art.photo .ph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(.4) contrast(1.05) brightness(.7) sepia(.2);z-index:0;}
.art.photo .ph-jewel{position:absolute;inset:0;z-index:1;mix-blend-mode:color;opacity:.5;}
.art.photo.aubergine .ph-jewel{background:var(--aubergine);}
.art.photo.indigo .ph-jewel{background:var(--indigo);}
.art.photo.oxblood .ph-jewel{background:var(--oxblood);}
.art.photo .ph-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(15,13,8,.55) 0%,rgba(15,13,8,.05) 30%,rgba(13,11,6,.92) 100%);}
.art.photo .ph-in{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;padding:28px 28px 24px;}

/* the gold mark */
.mark{position:absolute;bottom:22px;right:24px;z-index:3;display:flex;align-items:center;gap:7px;}
.mark .gmk{width:16px;height:16px;flex:none;}
.mark span{font-family:var(--serif);font-size:13px;font-weight:500;color:var(--on-dark);}
.art.parch .mark span{color:var(--ink);}
.handle{position:absolute;bottom:23px;left:28px;z-index:3;font-size:11px;font-weight:600;color:var(--gold-soft);}
.art.parch .handle{color:var(--gold-deep);}

/* footer */
footer.foot{padding:clamp(40px,5vw,72px) 0;}
footer.foot .fin{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
footer.foot .fin .nm{font-family:var(--serif);font-size:19px;color:var(--ink);}
footer.foot .fin .d{width:5px;height:5px;border-radius:50%;background:var(--gold);}
footer.foot .fin span{font-family:var(--mono);font-size:12px;color:var(--muted);letter-spacing:.04em;}
footer.foot p{font-size:13px;line-height:1.7;color:var(--muted);font-weight:300;max-width:74ch;margin-top:14px;}
footer.foot p b{color:var(--ink-soft);font-weight:600;}
