/* Extends the existing PedalArrow design without changing other pages. */
.group-page{color-scheme:light}
.group-page :is(h1,h2,h3){overflow-wrap:anywhere}
.group-page .journey-steps p{font-size:1rem}
.group-page .header-inner{gap:26px}
.group-page .desktop-nav{gap:22px;align-items:center}
.group-page [aria-current="page"]{font-weight:650;text-decoration:underline;text-underline-offset:5px}
.header-tools{display:flex;gap:18px;align-items:center}
.language-button{cursor:pointer;min-height:44px;padding:8px 0;font-size:0.875rem;border:0;text-underline-offset:5px}
.language-button:hover{text-decoration:underline}
.mobile-menu{display:none}
.group-page .button{cursor:pointer;text-align:center;line-height:1.4}
.group-page .button svg{flex:0 0 18px}
.group-page [hidden]{display:none!important}
.group-page :is(main,section)[tabindex="-1"]:focus{outline:none}
.group-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(40px,7vw,100px);padding-block:clamp(48px,6.5vw,88px)}
.group-copy{min-width:0}
.group-eyebrow{margin:0 0 24px;padding-left:12px;border-left:3px solid var(--amber);font-size:0.875rem;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--blue)}
.group-page h1{font-size:clamp(3rem,5.5vw,4.75rem);line-height:1.04;letter-spacing:-.045em}
.group-page h1 span{display:block}
.group-copy .hero-lead{font-size:clamp(1.125rem,1.6vw,1.3125rem);margin-top:25px;max-width:47ch}
.group-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid var(--line);margin-top:34px}
.group-facts div{padding:17px 14px 17px 0}
.group-facts div+div{padding-left:14px;border-left:1px solid var(--line)}
.group-facts dt{font-size:0.9375rem;font-weight:650}
.group-facts dd{font-size:0.875rem;color:var(--muted);margin:4px 0 0}
.invitation-panel{background:var(--teal-light);border:1px solid #b6d3ce;border-top:4px solid var(--teal);padding:clamp(25px,3vw,40px);min-width:0}
.invitation-panel[data-state="invalid"]{border-top-color:var(--amber)}
.group-page .section-kicker{font-size:0.875rem}
.invitation-panel .section-kicker{margin-bottom:16px}
.invitation-panel h2{font-size:clamp(1.75rem,2.8vw,2.375rem);letter-spacing:-.035em;line-height:1.12;font-weight:540;margin:0}
.invitation-panel #message{color:var(--navy-soft);margin:20px 0 0;font-size:1.0625rem;line-height:1.6}
.invitation-actions{display:grid;gap:12px;margin-top:25px}
.invitation-actions .button{width:100%}
.browser-privacy{display:flex;align-items:flex-start;gap:11px;padding-top:21px;margin:25px 0 0;border-top:1px solid #afc9c5;color:var(--navy-soft);font-size:0.875rem}
.browser-privacy svg{width:18px;height:18px;margin-top:3px;fill:none;stroke:currentColor;stroke-width:1.6;flex:0 0 18px}
.app-help{font-size:0.875rem;color:var(--navy-soft);line-height:1.6;margin:18px 0 0}
.copy-status{margin-top:15px;font-size:0.875rem;font-weight:600}
.manual-copy{margin-top:15px}
.manual-copy label{display:block;font-size:0.875rem;margin-bottom:6px}
.manual-copy textarea{width:100%;border:1px solid var(--muted);padding:10px;background:var(--white);font-size:0.875rem;overflow-wrap:anywhere;resize:vertical}
.group-process{border-block:1px solid var(--line);background:var(--white);padding-block:clamp(56px,6vw,86px);scroll-margin-top:95px}
.group-process-grid,.group-questions{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(46px,8vw,115px)}
.group-section-intro h2{font-size:clamp(2rem,3.4vw,2.875rem);line-height:1.1;letter-spacing:-.035em;font-weight:540;margin:0}
.group-section-intro>p:not(.section-kicker){color:var(--muted);margin:22px 0 24px;max-width:43ch;font-size:1.0625rem}
.group-page .journey-steps li{grid-template-columns:40px 1fr;gap:20px;padding:25px 0}
.group-page .journey-steps h3{font-size:1.5625rem;margin:-4px 0 9px;line-height:1.3}
.group-page .step-number{color:var(--blue)}
.group-questions{padding-block:clamp(58px,7vw,96px)}
.group-faq{min-width:0;border-top:1px solid var(--line)}
.group-faq details{border-bottom:1px solid var(--line)}
.group-faq summary{display:flex;align-items:center;justify-content:space-between;gap:22px;cursor:pointer;padding:21px 0;font-size:1.125rem;font-weight:600;list-style:none}
.group-faq summary::-webkit-details-marker,.mobile-menu summary::-webkit-details-marker{display:none}
.group-faq summary::after{content:'+';flex:0 0 20px;color:var(--blue);text-align:center;font-size:1.5625rem;font-weight:400}
.group-faq details[open] summary::after{content:'−'}
.group-faq details p{margin:-2px 40px 23px 0;color:var(--muted);font-size:1rem;line-height:1.65}
.group-page .download-section{padding-block:56px;scroll-margin-top:90px}
.group-page .download-inner{gap:38px}
.group-page .download-inner h2{font-size:clamp(2rem,3.3vw,2.75rem)}
.group-page .download-inner>div:first-child{max-width:650px}
.group-page .download-actions{flex-direction:column;align-items:stretch}
.group-page .download-actions .button{min-width:230px}
.group-page .footer-inner{grid-template-columns:.9fr 1.1fr;align-items:start;gap:27px 65px;padding-block:42px}
.group-page .footer-inner nav{grid-column:1/-1;flex-wrap:wrap;column-gap:26px;row-gap:8px}
.group-page .footer-inner nav a{display:inline-flex;align-items:center;min-height:44px}
.group-page .footer-inner .footer-disclaimer{font-size:0.875rem;max-width:none}
.group-page .footer-inner .footer-branding p{font-size:0.875rem}
@media(max-width:1100px){
 .group-page .desktop-nav{display:none}
 .group-page .header-inner{grid-template-columns:1fr auto}
 .mobile-menu{display:block}
 .mobile-menu summary{display:flex;gap:8px;align-items:center;min-height:44px;cursor:pointer;font-size:0.875rem;list-style:none}
 .mobile-menu summary svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6}
 .mobile-menu[open] summary svg{transform:rotate(180deg)}
 .mobile-menu nav{display:grid;position:absolute;left:0;right:0;top:100%;padding:14px max(24px,calc((100vw - 1220px)/2));background:var(--paper);border-block:1px solid var(--line);box-shadow:0 12px 16px #071d3b0d}
 .mobile-menu nav>*{padding-block:12px;min-height:46px}
 .group-hero{gap:38px}
 .group-page h1{font-size:clamp(3rem,6vw,4.125rem)}
 .group-facts{grid-template-columns:1fr}
 .group-facts div{display:flex;flex-wrap:wrap;gap:3px 12px;justify-content:space-between;padding:10px 0}
 .group-facts div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}
 .group-facts dd{margin:0}
}
@media(max-width:800px){
 .group-hero,.group-process-grid,.group-questions{grid-template-columns:1fr}
 .group-hero{padding-block:44px 50px;gap:30px}
 .group-page h1{font-size:clamp(2.875rem,9vw,4rem)}
 .group-copy .hero-lead{max-width:none}
 .group-page[data-invitation="ready"] .group-copy .hero-lead,.group-page[data-invitation="ready"] .group-facts,.group-page[data-invitation="invalid"] .group-copy .hero-lead,.group-page[data-invitation="invalid"] .group-facts{display:none}
 .group-facts{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:27px}
 .group-facts div{display:block;padding:14px 10px 14px 0}
 .group-facts div+div{border-top:0;border-left:1px solid var(--line);padding-left:10px}
 .group-facts dd{margin-top:4px}
 .group-process-grid,.group-questions{gap:34px}
 .group-section-intro>p:not(.section-kicker){max-width:none}
 .group-page .footer-inner{grid-template-columns:1fr;gap:25px}
 .group-page .download-actions .button{min-width:0}
}
@media(max-width:560px){
 .group-page .header-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 10px;min-height:70px;padding-block:8px}
 .group-page .brand{gap:8px;font-size:1.0625rem}
 .group-page .brand img{width:34px;height:34px}
 .header-tools{gap:15px}
 .header-tools .header-download{display:none}
 .group-eyebrow{margin-bottom:20px;font-size:0.8125rem}
 .group-page h1{font-size:clamp(2.625rem,11.8vw,3.875rem)}
 .group-copy .hero-lead{font-size:1.125rem;margin-top:23px}
 .group-facts dt,.group-facts dd{font-size:0.875rem}
 .invitation-panel{padding:25px 22px}
 .invitation-panel h2{font-size:1.875rem}
 .invitation-panel #message{font-size:1rem}
 .group-page .journey-steps li{grid-template-columns:30px 1fr;gap:12px}
 .group-page .journey-steps h3{font-size:1.4375rem}
 .group-page .footer-inner{display:grid}
 .group-faq details p{margin-right:0}
 .group-faq summary{font-size:1.0625rem}
}
@media(max-width:360px){
 .group-page .brand img{width:30px;height:30px}
 .group-page .brand{font-size:1rem;gap:6px}
 .header-tools{gap:12px}
 .language-button,.mobile-menu summary{font-size:0.8125rem}
 .group-facts{grid-template-columns:1fr}
 .group-facts div{display:flex;gap:8px;justify-content:space-between;padding:10px 0}
 .group-facts div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}
 .group-facts dd{margin:0}
}
