/* You’re ON — V15 Premium Positioning preview
   Scope: header polish + hero + backstage positioning + workfit carousel.
   The remaining homepage sections are intentionally left structurally untouched
   until their V15 composition is approved. */

:root{
  --v15-ink:#211A20;
  --v15-ivory:#F8F6F3;
  --v15-sand:#EFEAE5;
  --v15-taupe:#625B60;
  --v15-plum:#765F70;
  --v15-gold:#B49A70;
  --v15-line:#DED7D2;
  --v15-serif:"Iowan Old Style",Baskerville,"Palatino Linotype","Book Antiqua",Georgia,serif;
  --v15-sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --wine:#765F70;
  --wine2:#8A7483;
  --wine3:#211A20;
  --ink:#211A20;
  --muted:#625B60;
  --cream:#F8F6F3;
  --cream2:#FBFAF8;
  --blush:#EFEAE5;
  --line:#DED7D2;
  --serif:var(--v15-serif);
  --sans:var(--v15-sans);
}

body{background:var(--v15-ivory);color:var(--v15-ink)}

/* Header: quieter, product-led. */
.hp-header{
  background:rgba(248,246,243,.92);
  border-bottom:1px solid rgba(33,26,32,.08);
  backdrop-filter:blur(18px);
}
.hp-nav{min-height:82px}
.hp-navlinks a,.hp-login{font-weight:560;color:var(--v15-ink)}
.hp-navlinks a:hover,.hp-login:hover{color:var(--v15-plum)}
.hp-btn{
  min-height:48px;
  border-radius:9px;
  background:var(--v15-ink);
  border-color:var(--v15-ink);
  box-shadow:none;
  font-weight:650;
  transition:background .25s ease,transform .25s ease,border-color .25s ease;
}
.hp-btn:hover{background:#30262E;border-color:#30262E;transform:translateY(-1px)}
.hp-btn--small{min-height:42px}

/* Hero — editorial beauty outside, professional product inside. */
.hp-hero{
  overflow:hidden;
  border-bottom:0;
  background:
    radial-gradient(circle at 78% 44%,rgba(180,154,112,.10) 0,rgba(180,154,112,0) 34%),
    var(--v15-ivory);
}
.hp-hero-grid{
  min-height:680px;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:clamp(44px,6vw,88px);
}
.hp-hero-copy{padding-block:104px 96px;max-width:610px}
.hp-kicker{
  padding:0;
  border:0;
  border-radius:0;
  background:none;
  color:var(--v15-plum);
  font-size:10px;
  font-weight:720;
  letter-spacing:.16em;
}
.hp-hero h1{
  margin:24px 0 24px;
  max-width:660px;
  color:var(--v15-ink);
  font-family:var(--v15-serif);
  font-size:clamp(42px,4.2vw,60px);
  font-weight:500;
  line-height:.99;
  letter-spacing:-.045em;
}
.hp-hero h1 em{font-style:normal;color:var(--v15-plum)}
.hp-hero-copy>p{
  max-width:560px;
  margin:0 0 30px;
  color:var(--v15-taupe);
  font-size:17px;
  line-height:1.7;
}
.hp-hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.hp-hero-link{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:48px;
  color:var(--v15-ink);
  font-size:14px;
  font-weight:620;
  text-decoration:none;
  border-bottom:1px solid rgba(33,26,32,.28);
}
.hp-hero-link span{transition:transform .22s ease}
.hp-hero-link:hover span{transform:translateX(3px)}
.hp-hero-micro{
  display:block;
  margin-top:14px;
  color:#81777B;
  font-size:11px;
  letter-spacing:.015em;
}
.hp-hero-media{min-height:540px}
.hp-hero-stage{width:100%;display:flex;align-items:center;justify-content:center}
.hp-hero-mockup{
  width:min(740px,112%);
  filter:drop-shadow(0 30px 52px rgba(33,26,32,.13));
}

/* Positioning block — no cards, no icon noise. */
.hp-backstage{
  padding:126px 0 130px;
  background:var(--v15-ink);
  color:var(--v15-ivory);
}
.hp-backstage-grid{
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;
  gap:clamp(52px,7vw,112px)!important;
  align-items:center!important;
}
.hp-backstage-copy>span{
  margin-bottom:20px;
  color:var(--v15-gold);
  font-size:10px;
  font-weight:700;
  letter-spacing:.17em;
}
.hp-backstage-copy h2{
  margin:0 0 26px;
  color:#F8F6F3;
  font-family:var(--v15-serif);
  font-size:clamp(34px,3.5vw,48px);
  font-weight:500;
  line-height:1.02;
  letter-spacing:-.04em;
}
.hp-backstage-copy h2 em{
  margin-top:.22em;
  color:#D8CAD1;
  font-style:normal;
}
.hp-backstage-copy p{
  max-width:590px;
  margin:0;
  color:#C8BFC3;
  font-size:15px;
  line-height:1.78;
}
.hp-backstage-points{display:grid;gap:0!important}
.hp-backstage-points article{
  display:grid;
  grid-template-columns:50px minmax(0,1fr);
  gap:20px;
  padding:27px 0;
  border:0;
  border-top:1px solid rgba(248,246,243,.15);
  border-radius:0;
  background:transparent;
}
.hp-backstage-points article:last-child{border-bottom:1px solid rgba(248,246,243,.15)}
.hp-backstage-number{
  padding-top:2px;
  color:var(--v15-gold);
  font-size:11px;
  font-weight:700;
  letter-spacing:.11em;
}
.hp-backstage-points strong{
  margin:0 0 8px;
  color:#F8F6F3;
  font-size:17px;
  font-weight:620;
  line-height:1.35;
}
.hp-backstage-points p{
  max-width:570px;
  margin:0;
  color:#BDB3B8;
  font-size:13px;
  line-height:1.7;
}

/* Workfit carousel — editorial window, not a category marketplace. */
.hp-workfit{
  padding:116px 0 126px;
  overflow:hidden;
  background:var(--v15-ivory);
  border:0;
}
.hp-workfit-head{
  width:min(1160px,calc(100% - 44px));
  max-width:920px;
  margin:0 auto 44px;
  text-align:center;
}
.hp-workfit-head>span{display:none!important}
.hp-workfit-head h2{
  margin:0 0 15px;
  color:var(--v15-ink);
  font-family:var(--v15-serif);
  font-size:clamp(34px,3.3vw,46px);
  font-weight:500;
  line-height:1.04;
  letter-spacing:-.038em;
}
.hp-workfit-head p{
  max-width:none;
  margin:0 auto;
  color:var(--v15-taupe);
  font-size:17px;
  line-height:1.55;
}
.hp-workfit-marquee{
  width:100%;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 4%,#000 96%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 4%,#000 96%,transparent 100%);
}
.hp-workfit-track{
  display:flex;
  width:max-content;
  gap:18px;
  animation:hp-workfit-scroll-v15 64s linear infinite;
  will-change:transform;
}
.hp-workfit-group{display:flex;flex:none;gap:18px}
.hp-workfit-card{
  position:relative;
  flex:none;
  width:clamp(300px,30vw,420px);
  aspect-ratio:4/3;
  margin:0;
  overflow:hidden;
  border:0;
  border-radius:13px;
  background:var(--v15-sand);
  box-shadow:0 22px 55px rgba(33,26,32,.07);
}
.hp-workfit-card img{
  width:100%;height:100%;display:block;object-fit:cover;
  transition:transform .7s cubic-bezier(.2,.7,.2,1);
}
.hp-workfit-card:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 56%,rgba(22,17,21,.60) 100%);
  pointer-events:none;
}
.hp-workfit-card figcaption{
  position:absolute;
  z-index:2;
  left:22px;
  right:22px;
  bottom:19px;
  color:#fff;
  font-family:var(--v15-sans);
  font-size:16px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:-.01em;
  text-shadow:0 2px 18px rgba(0,0,0,.22);
  transition:transform .4s ease;
}
.hp-workfit-marquee:hover .hp-workfit-track{animation-play-state:paused}
@keyframes hp-workfit-scroll-v15{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 9px))}}

