/* Somateka commerce v1 — calm paper, real product, no speculative promises. */

.commerce-v3 .portal-hero .lead,
.commerce-v3 .portal-section-head>p,
.commerce-v3 .access-request>div>p{
  max-width:46rem;
  color:#555851;
  font-size:clamp(18px,1.35vw,21px);
  line-height:1.7;
}
.commerce-v3 .portal-hero{background:#f4efe6}
.commerce-v3 .portal-hero h1{max-width:15ch}
.commerce-v3 .portal-hero-aside{padding:30px;background:#25241f;color:#f8f3e9}
.commerce-v3 .portal-hero-aside>b{color:#fff}
.commerce-v3 .portal-hero-aside li{color:rgba(248,243,233,.78)}
.commerce-v3 .portal-hero-aside li::before{color:#d99a80}

.guide-offer{
  position:relative;
  overflow:hidden;
  padding:118px 0 128px;
  background:#e6ded2;
  color:#24231f;
}
.guide-offer::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(rgba(241,235,225,.85),rgba(241,235,225,.85)),url("media/somateka-ivory-stone-texture-lossless-v1.webp") center/980px auto repeat;
  opacity:.72;
  pointer-events:none;
}
.guide-offer-grid{
  position:relative;
  display:grid;
  grid-template-columns:minmax(330px,.72fr) minmax(520px,1.28fr);
  gap:clamp(64px,8vw,132px);
  align-items:center;
}
.guide-offer-cover{position:relative;margin:0}
.guide-offer-cover::before{
  content:"";
  position:absolute;
  inset:9% -7% -5% 8%;
  border:1px solid rgba(57,52,44,.28);
}
.guide-offer-cover img{
  position:relative;
  display:block;
  width:100%;
  height:auto;
  box-shadow:0 34px 70px rgba(39,33,25,.22);
}
.guide-offer-cover figcaption{
  position:relative;
  margin-top:24px;
  color:#66675f;
  font-size:15px;
  line-height:1.55;
}
.guide-offer-copy .portal-kicker{margin-bottom:25px;color:#884c3c}
.guide-offer-copy h2{
  max-width:12ch;
  margin:0;
  font-family:var(--ed-serif);
  font-size:clamp(54px,5.2vw,80px);
  font-weight:500;
  letter-spacing:-.052em;
  line-height:1.02;
}
.guide-offer-copy>.lead{
  max-width:43rem;
  margin:31px 0 33px;
  color:#52544f;
  font-size:20px;
  line-height:1.72;
}
.guide-offer-facts{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin:0 0 38px;
  border-block:1px solid rgba(59,55,47,.28);
}
.guide-offer-facts>div{padding:19px 22px 21px 0}
.guide-offer-facts>div+div{padding-left:22px;border-left:1px solid rgba(59,55,47,.22)}
.guide-offer-facts dt{color:#77766f;font-size:13px;font-weight:650;letter-spacing:.06em;text-transform:uppercase}
.guide-offer-facts dd{margin:7px 0 0;font-family:var(--ed-serif);font-size:22px;line-height:1.3}
.guide-form{max-width:45rem;padding:32px;border:1px solid rgba(54,50,43,.28);background:rgba(251,248,241,.78)}
.guide-form .row2{display:grid;grid-template-columns:.85fr 1.15fr;gap:18px}
.guide-form .field{margin-bottom:19px}
.guide-form label{display:block;margin-bottom:8px;color:#40423e;font-size:15px;font-weight:650}
.guide-form input{
  width:100%;
  min-height:54px;
  padding:13px 15px;
  border:1px solid #a7a397;
  border-radius:0;
  background:#fbf8f1;
  color:#24231f;
  font:17px/1.45 var(--ed-sans);
}
.guide-form input:focus{outline:2px solid #9b5b48;outline-offset:2px}
.guide-form .consent{display:flex;gap:10px;align-items:flex-start;margin:1px 0 20px;color:#565850;font-size:14px;font-weight:450;line-height:1.55}
.guide-form .consent input{width:18px;min-height:18px;margin-top:2px;flex:0 0 auto}
.guide-form-note{margin:18px 0 0;color:#66675f;font-size:14px;line-height:1.58}
.guide-form .form-ok{margin-top:18px;color:#35372f;font-size:16px;line-height:1.55}
.guide-form .form-ok a{color:#7b3f31;font-weight:700;text-underline-offset:3px}

.pricing-row .availability-note{display:block;margin-top:9px;color:#7e4334;font-size:14px;line-height:1.45}
.pricing-row.featured .price b{font-size:clamp(22px,2vw,30px)}
.pricing-row.featured{border-color:#9b5b48}

@media(max-width:960px){
  .guide-offer-grid{grid-template-columns:minmax(260px,.75fr) minmax(420px,1.25fr);gap:50px}
  .guide-offer-copy h2{font-size:56px}
  .guide-offer-facts{grid-template-columns:1fr}
  .guide-offer-facts>div+div{padding-left:0;border-left:0;border-top:1px solid rgba(59,55,47,.22)}
}
@media(max-width:720px){
  .guide-offer{padding:82px 0 90px}
  .guide-offer-grid{grid-template-columns:1fr;gap:56px}
  .guide-offer-cover{max-width:440px;margin:auto}
  .guide-offer-copy h2{font-size:46px}
  .guide-offer-copy>.lead{font-size:18px;line-height:1.68}
  .guide-form{padding:24px}
  .guide-form .row2{grid-template-columns:1fr;gap:0}
  .commerce-v3 .portal-hero-aside{padding:26px 22px}
}
