/* Studio Lena Business — homepage theme (cream layout). */
body[data-page="home"]{
  --v-bg:#f6f5f2; --v-bg-alt:#efeee9; --v-header:#f6f5f2;
  --v-text:#171c25; --v-muted:#55585e; --v-accent:#7f6846;
  --v-line:rgba(23,28,37,.16); --v-frame:#e8e6e0; --gold:#7f6846;
}

body[data-page="home"]{
  background:var(--v-bg)!important;
  background-color:var(--v-bg)!important;
  color:var(--v-text)!important;
}
body[data-page="home"] .top,
body[data-page="home"] .ph-head,
body[data-page="home"] header.ph-head{
  background:var(--v-header)!important;
  background-color:var(--v-header)!important;
  border-bottom-color:var(--v-line)!important;
}
body[data-page="home"] .gold-wall{
  background:var(--v-bg-alt)!important;
  color:var(--v-text)!important;
  border-top-color:var(--v-line)!important;
}
body[data-page="home"] .svc-list li,
body[data-page="home"] .contact,
body[data-page="home"] .se-close,
body[data-page="home"] .tier{
  border-color:var(--v-line)!important;
}
body[data-page="home"] .frame,
body[data-page="home"] .svc-zoom-wrap .frame,
body[data-page="home"] .svc-zoom-frame{
  background:var(--v-frame)!important;
}
body[data-page="home"] .tier h3,
body[data-page="home"] .tiers h2,
body[data-page="home"] .gold-wall .kicker,
body[data-page="home"] .gold-steps .n,
body[data-page="home"] .svc-list li.active,
body[data-page="home"] .svc-list li:hover{
  color:var(--v-accent)!important;
}
body[data-page="home"] .cta{
  border-color:var(--v-accent)!important;
  color:var(--v-accent)!important;
}
body[data-page="home"] .svc-list p{ color:var(--v-muted)!important; }