@media (hover:hover) and (pointer:fine){
  .hp-workfit-card:hover img{transform:scale(1.025)}
  .hp-workfit-card:hover figcaption{transform:translateY(-2px)}
}

@media(max-width:960px){
  .hp-hero-grid{min-height:0;grid-template-columns:1fr;gap:20px;padding-top:26px}
  .hp-hero-copy{padding:74px 0 16px;max-width:720px}
  .hp-hero-media{min-height:0;padding:8px 0 70px}
  .hp-hero-mockup{width:min(760px,100%)}
  .hp-backstage{padding:96px 0 100px}
  .hp-backstage-grid{grid-template-columns:1fr!important;gap:52px!important}
  .hp-backstage-copy{max-width:720px}
  .hp-workfit{padding:92px 0 102px}
}

@media(max-width:720px){
  .hp-nav{min-height:72px}
  .hp-hero-grid{padding-top:0}
  .hp-hero-copy{padding:64px 0 10px}
  .hp-kicker{font-size:9px;line-height:1.45}
  .hp-hero h1{margin:20px 0;font-size:clamp(34px,10.8vw,44px);line-height:1.04}
  .hp-hero-copy>p{font-size:15px;line-height:1.68;margin-bottom:24px}
  .hp-hero-actions{gap:16px}
  .hp-hero-actions .hp-btn{min-height:46px;padding-inline:20px}
  .hp-hero-link{min-height:46px;font-size:13px}
  .hp-hero-media{padding:0 0 52px}
  .hp-backstage{padding:76px 0 80px}
  .hp-backstage-grid{gap:40px!important}
  .hp-backstage-copy h2{font-size:clamp(32px,9.2vw,40px)}
  .hp-backstage-copy p{font-size:14px}
  .hp-backstage-points article{grid-template-columns:38px minmax(0,1fr);gap:12px;padding:22px 0}
  .hp-backstage-points strong{font-size:16px}
  .hp-workfit{padding:74px 0 82px}
  .hp-workfit-head{width:min(100% - 28px,620px);margin-bottom:30px}
  .hp-workfit-head h2{font-size:clamp(30px,8.7vw,38px)}
  .hp-workfit-head p{font-size:15px}
  .hp-workfit-track,.hp-workfit-group{gap:12px}
  .hp-workfit-card{width:min(82vw,320px);border-radius:12px}
  .hp-workfit-card figcaption{left:17px;right:17px;bottom:15px;font-size:15px}
  @keyframes hp-workfit-scroll-v15{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 6px))}}
}

@media(max-width:390px){
  .hp-hero-actions{display:grid;grid-template-columns:1fr;justify-items:start}
  .hp-hero-link{min-height:38px}
}

@media(prefers-reduced-motion:reduce){
  .hp-workfit-marquee{overflow-x:auto;scrollbar-width:none;-webkit-mask-image:none;mask-image:none}
  .hp-workfit-marquee::-webkit-scrollbar{display:none}
  .hp-workfit-track{animation:none!important}
  .hp-workfit-group[aria-hidden="true"]{display:none}
  .hp-workfit-card img,.hp-workfit-card figcaption,.hp-hero-link span{transition:none}
}


/* V15.4 — dense premium bento, intentionally compact. */
.hp-hero-cta{
  display:inline-grid;
  justify-items:stretch;
  gap:13px;
}
.hp-hero-cta .hp-hero-micro{
  margin:0;
  text-align:center;
}

.hp-bento-section{
  padding:86px 0 78px;
  background:var(--v15-ivory);
}
.hp-bento-head{
  max-width:720px;
  margin:0 auto 34px;
  text-align:center;
}
.hp-bento-head>span,
.hp-device-strip-copy>span{
  display:block;
  margin-bottom:12px;
  color:var(--v15-plum);
  font-size:10px;
  font-weight:720;
  letter-spacing:.17em;
}
.hp-bento-head h2,
.hp-device-strip-copy h2{
  margin:0 0 12px;
  color:var(--v15-ink);
  font-family:var(--v15-serif);
  font-size:clamp(32px,3vw,42px);
  font-weight:500;
  line-height:1.06;
  letter-spacing:-.035em;
}
.hp-bento-head p,
.hp-device-strip-copy p{
  margin:0;
  color:var(--v15-taupe);
  font-size:15px;
  line-height:1.62;
}

.hp-bento-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:14px;
}
.hp-bento-card{
  position:relative;
  overflow:hidden;
  display:grid;
  min-width:0;
  min-height:300px;
  padding:24px;
  border:1px solid rgba(33,26,32,.085);
  border-radius:14px;
  background:#fff;
}
.hp-bento-card--agenda{
  grid-column:span 7;
  min-height:348px;
  grid-template-columns:minmax(190px,.78fr) minmax(0,1.22fr);
  gap:20px;
  align-items:center;
}
.hp-bento-card--clients{
  grid-column:span 5;
  min-height:348px;
  grid-template-rows:auto 1fr;
}
.hp-bento-card--stock,
.hp-bento-card--management,
.hp-bento-card--comms{
  grid-column:span 4;
  min-height:315px;
  grid-template-rows:auto 1fr;
}

.hp-bento-copy{
  position:relative;
  z-index:2;
  min-width:0;
}
.hp-bento-label{
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:11px;
  color:var(--v15-plum);
  font-size:9px;
  font-weight:750;
  letter-spacing:.15em;
}
.hp-bento-label span{
  color:var(--v15-gold);
  letter-spacing:.08em;
}
.hp-bento-copy h3{
  margin:0 0 10px;
  color:var(--v15-ink);
  font-family:var(--v15-serif);
  font-size:clamp(23px,2vw,30px);
  font-weight:500;
  line-height:1.09;
  letter-spacing:-.03em;
}
.hp-bento-copy p{
  max-width:420px;
  margin:0;
  color:var(--v15-taupe);
  font-size:12px;
  line-height:1.58;
}

