/* The same three destinations remain visible throughout the site. */
.site-header .primary-links{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--line);border-radius:999px;background:var(--paper);max-width:100%}
.site-header .primary-links .top-btn{display:block;padding:8px 13px;border-radius:999px;font-size:.9rem;font-weight:700;line-height:1.35;text-align:center;text-decoration:none;color:var(--ink-2);white-space:nowrap}
.site-header .primary-links .top-btn:hover{background:var(--tint)}
.site-header .primary-links .top-btn.on{background:var(--brand);color:#fff}
.licence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:960px}
.licence-grid .card-plain{min-width:0}.licence-grid .card-plain h2{font-size:1.4rem}
.licence-form .signup-row{display:grid;gap:12px}.licence-form label{display:grid;gap:5px;font-size:.9rem}.licence-form input{width:100%}.licence-form button{white-space:normal}
.licence-extra{max-width:960px;margin-top:22px}.licence-extra textarea{max-width:100%;font-size:.95rem}
.account-view{max-width:760px;margin:12px 0 40px}.account-view .auth-form{max-width:480px}
@media(max-width:700px){.licence-grid{grid-template-columns:minmax(0,1fr)}.licence-grid .journey-details{padding:0 14px}.site-header .header-row{height:auto;flex-wrap:wrap;gap:10px;padding-top:10px;padding-bottom:10px}.site-header .primary-links{flex-shrink:0}.site-header .primary-links .top-btn{font-size:.82rem;padding:9px 10px}.welcome .site-header .primary-links{margin-left:0}.site-header .primary-links{align-self:flex-start}}
@media print{.site-header{display:none!important}}

/* Benefits, purchase options and sign-in share one compact access page. */
.access-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:28px;align-items:start;max-width:1100px}
.access-benefits{padding-left:20px;margin:0 0 16px;color:var(--ink-2)}.access-benefits li{margin:8px 0}
.access-licences{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}
.access-licences .card-plain,.access-signin{min-width:0}.access-licences .card-plain{padding:20px}.access-licences h2,.access-signin h2{font-size:1.2rem;margin-bottom:14px}
.access-licences .journey-details{padding:0 12px}.access-licences .signup-row{display:grid;gap:10px}.access-licences .signup-row button{white-space:normal}.access-licences .signup-row input{width:100%;min-width:0}
.access-signin{background:var(--tint);border-color:transparent;padding:26px}.access-signin .auth-form{margin:18px 0}.access-signin .auth-form input{background:var(--surface)}.access-signin .auth-form .btn{white-space:normal}.access-foot{margin-top:24px}
@media(max-width:900px){.access-layout{grid-template-columns:minmax(0,1fr) minmax(260px,1fr);gap:18px}.access-licences{grid-template-columns:minmax(0,1fr)}}
@media(max-width:650px){.access-layout{display:flex;flex-direction:column}.access-offer,.access-signin{width:100%}.access-signin{order:-1;padding:20px}.access-benefits{margin-top:12px}.access-licences{margin-top:16px}}

/* Keep both tool sections on one row on narrow phones. */
@media(max-width:560px){
  .app .sub-nav-simple>a,.app:not(.is-unlocked) .sub-nav-plan>a,.app .sub-nav-simple>.nav-more>summary{padding-inline:7px}
}
@media(max-width:360px){
  .app .sub-nav-simple{margin-inline:-8px;width:calc(100% + 16px);max-width:calc(100% + 16px)}
  .app .sub-nav-simple>a,.app:not(.is-unlocked) .sub-nav-plan>a,.app .sub-nav-simple>.nav-more>summary{font-size:.75rem;padding-inline:4px}
  .app .sub-nav-simple>.nav-more>summary{gap:3px}
}
.access-licences{align-items:start}
.access-promise{margin:16px 0 0;padding:20px;border-radius:10px;background:var(--brand-soft)}
.access-promise h3{margin:0 0 10px;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--brand)}
.access-promise ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px 18px}
.access-promise li{position:relative;padding-left:26px;font-size:.92rem;line-height:1.5;color:var(--ink-2)}
.access-promise li b{color:var(--ink)}
.access-promise li::before{content:"";position:absolute;left:0;top:.2em;width:16px;height:16px;border-radius:50%;background:var(--brand) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2 7 10.6l4.6-5' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat}
.access-home{margin:0 0 14px;padding:12px 14px;border-left:3px solid var(--accent);border-radius:0 10px 10px 0;background:var(--tint);font-size:.92rem;color:var(--ink-2)}.access-home b{color:var(--ink)}
.access-promise-foot{margin:14px 0 0;font-size:.9rem}
.access-school{margin-top:24px;padding:22px;min-width:0;border-color:var(--brand-2)}.access-school h2{font-size:1.3rem;margin-bottom:10px}
.access-school .journey-details{padding:0 12px}.access-school .signup-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:10px;align-items:end}.access-school .signup-row button{white-space:normal}.access-school .signup-row input{width:100%;min-width:0}
.access-individual{margin:18px 0 0;padding:12px 0 0;border-top:1px solid var(--line);font-size:.9rem;color:var(--ink-3)}.access-individual p{margin:0}.access-individual b{color:var(--ink-2);font-weight:600}.access-individual .journey-details{margin-top:10px}
.access-promise li:last-child:nth-child(odd){grid-column:1/-1}

/* Round 3 footer (every page): brand and email, one row of links, one short note. */
.site-footer .foot-wrap{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px 28px}
.site-footer .foot-top{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0;line-height:1.4}
.site-footer .foot-top .footer-brand{margin:0}
.site-footer nav.foot-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px 16px;margin:0;font-size:.88rem}
.site-footer nav.foot-links a{display:inline-flex;align-items:center;min-height:32px}
.site-footer .foot-note{grid-column:1/-1;margin:8px 0 0;line-height:1.5;max-width:none}
@media(max-width:700px){
  .site-footer .foot-wrap{grid-template-columns:minmax(0,1fr)}
  .site-footer nav.foot-links{justify-content:flex-start;gap:0 14px;font-size:.86rem}
  .site-footer nav.foot-links a{min-height:40px}
}

/* Round 3: the Tools "More tools" menu in three labelled groups, two columns, so it fits without scrolling. */
.app .nav-more[open] .more-links.more-grouped{display:block;columns:2;column-gap:10px;width:440px;max-width:calc(100vw - 24px);padding:10px}
.app .more-grouped .more-group{break-inside:avoid;display:flex;flex-direction:column;gap:1px;padding-bottom:8px}
.app .more-grouped .more-head{margin:0;padding:6px 12px 4px;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.app .more-grouped a{padding:8px 12px;min-height:40px}
.app .more-grouped a.on{background:var(--tint);color:var(--brand)}
/* phones and tablets: the grouped menu spans the header's width, just under it */
@media(max-width:900px){
  .app #sub-nav.sub-nav-simple{position:static}
  .app .nav-more[open] .more-links.more-grouped{left:8px;right:8px;top:calc(100% - 4px);width:auto;max-width:440px;margin-inline:auto}
}
@media(max-width:360px){.app .more-grouped a{font-size:.84rem;padding-inline:8px}.app .more-grouped .more-head{padding-inline:8px}}
