/* Institutional reading rhythm: one concise topic, optional detail, natural growth. */
html{scroll-padding-top:0}
.chapter[id],.section-wrap[id],.contact-section[id]{scroll-margin-top:0}
.chapter,.hero{min-height:100svh;padding:124px 6% 36px;align-items:center}
.chapter-copy,.hero-copy{width:47%;max-width:590px}
.hero h1{font-size:clamp(48px,5.5vw,78px)}
.hero-description{font-size:16px;line-height:1.7;max-width:420px;margin-top:24px}
.hero-overview{font-size:12px;margin-top:26px;color:var(--ink);display:flex;flex-wrap:wrap;gap:10px}
.hero-overview span{color:var(--lime)}
.hero-bottom{bottom:25px;left:6%;right:6%}
.hero-bottom-note{left:auto;right:0;transform:none}
/* Reserve an actual row for the scroll cue, including at enlarged browser zoom. */
@media(min-width:761px){
  .hero{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:1fr auto;row-gap:28px}
  .hero-bottom{position:static;inset:auto;width:100%;gap:20px}
  .hero-bottom-note{position:static;transform:none;margin-left:auto}
}
.chapter h2,.section-wrap h2,.about-copy h2,.faq-heading h2,.contact-section h2,.brands-section .section-heading h2{font-size:clamp(34px,3.8vw,54px);line-height:1.08}
.eyebrow,.eyebrow.section-label{margin-bottom:16px}
.chapter-copy>p:not(.eyebrow){font-size:14px;margin-top:18px;max-width:450px}
.feature-list{margin:24px 0 0;gap:22px;max-width:450px}
.feature-list h3{font-size:16px;line-height:1.35;margin-bottom:6px}
.feature-list p{font-size:14px;line-height:1.6}
.steps{max-width:450px;margin:24px 0 0}
.steps li{padding-bottom:22px;gap:16px}
.steps h3{font-size:16px;margin:2px 0 6px}
.steps p{font-size:14px;line-height:1.6}
.solution-tabs{max-width:480px;margin-top:22px}
.solution-tabs button{font-size:13px;min-height:44px;padding:10px}
.solution-panel{max-width:480px;padding:22px;margin-top:12px}
.solution-panel h3{font-size:22px}
.solution-panel>p{font-size:14px;line-height:1.55;margin-top:10px}
.solution-use-cases{list-style:none;margin:16px 0 0;padding:0}
.solution-use-cases li{border:0;padding:0}
.solution-use-cases details{border-top:1px solid var(--line)}
.solution-use-cases summary{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:44px;list-style:none;cursor:pointer;font-size:13px;line-height:1.4;color:var(--ink)}
.solution-use-cases summary::-webkit-details-marker{display:none}
.solution-use-cases summary>span{font-size:20px;font-weight:300;color:var(--lime);flex-shrink:0}
.solution-use-cases details[open] summary>span{transform:rotate(45deg)}
.solution-use-cases details p{font-size:13px;line-height:1.7;margin:0;padding:4px 0 14px}
.solution-api-details{margin:0;border-bottom:0;scroll-margin-top:120px}
.solution-api-details summary{font-size:13px;min-height:44px;padding:10px 0}
.section-wrap:not(.site-footer){min-height:100svh;padding:124px 6% 36px;align-content:center}
.section-heading{gap:24px}
.section-heading>p{font-size:14px;line-height:1.6;max-width:270px}
.incentive-section{gap:6%;grid-template-columns:1fr 1fr}
.incentive-copy{max-width:500px}
.incentive-copy>p:not(.eyebrow){font-size:14px;line-height:1.6;margin-top:16px}
.incentive-copy p.occasion-hint{font-size:12px;margin-top:18px}
.recognition-demo{max-width:420px}
.brand-filters{margin:24px 0 20px}
.brand-filters button{min-height:44px;font-size:13px}
.brand-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.brand-tile{min-height:118px;padding:12px}
.brand-tile img{height:58px}
.brand-tile .brand-name{font-size:13px;margin:8px 0 0}
.brand-tile>span{font-size:10px;padding-top:4px}
.brands-bottom{margin-top:16px}
.brands-bottom p,.fine-print{font-size:11px;line-height:1.5}
.fine-print{margin-top:10px}
.brand-pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:12px;font-size:12px;color:var(--muted)}
.brand-pagination[hidden]{display:none}
.brand-pagination button{height:44px;width:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:rgba(152,204,149,.06);color:var(--lime);font-size:20px}
.brand-pagination button:disabled{opacity:.3;cursor:default}
.compact-select{display:none}
.about-section{gap:6%}
.about-copy>p:not(.eyebrow){font-size:15px;line-height:1.65;margin-top:20px}
.faq-section{align-items:center;gap:6%}
.faq-list details{padding:10px 0}
.faq-list summary{font-size:14px;line-height:1.5;min-height:38px;gap:14px}
.faq-list details p{font-size:14px;padding:12px 0;line-height:1.7}
.contact-section{display:flex;flex-direction:column;justify-content:center;align-items:center}
.contact-section>p:not(.eyebrow){font-size:16px;max-width:480px}
.contact-section .contact-email{font-size:clamp(22px,3vw,36px);color:var(--lime);margin-top:12px;order:3}
.contact-section .copy-email{order:4;min-height:44px;margin:8px 0 0;font-size:13px}
.contact-section .copy-status{order:5}
.contact-section>p.contact-channel{margin-top:24px;font-size:13px}
@media(min-width:761px) and (max-height:800px){
  .chapter,.hero,.section-wrap:not(.site-footer){padding-top:114px;padding-bottom:28px}
  .chapter h2,.section-wrap h2,.about-copy h2,.faq-heading h2,.contact-section h2,.brands-section .section-heading h2{font-size:40px}
  .solution-panel{padding:18px}.solution-tabs{margin-top:16px}.solution-panel>p{font-size:13px}
  .brand-tile{min-height:108px}.brand-tile img{height:48px}
}
@media(min-width:761px) and (max-width:1000px){
  .chapter-copy,.hero-copy{width:49%;max-width:none}
  .card-position{width:30vw}
  .card-title{font-size:3.5vw}
  .hero h1{font-size:54px}
  .chapter h2,.section-wrap h2,.about-copy h2,.faq-heading h2,.contact-section h2,.brands-section .section-heading h2{font-size:38px}
  .solution-tabs button{font-size:12px}
  .incentive-section{grid-template-columns:1fr 1fr;gap:5%}
  .recognition-demo{padding-top:35px}
  .recognition-card{padding:18px}
  .recognition-card h3{font-size:23px}
  .occasion-options{grid-template-columns:1fr}
  .occasion-options button{font-size:12px}
  .brand-grid{gap:8px}.brand-tile{padding:9px}.brand-tile .brand-name{font-size:12px}
}
@media(min-width:761px) and (max-height:650px){
  .hero{padding-top:110px;padding-bottom:24px;row-gap:24px}
  .hero h1{font-size:clamp(36px,7.8svh,50px)}
  .hero .eyebrow{margin-bottom:14px}
  .hero-description{font-size:14px;line-height:1.6;margin-top:16px}
  .hero-overview{margin-top:16px}
}
@media(max-width:760px){
  .chapter,.hero,.chapter:not(.hero),.section-wrap:not(.site-footer){min-height:100svh;padding:96px 6% 24px;align-items:center}
  .chapter-copy,.hero-copy{width:100%;max-width:560px;margin-inline:auto}
  .hero{align-items:flex-start;padding-bottom:230px}
  .hero h1{font-size:clamp(39px,10.5vw,62px)}
  .hero-description{font-size:15px;line-height:1.6;margin-top:18px;max-width:440px}
  .hero .eyebrow{font-size:10px;margin-bottom:16px}
  .hero-overview{font-size:11px;margin-top:18px;gap:8px}
  .stage .orbit,.stage .glass-sphere,.stage .stage-cross,.stage .card-shadow{display:none}
  .chapter:not(.hero) .eyebrow.section-label{min-height:68px;max-width:65%;margin-bottom:10px;padding:0;border:0;background:none;font-size:12px}
  .chapter h2,.section-wrap h2,.about-copy h2,.faq-heading h2,.contact-section h2,.brands-section .section-heading h2{font-size:clamp(30px,7.8vw,42px);line-height:1.1}
  .chapter-copy>p:not(.eyebrow){font-size:14px;line-height:1.6;margin-top:16px;max-width:none}
  .feature-list{margin-top:20px;gap:18px;max-width:none}
  .feature-list h3{font-size:15px}.feature-list p{font-size:13px;line-height:1.6}
  .feature-list>li{gap:12px}
  .steps{margin-top:20px;max-width:none}
  .steps li{gap:12px;padding-bottom:18px}
  .steps li>span{width:32px;height:32px}
  .steps li:not(:last-child):before{left:15px;top:38px}
  .steps h3{font-size:15px;line-height:1.4;margin-bottom:4px}
  .steps p{font-size:13px;line-height:1.6}
  .solution-tabs{max-width:none;margin-top:16px;padding:3px;gap:2px}
  .solution-tabs button{font-size:12px;line-height:1.3;padding:8px;min-height:44px}
  .solution-panel{max-width:none;padding:16px;margin-top:10px}
  .solution-panel h3{font-size:20px}.solution-panel>p{font-size:13px;line-height:1.5;margin-top:8px}
  .solution-use-cases{margin-top:12px}
  .solution-use-cases summary,.solution-api-details summary{font-size:12px;min-height:44px}
  .solution-api-details{scroll-margin-top:96px}
  .solution-use-cases details p{font-size:13px}
  .section-watermark{display:none}
  .eyebrow,.eyebrow.section-label{font-size:11px;margin-bottom:12px}
  .section-heading>p{font-size:13px;line-height:1.5;margin-top:12px;max-width:none}
  .incentive-section{grid-template-columns:1fr;gap:26px}
  .incentive-copy{max-width:440px}
  .incentive-copy>p:not(.eyebrow){display:none}
  .incentive-copy p.occasion-hint,.occasion-options{display:none}
  .compact-select{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--muted);margin-top:14px}
  .compact-select select{min-width:0;min-height:44px;flex:1;width:100%;font:inherit;font-size:14px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink)}
  .recognition-demo{max-width:360px;padding:18px 4px 0}
  .recognition-card{padding:17px;border-radius:18px}
  .recognition-top{min-height:36px;padding-right:56px;gap:3px}
  .recognition-top img{width:74px;height:23px}
  .recognition-top>span{font-size:6px}
  .recognition-medallion{width:38px;height:38px;top:17px;right:17px;border-radius:12px}
  .recognition-medallion>svg{width:25px;height:25px}
  .recognition-heading{margin-top:12px}
  .recognition-kicker{display:none}
  .recognition-card h3{font-size:23px;line-height:1.12}
  .recognition-message-stack{margin-top:12px}
  .recognition-message{font-size:13px;line-height:1.55}
  .recognition-choice{margin-top:12px;padding-top:10px;gap:3px}
  .recognition-choice>span{font-size:9px}.recognition-choice strong{font-size:11px}
  .recognition-controls{margin-top:8px;gap:12px}.recognition-play{min-height:44px;font-size:11px}
  .recognition-caption{font-size:10px;line-height:1.5}
  .ghost-next{transform:translate(7px,-16px) rotate(3deg)}
  .ghost-back{transform:translate(-4px,-29px) rotate(-5deg)}
  .recognition-ghost{font-size:9px;padding:6px 14px}
  .recognition-orbit{inset:-20px 0 0}.spark-one{font-size:22px;right:-3px}
  .brand-filters{display:none}.brand-select{margin-block:16px 12px}
  .brands-section .section-heading>p{display:none}
  .brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .brand-tile{min-height:92px;padding:10px}
  .brand-tile img{height:40px}
  .brand-tile .brand-name{font-size:12px;line-height:1.3;margin:6px 0 0}
  .brand-tile>span{display:none}
  .brands-bottom{margin-top:8px}.brands-bottom p{font-size:11px;max-width:none}
  .fine-print{font-size:11px;margin-top:8px}
  .about-section{display:flex;justify-content:center;gap:22px}
  .about-copy>p:not(.eyebrow){font-size:14px;line-height:1.6;margin-top:14px;max-width:none}
  .about-visual{width:100%;max-width:440px;margin-inline:auto}
  .about-photo{aspect-ratio:2.4}
  .about-photo>img{transform:scale(1.2);transform-origin:100% 0%;object-position:100% 20%}
  .about-visual .about-seal{padding:10px 14px}
  .about-seal .image-caption{display:none}
  .faq-section{display:flex;flex-direction:column;justify-content:center;gap:18px;align-items:stretch}
  .faq-list{margin-top:0}
  .faq-list details,.faq-list details:first-child{padding:4px 0}
  .faq-list summary{font-size:13px;min-height:44px;line-height:1.45}
  .faq-list details p{font-size:14px}
  .contact-section>p:not(.eyebrow){font-size:15px;margin-top:20px}
}
@media(max-width:760px) and (max-height:700px){
  .chapter,.hero,.chapter:not(.hero),.section-wrap:not(.site-footer){padding-top:92px;padding-bottom:20px}
  .hero{padding-bottom:190px}.hero h1{font-size:40px}.hero-description{font-size:14px;margin-top:14px}
  .hero-overview{margin-top:14px;font-size:10px}
  .chapter h2,.section-wrap h2,.about-copy h2,.faq-heading h2,.contact-section h2,.brands-section .section-heading h2{font-size:30px}
  .chapter:not(.hero) .eyebrow.section-label{min-height:58px;margin-bottom:6px}
  .solution-panel{padding:12px}.solution-panel>p{font-size:12px}.solution-use-cases{margin-top:8px}
  .incentive-section{gap:22px}.incentive-copy>p:not(.eyebrow){margin-top:8px}.compact-select{margin-top:10px}
  .recognition-card{padding:14px}.recognition-card h3{font-size:21px}.recognition-message{font-size:12px}
  .recognition-medallion{top:14px;right:14px}.recognition-heading{margin-top:10px}
  .recognition-choice>span{display:none}.recognition-caption{font-size:9px}
  .about-section{gap:16px}.about-copy>p:not(.eyebrow){font-size:13px;margin-top:10px}.about-photo{aspect-ratio:2.7}
}
/* Disclosures and zoom may extend a section; no fixed height or clipped reading. */
@media(prefers-reduced-motion:reduce){.brand-tile:hover{transform:none}}
