/* Opt-in subpage layout; the accepted homepage keeps its own stylesheet. */
.calm-subpage .section{padding-block:88px}
.calm-subpage .section-heading{max-width:720px;margin-bottom:38px}
.calm-subpage .section-heading>h2{margin-bottom:16px}
.calm-subpage .subpage-hero{min-height:370px}
.calm-subpage .subpage-hero-copy{max-width:570px;padding-block:52px}
.calm-subpage .subpage-hero h1{font-size:42px;line-height:1.18;margin-bottom:20px;hyphens:auto}
.calm-subpage .subpage-hero .lead{max-width:470px;line-height:1.6;margin-bottom:26px}
.calm-subpage .subpage-hero .lead:last-child{margin-bottom:0}
.calm-subpage .page-intro{padding-block:60px;background:#f4f5f6}
.calm-subpage .page-intro h1{font-size:42px;line-height:1.2;max-width:800px}
.calm-subpage .page-intro .lead{max-width:660px;margin-bottom:24px}
.calm-subpage .editorial-grid,.calm-subpage .cost-grid,.calm-subpage .faq-grid{grid-template-columns:minmax(0,1fr);gap:40px;max-width:1000px}
.calm-subpage .editorial-grid>div:first-child,.calm-subpage .cost-grid>div,.calm-subpage .faq-grid>div{max-width:780px}
.calm-subpage .editorial-grid>div>h2{font-size:32px;line-height:1.25}
.calm-subpage .editorial-grid>div>p{font-size:17px;line-height:1.75;max-width:720px;margin-bottom:0}
.calm-subpage .feature-list{display:grid;grid-template-columns:1fr;gap:0;max-width:900px;counter-reset:feature}
.calm-subpage .feature-list>li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px 24px;padding:30px 0;border-top:1px solid var(--line);position:relative;counter-increment:feature}
.calm-subpage .feature-list>li:before{content:counter(feature,decimal-leading-zero);position:static;grid-column:1;grid-row:1 / 3;margin:3px 0 0;color:var(--red);font-size:13px;line-height:1.6}
.calm-subpage .feature-list h3{grid-column:2;margin:0;font-size:21px;line-height:1.4}
.calm-subpage .feature-list p{grid-column:2;margin:0;max-width:660px;font-size:16px;line-height:1.75;color:var(--muted)}
.calm-subpage .link-list{grid-template-columns:1fr;max-width:900px;gap:0}
.calm-subpage .link-list>a{padding-block:28px}
.calm-subpage .link-list h3{font-size:21px;line-height:1.35;margin-bottom:8px}
.calm-subpage .link-list p{max-width:660px;line-height:1.7;margin:0}
.calm-subpage .service-directory{grid-template-columns:1fr;max-width:1000px;gap:0}
.calm-subpage .service-directory>a{display:grid;grid-template-columns:44px minmax(0,1fr) 24px;align-items:center;gap:24px;padding:32px 0;border-top:1px solid var(--line)}
.calm-subpage .service-directory>a:before{display:none}
.calm-subpage .service-directory>a>svg:first-child,.calm-subpage .service-directory>a>svg:last-child{margin:0}
.calm-subpage .service-directory h2{font-size:25px;margin-bottom:10px}
.calm-subpage .service-directory p{margin:0;max-width:650px}
.calm-subpage .service-supplement{margin-top:24px;padding-top:28px;border-top:1px solid var(--line);max-width:1000px}
.calm-subpage .service-supplement h2{font-size:21px;line-height:1.4;margin-bottom:12px}
.calm-subpage .steps{grid-template-columns:1fr;gap:0;max-width:900px}
.calm-subpage .steps>li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px 24px;padding:28px 0;border-top:1px solid var(--line)}
.calm-subpage .steps .step-number{grid-row:1 / 3;margin:0;align-self:start}
.calm-subpage .steps h3,.calm-subpage .steps p{grid-column:2;margin:0;max-width:660px}
.calm-subpage .cost-section .cost-promise{max-width:660px}
.calm-subpage .cost-grid>div>p{line-height:1.8}
.calm-subpage .cost-summary{max-width:900px}
.calm-subpage .cost-summary h2{font-size:32px;line-height:1.25;margin-bottom:24px}
.calm-subpage .cost-summary>p{max-width:740px;line-height:1.7}
.calm-subpage .cost-summary .cost-promise{font-size:22px;line-height:1.55;max-width:740px;margin-bottom:20px}
.calm-subpage .cost-boundary{color:var(--muted);margin-top:24px}
.calm-subpage .cost-details{max-width:780px;margin-top:36px}
.calm-subpage .cost-details details{border-top:1px solid var(--line)}
.calm-subpage .cost-details details:last-child{border-bottom:1px solid var(--line)}
.calm-subpage .cost-details summary,.calm-subpage .technical-detail summary{display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;cursor:pointer;font-weight:600;line-height:1.5;padding:22px 0}
.calm-subpage .cost-details summary::-webkit-details-marker,.calm-subpage .technical-detail summary::-webkit-details-marker{display:none}
.calm-subpage .cost-details summary>span,.calm-subpage .technical-detail summary>span{color:var(--red);flex-shrink:0}
.calm-subpage .cost-details details[open] summary>span,.calm-subpage .technical-detail[open] summary>span{transform:rotate(45deg)}
.calm-subpage .cost-details .faq-answer{padding:0 0 22px;max-width:700px}
.calm-subpage .cost-details .faq-answer p:last-child{margin-bottom:0}
.calm-subpage .technical-detail{grid-column:2;max-width:660px}
.calm-subpage .technical-detail summary{padding:10px 0;font-size:16px}
.calm-subpage .technical-detail .faq-answer{padding:8px 0 0}
.calm-subpage .cost-details summary:focus-visible,.calm-subpage .technical-detail summary:focus-visible{outline:2px solid var(--red);outline-offset:4px}
.calm-subpage .faq-grid>div:first-child h2{font-size:32px}
.calm-subpage .faq-list summary{padding-block:26px;line-height:1.5}
.calm-subpage .contact-band{padding-block:64px}
.calm-subpage .contact-band-grid{gap:40px}
.calm-subpage .contact-band h2{font-size:30px;line-height:1.3;max-width:610px}
.calm-subpage .contact-band p{max-width:640px;line-height:1.75}
.calm-subpage .about-profile{padding-block:56px 72px}
.calm-subpage .about-story{grid-template-columns:minmax(0,.85fr) minmax(0,1fr);grid-template-areas:"photo name" "photo intro";gap:24px 64px;align-items:start;max-width:1060px}
.calm-subpage .about-story .company-portrait{grid-area:photo;height:470px;width:100%;max-width:420px}
.calm-subpage .about-profile-heading{grid-area:name;align-self:end}
.calm-subpage .about-profile-heading h1{font-size:42px;line-height:1.2;margin-bottom:20px}
.calm-subpage .about-qualification{border:0;padding:0;margin:0;gap:14px}
.calm-subpage .about-qualification strong{font-size:17px;line-height:1.5}
.calm-subpage .about-story-copy{grid-area:intro}
.calm-subpage .about-story-copy>p{margin-bottom:24px}
.calm-subpage .contact-intro{padding-block:48px 28px}
.calm-subpage .contact-intro h1{font-size:40px;margin-bottom:12px}
.calm-subpage .contact-intro .lead{font-size:18px;line-height:1.6;margin:0}
.calm-subpage .contact-options{padding-top:28px}
.calm-subpage.campaign-page .landing-hero{min-height:480px}
.calm-subpage.campaign-page .landing-hero-copy{padding-block:60px}
.calm-subpage.campaign-page .landing-hero h1{font-size:46px;line-height:1.18}
.calm-subpage.campaign-page .landing-hero .lead{font-size:21px;line-height:1.6;margin-bottom:28px}
.calm-subpage.campaign-page .hero-call{font-weight:600;transform:none;text-shadow:none}
.calm-subpage.campaign-page .landing-split{grid-template-columns:1fr;max-width:1000px;gap:36px}
.calm-subpage.campaign-page .landing-split>.section-heading{margin-bottom:0}
.calm-subpage.campaign-page .cost-explanation{max-width:760px}
.calm-subpage.campaign-page .benefit-grid{grid-template-columns:1fr;gap:0;max-width:900px}
.calm-subpage.campaign-page .benefit{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px 24px;padding:28px 0;border-top:1px solid var(--line)}
.calm-subpage.campaign-page .benefit>svg{grid-row:1 / 3;margin:0;width:28px;height:28px}
.calm-subpage.campaign-page .benefit h3,.calm-subpage.campaign-page .benefit p{grid-column:2;max-width:660px;margin:0}
.calm-subpage.campaign-page .feature-list{counter-reset:feature}
.calm-subpage.campaign-page .feature-list>li{counter-increment:feature}
.calm-subpage.campaign-page .feature-list>li:before{content:counter(feature,decimal-leading-zero)}
.calm-subpage.campaign-page .landing-about .landing-split{grid-template-columns:1fr 1fr;gap:64px}
.calm-subpage.campaign-page .landing-area{padding:0;border:0}
.calm-subpage.campaign-page .landing-area h3{font-size:26px}
@media(max-width:1000px){
 .calm-subpage .section{padding-block:72px}
 .calm-subpage .subpage-hero h1{font-size:36px}
 .calm-subpage .subpage-hero-copy{max-width:480px}
 .calm-subpage .about-story{gap:24px 40px}
 .calm-subpage .about-story .company-portrait{height:440px}
}
@media(max-width:700px){
 .calm-subpage .section{padding-block:52px}
 .calm-subpage .subpage-hero{min-height:0;padding-top:125px}
 .calm-subpage .subpage-hero-image{height:235px}
 .calm-subpage .subpage-hero:after{height:240px}
 .calm-subpage .subpage-hero-copy{max-width:none;padding-block:24px 32px}
 .calm-subpage .subpage-hero h1{font-size:30px;line-height:1.2;margin-bottom:16px;overflow-wrap:break-word}
 .calm-subpage .subpage-hero .lead{font-size:16px;line-height:1.65;margin-bottom:22px}
 .calm-subpage .page-intro{padding-block:40px}
 .calm-subpage .page-intro h1{font-size:30px}
 .calm-subpage .editorial-grid,.calm-subpage .cost-grid,.calm-subpage .faq-grid{gap:28px}
 .calm-subpage .cost-summary h2{font-size:27px}
 .calm-subpage .cost-summary .cost-promise{font-size:19px}
 .calm-subpage .cost-summary>p{font-size:16px}
 .calm-subpage .cost-details summary{font-size:17px}
 .calm-subpage .editorial-grid>div>h2,.calm-subpage .faq-grid>div:first-child h2{font-size:27px}
 .calm-subpage .editorial-grid>div>p{font-size:16px}
 .calm-subpage .feature-list>li{grid-template-columns:24px minmax(0,1fr);gap:12px 14px;padding-block:26px}
 .calm-subpage .feature-list h3{font-size:19px}
 .calm-subpage .feature-list p{font-size:16px;line-height:1.75}
 .calm-subpage .link-list h3{font-size:19px;hyphens:auto}
 .calm-subpage .service-directory>a{grid-template-columns:28px minmax(0,1fr) 20px;gap:14px;padding-block:28px;align-items:start}
 .calm-subpage .service-directory>a>svg:first-child{width:26px;height:26px;margin-top:3px}
 .calm-subpage .service-directory>a>svg:last-child{width:20px;height:20px;margin-top:5px}
 .calm-subpage .service-directory h2{font-size:22px;line-height:1.35}
 .calm-subpage .service-directory p{line-height:1.7}
 .calm-subpage .steps>li{grid-template-columns:32px minmax(0,1fr);gap:12px 16px}
 .calm-subpage .contact-band{padding-block:48px}
 .calm-subpage .contact-band h2{font-size:27px}
 .calm-subpage .about-profile{padding-top:32px}
 .calm-subpage .about-story{grid-template-columns:1fr;grid-template-areas:"name" "photo" "intro";gap:26px}
 .calm-subpage .about-profile-heading h1{font-size:32px;margin-bottom:16px}
 .calm-subpage .about-qualification strong{font-size:16px}
 .calm-subpage .about-qualification p{font-size:14px}
 .calm-subpage .about-story .company-portrait{max-width:none;height:245px}
 .calm-subpage .about-story .company-portrait img{object-position:center 25%}
 .calm-subpage .contact-intro{padding-block:32px 20px}
 .calm-subpage .contact-intro h1{font-size:32px}
 .calm-subpage .contact-intro .lead{font-size:17px}
 .calm-subpage .contact-options{padding-top:24px}
 .calm-subpage.campaign-page .landing-hero{min-height:0}
 .calm-subpage.campaign-page .landing-hero-copy{padding-block:28px 36px}
 .calm-subpage.campaign-page .landing-hero h1{font-size:34px;line-height:1.2}
 .calm-subpage.campaign-page .landing-hero .lead{font-size:18px;margin-bottom:24px}
 .calm-subpage.campaign-page .landing-split{gap:28px}
 .calm-subpage.campaign-page .landing-about .landing-split{grid-template-columns:1fr;gap:40px}
 .calm-subpage.campaign-page .benefit{gap:12px 16px;grid-template-columns:28px minmax(0,1fr)}
}
@media(max-width:360px){
 .calm-subpage .subpage-hero h1{font-size:28px}
 .calm-subpage .about-story .company-portrait{height:215px}
}