.hp-bento-visual{
  align-self:end;
  min-width:0;
  height:150px;
  margin:18px -8px -8px;
  overflow:hidden;
  border:1px solid rgba(33,26,32,.07);
  border-radius:10px;
  background:#f8f6f3;
}
.hp-bento-visual img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:top center;
}
.hp-bento-visual--wide{
  align-self:center;
  height:245px;
  margin:0 -8px 0 0;
}
.hp-bento-visual--wide img{
  object-fit:contain;
  background:#fbf8f5;
}
.hp-bento-visual--client{
  height:180px;
}
.hp-bento-card--stock .hp-bento-visual img{object-position:top center}
.hp-bento-card--management .hp-bento-visual img{object-position:top center}
.hp-bento-card--comms .hp-bento-visual img{object-position:top center}

.hp-bento-more{
  display:flex;
  justify-content:center;
  padding-top:24px;
}
.hp-bento-more a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  color:var(--v15-ink);
  font-size:13px;
  font-weight:650;
  text-decoration:none;
  border-bottom:1px solid rgba(33,26,32,.24);
}
.hp-bento-more a span{transition:transform .2s ease}
.hp-bento-more a:hover span{transform:translateX(3px)}

.hp-device-strip{
  padding:58px 0;
  background:var(--v15-sand);
}
.hp-device-strip-grid{
  display:grid;
  grid-template-columns:minmax(280px,.86fr) minmax(0,1.14fr);
  gap:42px;
  align-items:center;
}
.hp-device-strip-copy{
  max-width:430px;
}
.hp-device-strip-copy h2{
  font-size:clamp(30px,2.8vw,40px);
}
.hp-device-strip-media{
  display:flex;
  justify-content:center;
  align-items:center;
  min-width:0;
}
.hp-device-strip-media img{
  display:block;
  width:min(480px,100%);
  max-width:100%;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 18px 34px rgba(33,26,32,.09));
}

@media(max-width:960px){
  .hp-bento-card--agenda{grid-column:span 7}
  .hp-bento-card--clients{grid-column:span 5}
  .hp-bento-card--stock,
  .hp-bento-card--management{grid-column:span 6}
  .hp-bento-card--comms{grid-column:span 12;min-height:280px;grid-template-columns:.8fr 1.2fr;gap:18px;align-items:center}
  .hp-bento-card--comms .hp-bento-visual{height:205px;margin:0 -8px 0 0}
  .hp-device-strip-grid{grid-template-columns:.9fr 1.1fr;gap:28px}
  .hp-device-strip-media img{width:min(420px,100%)}
}

@media(max-width:720px){
  .hp-bento-section{padding:68px 0 64px}
  .hp-bento-head{margin-bottom:26px;text-align:left}
  .hp-bento-head h2,.hp-device-strip-copy h2{font-size:clamp(29px,8.4vw,36px)}
  .hp-bento-grid{grid-template-columns:1fr;gap:12px}
  .hp-bento-card,
  .hp-bento-card--agenda,
  .hp-bento-card--clients,
  .hp-bento-card--stock,
  .hp-bento-card--management,
  .hp-bento-card--comms{
    grid-column:auto;
    grid-template-columns:1fr;
    grid-template-rows:auto 1fr;
    min-height:0;
    padding:20px;
  }
  .hp-bento-visual,
  .hp-bento-visual--wide,
  .hp-bento-visual--client,
  .hp-bento-card--comms .hp-bento-visual{
    height:180px;
    margin:16px -6px -6px;
  }
  .hp-bento-visual--wide img{object-fit:cover;object-position:top center}
  .hp-bento-copy h3{font-size:26px}
  .hp-device-strip{padding:52px 0 56px}
  .hp-device-strip-grid{grid-template-columns:1fr;gap:20px}
  .hp-device-strip-copy{max-width:560px}
  .hp-device-strip-media img{width:min(420px,92%);margin:0 auto}
}
@media(max-width:390px){
  .hp-hero-cta{display:block;width:100%}
  .hp-hero-cta .hp-hero-micro{width:100%;margin-top:13px;text-align:center}
}
@media(prefers-reduced-motion:reduce){
  .hp-bento-more a span{transition:none}
}


/* V15.5 — focused feature carousel: one story at a time, compact and premium. */
.hp-feature-showcase{
  padding:84px 0 76px;
  overflow:hidden;
  background:var(--v15-ivory);
}
.hp-feature-showcase-head{
  width:min(720px,calc(100% - 40px));
  margin:0 auto 34px;
  text-align:center;
}
.hp-feature-showcase-head>span{
  display:block;
  margin-bottom:12px;
  color:var(--v15-plum);
  font-size:10px;
  font-weight:720;
  letter-spacing:.17em;
}
.hp-feature-showcase-head h2{
  margin:0 0 12px;
  color:var(--v15-ink);
  font-family:var(--v15-serif);
  font-size:clamp(32px,3vw,42px);
  font-weight:500;
  line-height:1.06;
  letter-spacing:-.035em;
}
.hp-feature-showcase-head p{
  margin:0;
  color:var(--v15-taupe);
  font-size:15px;
  line-height:1.62;
}

.hp-feature-carousel{
  --feature-gap:18px;
  width:min(1320px,100%);
  margin:0 auto;
  outline:none;
}
.hp-feature-viewport{
  overflow:hidden;
  padding:8px 0 10px;
  touch-action:pan-y;
}
.hp-feature-track{
  display:flex;
  align-items:stretch;
  gap:var(--feature-gap);
  will-change:transform;
}
.hp-feature-slide{
  flex:0 0 min(76%,960px);
  min-width:0;
  height:410px;
  display:grid;
  grid-template-columns:minmax(250px,.78fr) minmax(0,1.22fr);
  gap:30px;
  align-items:center;
  overflow:hidden;
  padding:34px 34px 30px;
  border:1px solid rgba(33,26,32,.08);
  border-radius:16px;
  background:#fff;
  box-shadow:0 14px 36px rgba(33,26,32,.055);
  opacity:.48;
  transform:scale(.965);
  transition:opacity .45s ease,transform .45s ease,box-shadow .45s ease;
}
.hp-feature-carousel.is-ready .hp-feature-slide.is-current{
  opacity:1;
  transform:scale(1);
  box-shadow:0 18px 46px rgba(33,26,32,.085);
}
.hp-feature-slide--reverse{
  grid-template-columns:minmax(0,1.22fr) minmax(250px,.78fr);
}
.hp-feature-slide--reverse .hp-feature-slide-copy{order:2}
.hp-feature-slide--reverse .hp-feature-slide-media{order:1}