/* Hero type stays light on the photograph in every variant */
body[data-page="home"] .hero .copy,
body[data-page="home"] .hero h1,
body[data-page="home"] .hero .sub{ color:#eee!important; opacity:1; }
body[data-page="home"] .hero .sub{ opacity:.88!important; }

/* v4/v5 typography (v1–v3 keep original text colours via the vars above) */

/* v6–v11 typography follows each palette */
body[data-page="home"] .top,
body[data-page="home"] .top .logo,
body[data-page="home"] a.logo,
body[data-page="home"] .top nav a,
body[data-page="home"] .se-serviceline,
body[data-page="home"] .se-brand-dot,
body[data-page="home"] .top .lang,
body[data-page="home"] .gold-wall h2,
body[data-page="home"] .gold-steps h3,
body[data-page="home"] .gold-steps p,
body[data-page="home"] .svc-list,
body[data-page="home"] .svc-list h2,
body[data-page="home"] .svc-list h3,
body[data-page="home"] .contact,
body[data-page="home"] .contact h2,
body[data-page="home"] .se-close,
body[data-page="home"] .se-close h2,
body[data-page="home"] .se-close p,
body[data-page="home"] .awards,
body[data-page="home"] .about-me,
body[data-page="home"] .consult-note{
  color:var(--v-text)!important;
}
body[data-page="home"] .se-close-cta{
  background:var(--v-accent)!important;
  color:var(--v-bg)!important;
}
body[data-page="home"] .sound-btn{
  background:rgba(23,28,37,.72); color:#f6f5f2; border-color:#7f6846;
}

/* Shared new-section layout, same type language as 3A */
body[data-page="home"] .consult-note{
  max-width:720px; margin:36px auto 0; text-align:center;
  border:1px solid var(--v-line); padding:28px 28px 26px;
}
body[data-page="home"] .consult-note h3{
  font-size:13px; letter-spacing:.16em; text-transform:uppercase;
  color:var(--v-accent)!important; margin-bottom:12px; font-weight:500;
}
body[data-page="home"] .consult-note p{
  font-size:17px; line-height:1.55; font-weight:400; max-width:42ch; margin:0 auto;
}
body[data-page="home"] .awards{
  max-width:720px; margin:0 auto; padding:56px 40px 64px; text-align:center;
  border-top:1px solid var(--v-line);
}
body[data-page="home"] .awards h2{
  font-size:13px; letter-spacing:.16em; text-transform:uppercase;
  color:var(--v-accent)!important; margin-bottom:18px; font-weight:500;
}
body[data-page="home"] .awards p{ font-size:17px; line-height:1.55; margin:0 0 12px; }
body[data-page="home"] .about-me{
  max-width:720px; margin:48px auto 0; text-align:center; padding-top:8px;
}
body[data-page="home"] .about-me h2{
  font-size:13px; letter-spacing:.16em; text-transform:uppercase;
  color:var(--v-accent)!important; margin:0 0 16px; font-weight:500;
}
body[data-page="home"] .about-me .lead{
  font-size:22px; font-weight:420; letter-spacing:-.02em; line-height:1.3;
  margin:0 0 16px;
}
body[data-page="home"] .about-me p{ font-size:16px; line-height:1.55; margin:0 0 12px; opacity:.92; }
body[data-page="home"] .about-film{ display:flex; justify-content:center; margin:8px auto 22px; }
body[data-page="home"] .about-film-frame{
  position:relative; display:inline-block;
  max-width:min(100%, 360px);
}
body[data-page="home"] .about-film video{
  display:block; width:auto; height:auto;
  max-width:100%;
  max-height:calc(100svh - var(--se-header-h, 72px) - 32px);
  object-fit:contain; background:transparent; vertical-align:top;
}
body[data-page="home"] .sound-btn{
  position:absolute; right:10px; bottom:10px; z-index:2;
  border:1px solid var(--v-accent); background:rgba(0,0,0,.45);
  color:#fff; font:inherit; font-size:12px; letter-spacing:.08em;
  text-transform:uppercase; padding:7px 12px; cursor:pointer;
}

@media(max-width:900px){
  body[data-page="home"] .awards{ padding:48px 24px 56px; }
}

/* Intro + three service points + summary (Rune copy) */
body[data-page="home"] .v-intro{
  padding:56px 40px 20px; text-align:center;
}
body[data-page="home"] .v-intro-inner{ max-width:720px; margin:0 auto; }
body[data-page="home"] .v-intro p{
  font-size:clamp(17px,1.5vw,20px); line-height:1.5; margin:0 0 14px; font-weight:400;
}
body[data-page="home"] .v-points{ padding:12px 40px 56px; }
body[data-page="home"] .v-points-inner{ max-width:1100px; margin:0 auto; }
body[data-page="home"] .v-points-inner{
  display:grid; grid-template-columns:repeat(3,1fr); gap:14px;
}
body[data-page="home"] .v-point{
  border:1px solid var(--v-line); padding:26px 22px 24px; text-align:left;
}
body[data-page="home"] .v-ico{
  width:28px; height:28px; color:var(--v-accent); margin-bottom:14px; display:block;
}
body[data-page="home"] .v-point h3{
  font-size:18px; font-weight:500; margin:0 0 8px; letter-spacing:-.01em;
  color:var(--v-text);
}
body[data-page="home"] .v-point p{
  font-size:14px; line-height:1.45; opacity:.8; margin:0;
}
body[data-page="home"] .v-summary{
  grid-column:1 / -1; text-align:center; margin:18px 0 0;
  font-size:clamp(16px,1.4vw,18px); line-height:1.5; max-width:46ch;
  justify-self:center;
}
@media(max-width:900px){
  body[data-page="home"] .v-intro{ padding:40px 24px 12px; }
  body[data-page="home"] .v-points{ padding:8px 24px 44px; }
  body[data-page="home"] .v-points-inner{ grid-template-columns:1fr; }
}
/* Slightly tighter hero type so the new H1 stays on the first screen */
body[data-page="home"] .hero h1{ font-size:clamp(26px,3.4vw,42px); }

/* Placeholder one-off example prices, same card language as .tier */
body[data-page="home"] .oneoff{ margin:36px 0 8px; }
body[data-page="home"] .placeholder-tag{
  display:inline-block; margin:0 0 10px; padding:6px 12px;
  border:1px solid var(--v-accent); color:var(--v-accent)!important;
  font-size:12px; letter-spacing:.14em; text-transform:uppercase; font-weight:500;
}
body[data-page="home"] .oneoff{ text-align:center; }
body[data-page="home"] .oneoff-head{
  font-size:13px; letter-spacing:.16em; text-transform:uppercase;
  color:var(--v-accent)!important; font-weight:500; margin:0 0 18px;
}
body[data-page="home"] .oneoff-grid{
  grid-template-columns:repeat(4,1fr);
  text-align:left;
}
@media(max-width:900px){
  body[data-page="home"] .oneoff-grid{ grid-template-columns:1fr; }
}

/* Active/hovered service row: heading + number turn gold in every variant */
body[data-page="home"] .svc-list li.active h3,
body[data-page="home"] .svc-list li:hover h3,
body[data-page="home"] .svc-list li.active .n,
body[data-page="home"] .svc-list li:hover .n{ color:var(--gold)!important; }
body[data-page="home"] .svc-list li.active .n{ opacity:1!important; }

body[data-page="home"] .tiers .tier h3{ color:var(--v-text)!important; }

/* Closing CTA in compact ending: outline in text colour (not accent/brown) */
body[data-page="home"] section.se-end.se-close .se-close-cta,
body[data-page="home"] section.se-end.se-close a.cta.se-close-cta{
  background:transparent!important;
  color:var(--v-text)!important;
  border:1.5px solid var(--v-text)!important;
  border-radius:999px!important;
  font-weight:700!important;
  font-size:17px!important;
  padding:16px 44px!important;
  margin:0 0 20px!important;
  letter-spacing:.08em;
  text-transform:none!important;
  filter:none!important;
}
body[data-page="home"] section.se-end.se-close .se-close-cta:hover,
body[data-page="home"] section.se-end.se-close a.cta.se-close-cta:hover{
  background:color-mix(in srgb, var(--v-text) 8%, transparent)!important;
  filter:none!important;
  color:var(--v-text)!important;
}

/* Compact ending CTA: always outline in --v-text, overriding per-variant filled/brown rules */
body[data-page="home"] section.se-end.se-close a.cta.se-close-cta,
body[data-page="home"] section.se-end.se-close .se-close-cta,
body[data-page="home"] section.se-end.se-close .se-close-cta{
  background:transparent!important;
  color:var(--v-text)!important;
  border:1.5px solid var(--v-text)!important;
}
body[data-page="home"] section.se-end.se-close a.cta.se-close-cta:hover,
body[data-page="home"] section.se-end.se-close .se-close-cta:hover{
  background:color-mix(in srgb, var(--v-text) 8%, transparent)!important;
  filter:none!important;
  color:var(--v-text)!important;
}

/* Narrow-header fix (Studio Lena Business): logo, social and CTA must not overlap. */
@media (max-width: 600px) {
  .top, .ph-head, header.ph-head {
    gap: 8px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  .top .logo, .top a.logo, .ph-head .logo, header .logo, a.logo {
    font-size: 18px !important;
    letter-spacing: -0.03em !important;
  }
  .top .right, .ph-head-right {
    gap: 6px !important;
  }
  .top .lang, .se-secnav {
    display: none !important;
  }
  .top .cta, .top a.cta {
    padding: 8px 12px !important;
    font-size: 11px !important;
    letter-spacing: 0.04em !important;
  }
}

/* iPad landscape: the service line wrapped under the logo inside a 72px header. */
@media (max-width: 1200px) {
  .se-serviceline, .se-brand-dot { display: none !important; }
}
