/* Contact channels and responsive refinements, September 2026. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.header nav{align-items:center}
.header nav a{display:flex;align-items:center;min-height:44px}
.hero-copy,.hero>*,.section-head>*,.product-grid>*,.about-grid>*{min-width:0}
.buy-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.buy-steps h3{line-height:1.6}
.buy-section .section-head>div{flex:1}
.channel-status{max-width:none;padding:24px 28px;background:#fff;border:1px solid #cbd6ea;border-left:4px solid var(--blue);border-radius:0 8px 8px 0}
.channel-status strong{display:block;line-height:1.7}
.channel-status p{margin-bottom:0}
.contact-section{padding-top:52px;scroll-margin-top:24px}
.contact-intro{max-width:720px}
.contact-intro>p:last-child{margin-top:16px;font-size:16px;color:var(--muted);line-height:1.9}
.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px}
.contact-card{display:flex;flex-direction:column;align-items:flex-start;padding:28px;background:#fff;border:1px solid var(--line);border-radius:10px;min-width:0}
.contact-label{font-size:14px;font-weight:600;color:var(--blue);margin-bottom:12px}
.contact-card h3{font:600 clamp(18px,2vw,23px)/1.5 Arial,sans-serif;letter-spacing:0;overflow-wrap:anywhere;max-width:100%}
.contact-card h3 a:hover{text-decoration:underline;text-underline-offset:4px}
.contact-card>p:not(.contact-label){font-size:16px;line-height:1.9;color:var(--muted);margin:16px 0 24px}
.contact-card .button{margin-top:auto;max-width:100%;text-align:center}
.faq details a{color:var(--blue);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.footer-contact{display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--muted)}
.footer-contact a{display:flex;align-items:center;min-height:36px;overflow-wrap:anywhere}
.product .button{text-align:center}
@media(min-width:701px) and (max-width:950px){
  .hero{grid-template-columns:1fr 1fr;gap:28px}
  .hero h1{font-size:clamp(32px,4.3vw,42px)}
  .hero .lead br{display:none}
  .math-card{min-width:0}
}
@media(max-width:850px){
  .header{gap:20px}
  .header nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%}
  .header nav a{justify-content:center;text-align:center;padding:8px;border-radius:6px;background:var(--pale);line-height:1.6;font-size:14px}
  .header nav a:hover{background:#e9effb;text-decoration:none}
  .contact-grid{gap:20px}
  .contact-card{padding:24px}
}
@media(max-width:700px){
  .wrap{width:calc(100% - 40px)}
  .header{padding-block:22px 20px}
  .header nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:visible;white-space:normal}
  .header nav a{min-height:46px;font-size:14px}
  .brand-lockup{width:245px;max-width:100%}
  .brand .byline{margin-left:55px;font-size:13px}
  .hero{grid-template-columns:1fr;gap:36px;padding-block:34px 48px}
  .hero h1{font-size:clamp(30px,9.4vw,43px);letter-spacing:-.5px;line-height:1.5}
  .hero .lead{font-size:18px;line-height:1.9}
  .hero .lead br{display:none}
  .brand-promise{font-size:12px;letter-spacing:.7px;line-height:1.7;margin-bottom:22px}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:stretch;margin-top:26px}
  .hero-actions .button,.hero-actions .text-link{display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px 8px;font-size:15px;text-align:center}
  .hero-actions .text-link{border:1px solid var(--line);border-radius:7px}
  .math-card{width:calc(100% - 12px);max-width:430px;padding:20px;transform:rotate(1deg);box-shadow:7px 7px 0 #eef2fa}
  .math-card-foot{flex-wrap:wrap;gap:12px;font-size:14px}
  .math-card .equation{font-size:21px}
  .topic-strip .wrap{display:grid;grid-template-columns:1fr;gap:7px;padding-block:20px;font-size:14px}
  .section,.learning-section{padding-block:44px}
  h2{font-size:28px;line-height:1.55;letter-spacing:0}
  .section-head{display:block;margin-bottom:24px}
  .section-head>p{font-size:16px;line-height:1.9;margin-top:14px}
  .section-head>p br{display:none}
  .learning-intro h2{font-size:clamp(23px,6.5vw,32px);letter-spacing:-.6px;line-height:1.6}
  .learning-pillars{gap:24px;margin-top:28px}
  .learning-pillars h4{font-size:19px}
  .learning-principle{font-size:16px;line-height:1.95}
  .product-grid{grid-template-columns:1fr;gap:24px}
  .product{grid-template-columns:1fr;gap:24px;padding:24px}
  .cover-link{width:158px;max-width:100%;padding:9px;justify-self:center}
  .product h3{font-size:21px;line-height:1.65}
  .product-kind,.product-facts,.price-note{font-size:14px}
  .product .button{width:100%;font-size:15px;min-height:48px;padding:12px}
  .price-line{justify-content:space-between;gap:8px}
  .availability{font-size:15px;line-height:1.9;padding:18px}
  .learners,.teaching,.about-grid,.faq{grid-template-columns:1fr;gap:28px}
  .teaching{padding-top:8px}
  .license-panel{padding:22px}
  .license-panel p{font-size:15px;line-height:1.9}
  .buy-section{padding-block:44px}
  .buy-steps{grid-template-columns:1fr;gap:0;margin:28px 0}
  .buy-steps li{display:grid;grid-template-columns:38px minmax(0,1fr);gap:6px 16px;padding:24px 0;border-top:1px solid #ced9ea}
  .buy-steps li::before{grid-column:1;grid-row:1 / 3;font-size:24px;margin:4px 0 0}
  .buy-steps h3{grid-column:2;font-size:20px;margin:0}
  .buy-steps p{grid-column:2;font-size:16px;line-height:1.9}
  .channel-status{padding:20px}
  .channel-status strong{font-size:18px}
  .contact-section{padding-top:40px}
  .contact-grid{grid-template-columns:1fr;gap:18px;margin-top:24px}
  .contact-card{padding:24px;align-items:stretch}
  .contact-card h3{font-size:clamp(18px,5.1vw,23px)}
  .contact-card .button{width:100%;font-size:15px;min-height:48px}
  .faq{gap:24px}
  .faq summary{font-size:16px;line-height:1.8}
  .faq details{padding-block:20px}
  .footer>.wrap{align-items:flex-start;flex-direction:column;gap:20px}
  .footer p{display:block}
  .footer-contact{gap:4px;width:100%}
  .footer-contact a{min-height:44px}
}
@media(max-width:360px){
  .wrap{width:calc(100% - 32px)}
  .product,.contact-card{padding:20px}
  .hero-actions{grid-template-columns:1fr}
  .brand-promise{font-size:12px;letter-spacing:.25px}
  .hero-copy .eyebrow{letter-spacing:0}
  .header nav a{font-size:14px;padding-inline:5px}
}
@media print{.contact-section{display:none}}