.hp-feature-slide--dark{
  color:#f8f6f3;
  border-color:rgba(255,255,255,.08);
  background:#211a20;
}
.hp-feature-slide--sand{background:#efeae5}
.hp-feature-slide--light{background:#fbfaf8}
.hp-feature-slide--rose{background:#eee6ea}

.hp-feature-slide-copy{
  position:relative;
  z-index:2;
  min-width:0;
  max-width:390px;
}
.hp-feature-slide-label{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:14px;
  color:var(--v15-plum);
  font-size:9px;
  font-weight:750;
  letter-spacing:.16em;
}
.hp-feature-slide-label span{
  color:var(--v15-gold);
  letter-spacing:.08em;
}
.hp-feature-slide h3{
  margin:0 0 13px;
  color:var(--v15-ink);
  font-family:var(--v15-serif);
  font-size:clamp(27px,2.3vw,35px);
  font-weight:500;
  line-height:1.07;
  letter-spacing:-.032em;
}
.hp-feature-slide p{
  max-width:360px;
  margin:0;
  color:var(--v15-taupe);
  font-size:13px;
  line-height:1.66;
}
.hp-feature-slide--dark .hp-feature-slide-label{color:#d7cdd3}
.hp-feature-slide--dark h3{color:#fffaf6}
.hp-feature-slide--dark p{color:#d7ced4}

.hp-feature-slide-media{
  min-width:0;
  height:325px;
  overflow:hidden;
  border:1px solid rgba(33,26,32,.07);
  border-radius:12px;
  background:#fff;
}
.hp-feature-slide-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:top center;
}
.hp-feature-slide-media--contain img{
  object-fit:contain;
  background:#fbf8f5;
}
.hp-feature-slide--dark .hp-feature-slide-media{
  border-color:rgba(255,255,255,.10);
  box-shadow:0 18px 32px rgba(0,0,0,.16);
}
.hp-feature-slide-media--clients img{
  object-fit:cover;
  object-position:center;
}

.hp-feature-controls{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  margin-top:16px;
}
.hp-feature-arrow{
  width:42px;
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(33,26,32,.16);
  border-radius:50%;
  background:transparent;
  color:var(--v15-ink);
  font-size:18px;
  cursor:pointer;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.hp-feature-arrow:hover{
  border-color:rgba(33,26,32,.34);
  background:#fff;
  transform:translateY(-1px);
}
.hp-feature-dots{
  display:flex;
  align-items:center;
  gap:8px;
}
.hp-feature-dot{
  width:7px;
  height:7px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(33,26,32,.22);
  cursor:pointer;
  transition:width .25s ease,background .25s ease;
}
.hp-feature-dot.is-active{
  width:28px;
  background:var(--v15-plum);
}
.hp-feature-more{
  display:flex;
  justify-content:center;
  margin-top:18px;
}
.hp-feature-more a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  color:var(--v15-ink);
  font-size:13px;
  font-weight:650;
  text-decoration:none;
  border-bottom:1px solid rgba(33,26,32,.24);
}
.hp-feature-more a span{transition:transform .2s ease}
.hp-feature-more a:hover span{transform:translateX(3px)}

@media(max-width:960px){
  .hp-feature-showcase{padding:74px 0 68px}
  .hp-feature-slide{
    flex-basis:82%;
    height:370px;
    grid-template-columns:minmax(220px,.82fr) minmax(0,1.18fr);
    gap:22px;
    padding:28px;
  }
  .hp-feature-slide--reverse{
    grid-template-columns:minmax(0,1.18fr) minmax(220px,.82fr);
  }
  .hp-feature-slide-media{height:290px}
  .hp-feature-slide h3{font-size:clamp(26px,3.2vw,32px)}
}
@media(max-width:720px){
  .hp-feature-showcase{padding:66px 0 62px}
  .hp-feature-showcase-head{
    width:min(100% - 32px,620px);
    margin-bottom:26px;
    text-align:left;
  }
  .hp-feature-showcase-head h2{font-size:clamp(29px,8.4vw,36px)}
  .hp-feature-carousel{--feature-gap:12px}
  .hp-feature-slide,
  .hp-feature-slide--reverse{
    flex-basis:88%;
    height:auto;
    min-height:440px;
    grid-template-columns:1fr;
    grid-template-rows:auto 220px;
    gap:18px;
    padding:22px;
  }
  .hp-feature-slide--reverse .hp-feature-slide-copy,
  .hp-feature-slide--reverse .hp-feature-slide-media{order:initial}
  .hp-feature-slide-copy{max-width:none}
  .hp-feature-slide h3{font-size:28px}
  .hp-feature-slide-media{height:220px}
  .hp-feature-slide p{font-size:13px}
  .hp-feature-controls{gap:14px;margin-top:12px}
  .hp-feature-arrow{width:40px;height:40px}
  .hp-feature-more{margin-top:14px}
}
@media(max-width:420px){
  .hp-feature-slide,
  .hp-feature-slide--reverse{
    flex-basis:90%;
    min-height:420px;
    grid-template-rows:auto 200px;
    padding:20px;
  }
  .hp-feature-slide-media{height:200px}
}
@media(prefers-reduced-motion:reduce){
  .hp-feature-slide,
  .hp-feature-arrow,
  .hp-feature-dot,
  .hp-feature-more a span{transition:none}
}


/* V15.6 — connected dark commercial zone. */
.hp-pricing-v15{
  padding:92px 0 86px;
  color:#f8f6f3;
  background:#211a20;
}
.hp-pricing-v15-head{
  max-width:760px;
  margin:0 auto 28px;
  text-align:center;
}
.hp-pricing-v15-head>span{
  display:block;
  margin-bottom:12px;
  color:#b49a70;
  font-size:10px;
  font-weight:750;
  letter-spacing:.17em;
}
.hp-pricing-v15-head h2{
  margin:0 0 12px;
  color:#fffaf6;
  font-family:var(--v15-serif);
  font-size:clamp(32px,3.1vw,44px);
  font-weight:500;
  line-height:1.06;
  letter-spacing:-.035em;
}
.hp-pricing-v15-head p{
  margin:0;
  color:#cfc5ca;
  font-size:15px;
  line-height:1.65;
}

.hp-billing-v15{
  margin:0 auto 24px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
}
.hp-billing-v15 button{
  color:#cfc5ca;
}
.hp-billing-v15 button.is-active{
  background:#f8f6f3;
  color:#211a20;
  box-shadow:none;
}

.hp-launch-offer{
  display:grid;
  grid-template-columns:220px 1fr;
  gap:28px;
  align-items:center;
  max-width:980px;
  margin:0 auto 22px;
  padding:18px 22px;
  border:1px solid rgba(180,154,112,.28);
  border-radius:13px;
  background:rgba(180,154,112,.08);
}
.hp-launch-offer[hidden]{display:none}
.hp-launch-offer>span{
  color:#c5aa7f;
  font-size:9px;
  font-weight:800;
  letter-spacing:.14em;
}
.hp-launch-offer h3{
  margin:0 0 4px;
  color:#fffaf6;
  font-family:var(--v15-serif);
  font-size:24px;
  font-weight:500;
}
.hp-launch-offer p{
  margin:0;
  color:#cfc5ca;
  font-size:12px;
  line-height:1.55;
}

.hp-price-grid-v15{
  max-width:980px;
  margin:0 auto;
  gap:16px;
}
.hp-price-card-v15{
  min-height:0;
  padding:28px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  background:#f8f6f3;
  box-shadow:none;
  color:#211a20;
}
.hp-price-card-v15--plus{
  position:relative;
  border-color:rgba(180,154,112,.42);
  background:#31272f;
  color:#fffaf6;
}
.hp-plan-eyebrow{
  display:block;
  margin-bottom:8px;
  color:#765f70;
  font-size:9px;
  font-weight:800;
  letter-spacing:.16em;
}
.hp-price-card-v15--plus .hp-plan-eyebrow{color:#c5aa7f}
.hp-price-card-v15 .hp-price-head h3{
  margin:0 0 7px;
  font-family:var(--v15-serif);
  font-size:30px;
  font-weight:500;
  line-height:1;
}
.hp-price-card-v15 .hp-price-head p{
  max-width:360px;
  margin:0;
  color:#625b60;
  font-size:12px;
  line-height:1.55;
}
.hp-price-card-v15--plus .hp-price-head p{color:#d5ccd1}
.hp-price-card-v15 .hp-price{
  margin:24px 0 14px;
}
.hp-price-card-v15 .hp-price strong{
  font-size:44px;
  letter-spacing:-.045em;
}
.hp-price-card-v15--plus .hp-price strong,
.hp-price-card-v15--plus .hp-price span{color:#fffaf6}
.hp-plan-sms{
  display:flex;
  align-items:baseline;
  gap:7px;
  padding:12px 0 14px;
  border-top:1px solid rgba(33,26,32,.10);
  border-bottom:1px solid rgba(33,26,32,.10);
}
.hp-price-card-v15--plus .hp-plan-sms{
  border-color:rgba(255,255,255,.11);
}
.hp-plan-sms b{font-size:17px}
.hp-plan-sms span{
  color:#766d72;
  font-size:11px;
}
.hp-price-card-v15--plus .hp-plan-sms span{color:#cfc5ca}
.hp-plan-core{
  display:grid!important;
  gap:8px!important;
  margin:16px 0 22px!important;
  padding:0!important;
  list-style:none!important;
}
.hp-plan-core li{
  min-height:0!important;
  padding:0!important;
  color:#625b60;
  font-size:12px!important;
}
.hp-plan-core li::before{
  content:'—';
  margin-right:8px;
  color:#b49a70;
}
.hp-price-card-v15--plus .hp-plan-core li{color:#d8d0d4}
.hp-price-card-v15 .hp-btn-v15{
  width:100%;
  min-height:46px;
}
.hp-btn-v15--light{
  border-color:#f8f6f3;
  background:#f8f6f3;
  color:#211a20;
  box-shadow:none;
}
.hp-price-card-v15 .hp-price-micro{
  display:block;
  margin-top:10px;
  text-align:center;
  color:#766d72;
  font-size:10px;
}
.hp-price-card-v15--plus .hp-price-micro{color:#cfc5ca}
.hp-popular-v15{
  top:18px;
  right:18px;
  padding:6px 9px;
  border-radius:999px;
  background:#b49a70;
  color:#211a20;
  font-size:8px;
  letter-spacing:.12em;
}

.hp-pricing-common{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:12px 18px;
  align-items:center;
  max-width:980px;
  margin:18px auto 0;
  padding:16px 2px 20px;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.hp-pricing-common strong{
  color:#fffaf6;
  font-size:12px;
}
.hp-pricing-common span{
  color:#bfb4ba;
  font-size:11px;
}
.hp-pricing-common a{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#fffaf6;
  font-size:11px;
  font-weight:650;
  text-decoration:none;
}
.hp-pricing-common a i{
  font-style:normal;
  color:#b49a70;
}

.hp-sms-extras-v15{
  max-width:980px;
  margin:0 auto;
  padding:26px 0 8px;
  border:0;
  border-radius:0;
  background:transparent;
}
.hp-sms-extras-v15 .hp-sms-extras__intro{
  max-width:620px;
}
.hp-sms-extras-v15 .hp-sms-extras__intro>span{
  color:#b49a70;
  font-size:9px;
  font-weight:800;
  letter-spacing:.15em;
}
.hp-sms-extras-v15 .hp-sms-extras__intro h3{
  margin:8px 0 6px;
  color:#fffaf6;
  font-family:var(--v15-serif);
  font-size:28px;
  font-weight:500;
}
.hp-sms-extras-v15 .hp-sms-extras__intro p{
  margin:0;
  color:#bfb4ba;
  font-size:12px;
  line-height:1.58;
}
.hp-sms-pack-grid-v15{
  margin-top:18px;
  gap:10px;
}
.hp-sms-pack-v15{
  min-height:76px;
  padding:15px 18px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px;
  background:rgba(255,255,255,.045);
}
.hp-sms-pack-v15--middle{
  border-color:rgba(180,154,112,.38);
  background:rgba(180,154,112,.08);
}
.hp-sms-pack-v15 .hp-sms-pack__amount{color:#fffaf6}
.hp-sms-pack-v15 .hp-sms-pack__amount small{color:#bfb4ba}
.hp-sms-pack-v15 strong{color:#fffaf6}
.hp-sms-extras__footer-v15{
  display:block;
  padding-top:12px;
  border-top:0;
  color:#a99ea4;
  font-size:10px;
}
.hp-pricing-foot{
  max-width:980px;
  margin:20px auto 0;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.10);
}
.hp-pricing-v15 .hp-cancel-note{
  color:#cfc5ca;
}
.hp-pricing-v15 .hp-payments{
  color:#cfc5ca;
}
.hp-pricing-v15 .hp-secure-badge{
  border-color:rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
}
.hp-pricing-v15 .hp-secure-badge b{color:#fffaf6}
.hp-pricing-v15 .hp-secure-badge small,
.hp-pricing-v15 .hp-tax-note{color:#9f949a}
.hp-pricing-v15 .hp-payment-badge{
  border-color:rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);
  color:#e9e2e6;
}

@media(max-width:800px){
  .hp-launch-offer{
    grid-template-columns:1fr;
    gap:8px;
  }
  .hp-pricing-common{
    grid-template-columns:1fr;
  }
}
@media(max-width:720px){
  .hp-pricing-v15{padding:72px 0 68px}
  .hp-pricing-v15-head{text-align:left}
  .hp-pricing-v15-head h2{font-size:clamp(29px,8.4vw,36px)}
  .hp-price-grid-v15{grid-template-columns:1fr}
  .hp-price-card-v15{padding:22px}
  .hp-price-card-v15 .hp-price strong{font-size:40px}
  .hp-sms-pack-grid-v15{grid-template-columns:1fr 1fr 1fr}
  .hp-sms-pack-v15{padding:13px 10px}
}
@media(max-width:480px){
  .hp-sms-pack-grid-v15{grid-template-columns:1fr}
  .hp-popular-v15{
    position:static;
    display:inline-block;
    margin:0 0 14px;
  }
}


/* V15.7 — Pricing polish: one visual family, stronger Plus hierarchy. */

.hp-price-grid-v15{
  align-items:stretch;
}

/* Both plans now belong to the same dark family. */
.hp-price-card-v15{
  border:1px solid rgba(255,255,255,.10);
  background:#2a2228;
  color:#fffaf6;
  box-shadow:none;
}

.hp-price-card-v15 .hp-plan-eyebrow{
  color:#b49a70;
}
.hp-price-card-v15 .hp-price-head h3,
.hp-price-card-v15 .hp-price strong,
.hp-price-card-v15 .hp-price span{
  color:#fffaf6;
}
.hp-price-card-v15 .hp-price-head p,
.hp-price-card-v15 .hp-plan-sms span,
.hp-price-card-v15 .hp-plan-core li,
.hp-price-card-v15 .hp-price-micro{
  color:#cfc5ca;
}
.hp-price-card-v15 .hp-plan-sms{
  border-color:rgba(255,255,255,.10);
}

/* Base is intentionally quieter. */
.hp-price-card-v15[data-plan="base"]{
  background:#292227;
  border-color:rgba(255,255,255,.09);
}
.hp-price-card-v15[data-plan="base"] .hp-btn-v15{
  border-color:rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);
  color:#fffaf6;
  box-shadow:none;
}
.hp-price-card-v15[data-plan="base"] .hp-btn-v15:hover{
  background:rgba(255,255,255,.13);
}

/* Plus is the visual hero without introducing a new palette. */
.hp-price-card-v15--plus{
  position:relative;
  isolation:isolate;
  transform:translateY(-7px);
  border:1px solid rgba(180,154,112,.76);
  background:
    linear-gradient(180deg,rgba(180,154,112,.09),rgba(180,154,112,0) 40%),
    #352a33;
  box-shadow:0 20px 48px rgba(0,0,0,.22);
}
.hp-price-card-v15--plus::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:-1px -1px auto;
  height:3px;
  border-radius:16px 16px 0 0;
  background:#b49a70;
}
.hp-price-card-v15--plus .hp-btn-v15--light{
  border-color:#f8f6f3;
  background:#f8f6f3;
  color:#211a20;
  box-shadow:none;
}

/* Refined badge: light weight and cleaner rendering. */
.hp-popular-v15{
  top:18px;
  right:18px;
  padding:7px 10px 6px;
  border:1px solid rgba(180,154,112,.48);
  border-radius:999px;
  background:rgba(180,154,112,.14);
  color:#e1c79e;
  font-family:var(--v15-sans);
  font-size:8px;
  font-weight:600;
  line-height:1;
  letter-spacing:.16em;
  text-rendering:geometricPrecision;
  -webkit-font-smoothing:antialiased;
}

/* Launch offer remains inside the same visual family. */
.hp-launch-offer{
  border-color:rgba(180,154,112,.24);
  background:rgba(255,255,255,.035);
}
.hp-launch-offer h3{color:#fffaf6}
.hp-launch-offer p{color:#bfb4ba}

/* SMS extras are integrated into the dark section instead of living in a white box. */
.hp-sms-extras-v15{
  position:relative;
  max-width:980px;
  margin:0 auto;
  padding:28px 0 4px;
  border:0;
  border-radius:0;
  background:transparent;
}
.hp-sms-extras-v15 .hp-sms-extras__intro{
  max-width:680px;
}
.hp-sms-extras-v15 .hp-sms-extras__intro>span{
  color:#b49a70;
}
.hp-sms-extras-v15 .hp-sms-extras__intro h3{
  color:#fffaf6;
}
.hp-sms-extras-v15 .hp-sms-extras__intro p{
  color:#bfb4ba;
}

.hp-sms-pack-grid-v15{
  margin-top:18px;
  gap:10px;
}
.hp-sms-pack-v15{
  min-height:74px;
  padding:15px 18px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:11px;
  background:rgba(255,255,255,.04);
  box-shadow:none;
}
.hp-sms-pack-v15--middle{
  border-color:rgba(180,154,112,.42);
  background:rgba(180,154,112,.075);
}
.hp-sms-pack-v15 .hp-sms-pack__amount,
.hp-sms-pack-v15 strong{
  color:#fffaf6;
}
.hp-sms-pack-v15 .hp-sms-pack__amount{
  font-family:var(--v15-serif);
  font-size:25px;
  font-weight:500;
  letter-spacing:-.025em;
}
.hp-sms-pack-v15 .hp-sms-pack__amount small{
  color:#bfb4ba;
  font-family:var(--v15-sans);
  font-size:9px;
  font-weight:700;
  letter-spacing:.12em;
}
.hp-sms-pack-v15 strong{
  font-size:16px;
  font-weight:650;
}
.hp-sms-extras__footer-v15{
  margin-top:10px;
  padding:0;
  border:0;
  background:transparent;
  color:#9f949a;
  font-size:10px;
  text-align:left;
}

/* One payment seal only. */
.hp-payments-v15-clean{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
  margin-top:16px;
}
.hp-secure-badge-v15{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-width:0;
  padding:10px 14px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:999px;
  background:rgba(255,255,255,.035);
}
.hp-secure-badge-v15__mark{
  color:#b49a70;
  font-size:16px;
  line-height:1;
}
.hp-secure-badge-v15 b{
  display:block;
  color:#fffaf6;
  font-size:11px;
  font-weight:650;
  line-height:1.2;
}
.hp-secure-badge-v15 small{
  display:block;
  margin-top:2px;
  color:#9f949a;
  font-size:8px;
  line-height:1.2;
}
.hp-tax-note-v15{
  margin:0;
  color:#746a70!important;
  font-size:9px!important;
  text-align:center;
}

/* Any legacy payment marks are suppressed. */
.hp-pricing-v15 .hp-payment-marks{
  display:none!important;
}

.hp-pricing-foot{
  margin-top:18px;
  padding-top:16px;
}
.hp-pricing-v15 .hp-cancel-note{
  margin-bottom:10px;
}

@media(max-width:720px){
  .hp-price-card-v15--plus{
    transform:none;
  }
  .hp-price-card-v15--plus::before{
    height:2px;
  }
  .hp-sms-extras__footer-v15{
    text-align:center;
  }
}


/* V15.8 — Pricing refinement */

/* Plus: one continuous stronger gold outline around the whole card. */
.hp-price-card-v15--plus{
  transform:translateY(-7px);
  border:2px solid #b49a70;
  background:
    linear-gradient(180deg,rgba(180,154,112,.085),rgba(180,154,112,0) 40%),
    #352a33;
  box-shadow:0 20px 48px rgba(0,0,0,.22);
}
.hp-price-card-v15--plus::before{
  display:none;
}

/* Keep one divider only inside each plan card. */
.hp-price-card-v15 .hp-plan-sms{
  padding:12px 0 14px;
  border-top:0!important;
  border-bottom:1px solid rgba(255,255,255,.11)!important;
}
.hp-price-card-v15 .hp-plan-core{
  border-top:0!important;
  margin-top:14px!important;
  padding-top:0!important;
}

/* Slightly cleaner /month treatment. */
.hp-price-card-v15 .hp-plan-sms span{
  margin-left:2px;
  color:#aaa0a6;
  font-size:11px;
  font-weight:500;
}

/* Common access statement becomes a proper bridge between plans and offer. */
.hp-pricing-common{
  grid-template-columns:1fr auto;
  gap:12px 22px;
  padding:17px 2px 18px;
}
.hp-pricing-common strong{
  color:#fffaf6;
  font-size:12px;
  font-weight:650;
}
.hp-pricing-common>span{
  display:none;
}

/* Offer now sits after the plans; give it tighter spacing as a transitional strip. */
.hp-pricing-common + .hp-launch-offer{
  margin-top:4px;
  margin-bottom:6px;
}

/* Annual mode: hiding the offer no longer changes the position/height of the plan cards above. */
.hp-launch-offer[hidden]{
  display:none!important;
}

@media(max-width:800px){
  .hp-pricing-common{
    grid-template-columns:1fr;
  }
}
@media(max-width:720px){
  .hp-price-card-v15--plus{
    transform:none;
  }
}


/* V15.9 — SMS Extra becomes its own compact section. */
.hp-sms-standalone{
  padding:68px 0 70px;
  background:#f3efeb;
  border-top:1px solid rgba(33,26,32,.06);
  border-bottom:1px solid rgba(33,26,32,.06);
}

.hp-sms-standalone-grid{
  display:grid;
  grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);
  gap:clamp(44px,6vw,86px);
  align-items:center;
}

.hp-sms-standalone-head{
  max-width:470px;
}

.hp-sms-standalone-head>span{
  display:block;
  margin-bottom:11px;
  color:#765f70;
  font-size:9px;
  font-weight:750;
  letter-spacing:.17em;
}

.hp-sms-standalone-head h2{
  margin:0 0 13px;
  color:#211a20;
  font-family:var(--v15-serif);
  font-size:clamp(31px,3vw,42px);
  font-weight:500;
  line-height:1.06;
  letter-spacing:-.035em;
}

.hp-sms-standalone-head p{
  margin:0;
  color:#625b60;
  font-size:13px;
  line-height:1.68;
}

.hp-sms-standalone-head small{
  display:block;
  margin-top:16px;
  color:#887e83;
  font-size:9px;
  line-height:1.45;
}

.hp-sms-standalone-packs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:11px;
}

.hp-sms-standalone-pack{
  min-height:118px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:19px 18px 17px;
  border:1px solid rgba(33,26,32,.10);
  border-radius:13px;
  background:rgba(255,255,255,.55);
  box-shadow:0 8px 24px rgba(33,26,32,.025);
}

.hp-sms-standalone-pack>div{
  display:flex;
  align-items:baseline;
  gap:6px;
}

.hp-sms-standalone-pack strong{
  color:#211a20;
  font-family:var(--v15-serif);
  font-size:32px;
  font-weight:500;
  line-height:1;
  letter-spacing:-.035em;
}

.hp-sms-standalone-pack span{
  color:#765f70;
  font-size:9px;
  font-weight:750;
  letter-spacing:.12em;
}

.hp-sms-standalone-pack>b{
  color:#211a20;
  font-size:16px;
  font-weight:650;
}

.hp-sms-standalone-pack--accent{
  border-color:rgba(180,154,112,.55);
  background:rgba(180,154,112,.08);
}

@media(max-width:800px){
  .hp-sms-standalone{
    padding:58px 0 60px;
  }
  .hp-sms-standalone-grid{
    grid-template-columns:1fr;
    gap:28px;
  }
  .hp-sms-standalone-head{
    max-width:650px;
  }
}

@media(max-width:560px){
  .hp-sms-standalone{
    padding:50px 0 52px;
  }
  .hp-sms-standalone-packs{
    grid-template-columns:1fr;
  }
  .hp-sms-standalone-pack{
    min-height:78px;
    flex-direction:row;
    align-items:center;
    padding:16px 17px;
  }
  .hp-sms-standalone-pack strong{
    font-size:28px;
  }
}

/* Old in-pricing SMS styles are intentionally disabled after extraction. */
.hp-pricing-v15 .hp-sms-extras-v15{
  display:none!important;
}


/* V15.10 — SMS Extra polish */

/* Packs become centered, self-contained price options. */
.hp-sms-standalone-pack{
  align-items:center;
  justify-content:center;
  gap:15px;
  text-align:center;
}

.hp-sms-standalone-pack>div{
  display:flex;
  justify-content:center;
  align-items:baseline;
  gap:6px;
  width:100%;
}

.hp-sms-standalone-pack>b{
  width:100%;
  text-align:center;
}

/* IVA note mirrors the commercial/legal note used in pricing. */
.hp-sms-standalone-vat{
  grid-column:1 / -1;
  margin-top:26px;
  padding-top:16px;
  border-top:1px solid rgba(33,26,32,.08);
  color:#8b8186;
  font-size:9px;
  line-height:1.45;
  text-align:center;
}

@media(max-width:560px){
  .hp-sms-standalone-pack{
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:10px;
    text-align:center;
  }
  .hp-sms-standalone-pack>div{
    width:auto;
  }
  .hp-sms-standalone-pack>b{
    width:auto;
  }
  .hp-sms-standalone-vat{
    margin-top:20px;
  }
}


/* ==========================================================
   V15.11 — Final homepage close
   ========================================================== */

/* --- Pricing card alignment --- */
.hp-price-grid-v15{
  align-items:stretch;
}
.hp-price-card-v15,
.hp-price-card-v15--plus{
  height:100%;
  transform:none!important;
  display:grid!important;
  grid-template-rows:auto auto auto 1fr auto auto;
  align-content:stretch;
  padding:28px!important;
}
.hp-price-card-v15--plus{
  border:2px solid #b49a70;
}
.hp-price-card-v15 .hp-price-head{
  min-height:76px;
}
.hp-price-card-v15 .hp-price{
  min-height:54px;
  display:flex;
  align-items:baseline;
  margin:22px 0 12px;
}
.hp-price-card-v15 .hp-plan-sms{
  min-height:46px;
  display:flex;
  align-items:center;
}
.hp-price-card-v15 .hp-plan-core{
  align-content:start;
  margin-bottom:20px!important;
}
.hp-price-card-v15 .hp-btn-v15{
  align-self:end;
  margin-top:0!important;
}
.hp-price-card-v15 .hp-price-micro{
  align-self:start;
}
.hp-price-card-v15--plus::before{
  display:none!important;
}

/* --- Editorial trust / product philosophy block --- */
.hp-trust-v15{
  padding:82px 0 84px;
  background:#efeae5;
}
.hp-trust-v15-grid{
  display:grid;
  grid-template-columns:minmax(300px,.92fr) minmax(0,1.08fr);
  gap:clamp(52px,7vw,96px);
  align-items:start;
}
.hp-trust-v15-copy{
  max-width:520px;
}
.hp-trust-v15-copy>span{
  display:block;
  margin-bottom:13px;
  color:#765f70;
  font-size:9px;
  font-weight:750;
  letter-spacing:.17em;
}
.hp-trust-v15-copy h2{
  margin:0;
  color:#211a20;
  font-family:var(--v15-serif);
  font-size:clamp(32px,3.35vw,46px);
  font-weight:500;
  line-height:1.06;
  letter-spacing:-.038em;
}
.hp-trust-v15-points{
  display:block;
  border-top:1px solid rgba(33,26,32,.13);
}
.hp-trust-v15-points article{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:14px;
  padding:19px 0 20px;
  border-bottom:1px solid rgba(33,26,32,.13);
  background:transparent;
}
.hp-trust-v15-points article>span{
  padding-top:2px;
  color:#b49a70;
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
}
.hp-trust-v15-points strong{
  display:block;
  color:#211a20;
  font-size:14px;
  font-weight:650;
}
.hp-trust-v15-points p{
  margin:5px 0 0;
  color:#625b60;
  font-size:11px;
  line-height:1.55;
}

/* --- Compact, single-column FAQ --- */
.hp-faq-v15{
  padding:78px 0 82px;
  background:#f8f6f3;
}
.hp-faq-v15-head{
  max-width:700px;
  margin:0 auto 30px;
  text-align:center;
}
.hp-faq-v15-head>span{
  display:block;
  margin-bottom:11px;
  color:#765f70;
  font-size:9px;
  font-weight:750;
  letter-spacing:.17em;
}
.hp-faq-v15-head h2{
  margin:0 0 11px;
  color:#211a20;
  font-family:var(--v15-serif);
  font-size:clamp(31px,3vw,42px);
  font-weight:500;
  line-height:1.04;
  letter-spacing:-.035em;
}
.hp-faq-v15-head p{
  margin:0;
  color:#625b60;
  font-size:13px;
  line-height:1.6;
}
.hp-faq-v15-list{
  max-width:780px;
  margin:0 auto;
  border-top:1px solid rgba(33,26,32,.12);
}
.hp-faq-v15-list details{
  border:0!important;
  border-bottom:1px solid rgba(33,26,32,.12)!important;
  border-radius:0!important;
  background:transparent!important;
}
.hp-faq-v15-list summary{
  min-height:62px;
  padding:18px 2px!important;
  color:#211a20;
  font-size:13px!important;
  font-weight:650!important;
}
.hp-faq-v15-list summary i{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:26px;
  height:26px;
  color:#765f70!important;
  font-size:17px!important;
  font-weight:400;
  transition:transform .2s ease;
}
.hp-faq-v15-list details[open] summary i{
  transform:rotate(45deg);
}
.hp-faq-v15-list details p{
  padding:0 42px 20px 2px!important;
  color:#625b60!important;
  font-size:12px!important;
  line-height:1.65!important;
}
.hp-faq-v15-link{
  display:flex;
  width:max-content;
  align-items:center;
  gap:7px;
  margin:22px auto 0;
  color:#211a20;
  font-size:12px;
  font-weight:650;
  text-decoration:none;
  border-bottom:1px solid rgba(33,26,32,.24);
}
.hp-faq-v15-link span{
  color:#b49a70;
}

/* --- Final CTA: strong close that echoes the top of the site --- */
.hp-final-v15{
  padding:0!important;
  background:#211a20!important;
  color:#fffaf6!important;
}
.hp-final-v15-inner{
  max-width:840px;
  padding:72px 0 74px;
  text-align:center;
}
.hp-final-v15-inner>span{
  display:block;
  margin-bottom:13px;
  color:#b49a70!important;
  font-size:9px!important;
  font-weight:750!important;
  letter-spacing:.17em!important;
}
.hp-final-v15-inner h2{
  margin:0 0 14px!important;
  color:#fffaf6!important;
  font-family:var(--v15-serif)!important;
  font-size:clamp(34px,3.6vw,48px)!important;
  font-weight:500!important;
  line-height:1.04!important;
  letter-spacing:-.04em!important;
}
.hp-final-v15-inner p{
  max-width:620px;
  margin:0 auto 24px!important;
  color:#cfc5ca!important;
  font-size:14px!important;
  line-height:1.65!important;
}
.hp-final-v15-btn{
  min-height:47px;
  padding-inline:24px;
  border-color:#f8f6f3!important;
  background:#f8f6f3!important;
  color:#211a20!important;
  box-shadow:none!important;
}

/* --- Minimal footer --- */
.hp-footer-v15{
  padding:46px 0 20px!important;
  border-top:0!important;
  background:#f8f6f3!important;
}
.hp-footer-v15-grid{
  display:grid;
  grid-template-columns:minmax(260px,1.7fr) repeat(3,minmax(120px,1fr));
  gap:clamp(28px,5vw,66px);
  align-items:start;
}
.hp-footer-v15-brand img{
  display:block;
  width:140px;
}
.hp-footer-v15-brand p{
  max-width:310px;
  margin:15px 0 0;
  color:#625b60;
  font-size:11px;
  line-height:1.6;
}
.hp-footer-v15-col{
  display:grid;
  align-content:start;
  gap:9px;
}
.hp-footer-v15-col b{
  margin-bottom:4px;
  color:#211a20;
  font-size:10px;
  font-weight:750;
  letter-spacing:.04em;
}
.hp-footer-v15-col a{
  color:#625b60!important;
  font-size:10px!important;
  line-height:1.4!important;
  text-decoration:none;
}
.hp-footer-v15-col a:hover{
  color:#211a20!important;
}
.hp-footer-v15-bottom{
  margin-top:32px;
  padding-top:16px;
  border-top:1px solid rgba(33,26,32,.09);
  color:#8c8287;
  font-size:9px;
}

/* Remove old-grid rules from affecting the new footer. */
.hp-footer-v15 .hp-footer-grid{
  display:none!important;
}

@media(max-width:960px){
  .hp-trust-v15-grid{
    grid-template-columns:1fr;
    gap:38px;
  }
  .hp-trust-v15-copy{
    max-width:700px;
  }
  .hp-footer-v15-grid{
    grid-template-columns:1.5fr 1fr 1fr;
  }
  .hp-footer-v15-brand{
    grid-column:1/-1;
  }
}

@media(max-width:720px){
  .hp-price-card-v15,
  .hp-price-card-v15--plus{
    min-height:0;
    padding:22px!important;
    grid-template-rows:auto auto auto auto auto auto;
  }
  .hp-price-card-v15 .hp-price-head{
    min-height:0;
  }
  .hp-price-card-v15 .hp-price{
    min-height:0;
  }
  .hp-price-card-v15 .hp-plan-sms{
    min-height:0;
  }

  .hp-trust-v15{
    padding:64px 0 66px;
  }
  .hp-trust-v15-grid{
    gap:30px;
  }
  .hp-trust-v15-copy h2{
    font-size:clamp(30px,8.5vw,38px);
  }

  .hp-faq-v15{
    padding:62px 0 66px;
  }
  .hp-faq-v15-head{
    text-align:left;
  }
  .hp-faq-v15-head h2{
    font-size:clamp(30px,8.5vw,38px);
  }

  .hp-final-v15-inner{
    padding:58px 0 60px;
  }

  .hp-footer-v15-grid{
    grid-template-columns:1fr 1fr;
    gap:30px 22px;
  }
  .hp-footer-v15-brand{
    grid-column:1/-1;
  }
}

@media(max-width:430px){
  .hp-footer-v15-grid{
    grid-template-columns:1fr;
  }
  .hp-footer-v15-brand{
    grid-column:auto;
  }
}

@media(prefers-reduced-motion:reduce){
  .hp-faq-v15-list summary i{
    transition:none;
  }
}


/* V15.12 — micro-fix: centre the launch offer between its separators. */
.hp-pricing-common + .hp-launch-offer{
  margin-top:18px!important;
  margin-bottom:18px!important;
}
