.testimonials-section,.news-section {padding-block:52px;border-top:1px solid var(--rule)}
.testimonials-section .section-heading,.news-section .section-heading {align-items:center;gap:24px}
.testimonials-section h2,.news-section h2 {font-size:clamp(30px,3.4vw,42px)}
.testimonial-grid,.news-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.testimonial-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
.testimonial-grid.testimonials-full {grid-template-columns:repeat(3,minmax(0,1fr))}
.testimonial-card {margin:0;min-width:0;padding:28px;background:#fff;border:1px solid var(--rule);border-radius:6px;display:flex;flex-direction:column}
.customer-logo {display:flex;align-items:center;justify-content:flex-start;min-height:120px;margin-bottom:22px;width:100%;max-width:180px;text-decoration:none}
.customer-logo img {width:180px;height:120px;object-fit:contain;object-position:left center;max-width:100%}
.customer-sector {font-size:13px;line-height:1.45;min-height:2.9em;color:var(--muted);margin-bottom:10px}
.customer-website {display:inline-flex;align-items:center;align-self:flex-start;min-height:44px;font-size:14px;font-weight:600;text-decoration:none;margin-top:12px}
.customer-website:hover {text-decoration:underline}
.customer-feature {display:grid;grid-template-columns:1.2fr 1fr;gap:34px;align-items:center;padding-bottom:36px;margin-bottom:32px;border-bottom:1px solid var(--rule)}
.customer-feature-media,.customer-feature-copy {min-width:0}
.customer-feature-copy {margin:0}
.customer-feature-copy .customer-logo {min-height:80px;margin-bottom:20px;max-width:90px}
.customer-feature-copy .customer-logo img {width:90px;height:80px}
.customer-feature-copy .news-category {margin-bottom:10px}
.customer-feature-copy h3 {font-size:30px;line-height:1.18}
.customer-feature-copy blockquote {margin:20px 0;font-size:18px;line-height:1.65;color:var(--muted)}
.customer-feature-copy figcaption {display:flex;flex-direction:column;gap:3px;font-size:14px}
.customer-feature-copy figcaption span {color:var(--muted)}
.customer-video {position:relative;width:100%;min-width:0;aspect-ratio:16/9;min-height:200px;background:#122d23;border-radius:6px;overflow:hidden}
.customer-video-play {position:absolute;inset:0;display:block;width:100%;height:100%;border:0;padding:0;color:#fff;background:#122d23;text-align:center}
.video-poster {position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.video-poster-logo {object-fit:contain;padding:38px 38px 78px;background:#fff}
.video-play-label {position:absolute;inset:auto 0 0;display:flex;align-items:center;justify-content:center;gap:12px;padding:46px 20px 24px;background:linear-gradient(transparent,rgba(0,0,0,.78));font-size:16px;font-weight:600}
.video-play-label svg {width:38px;height:38px;fill:currentColor;flex:none}
.customer-video-play[hidden] {display:none}
.customer-video-play:hover .video-play-label {text-decoration:underline;text-underline-offset:4px}
.customer-video-play:focus-visible {outline:3px solid var(--yellow);outline-offset:-5px}
.customer-video iframe {position:absolute;inset:0;width:100%;height:100%;border:0}
.customer-video-note {font-size:13px;line-height:1.6;color:var(--muted);margin-top:12px}
.video-fallback {position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;color:#fff;font-size:16px}
.video-fallback img {height:65%;width:80%;object-fit:contain}
.testimonial-card h3 {font-size:24px;line-height:1.2;min-height:2.4em}
.testimonial-card blockquote {margin:20px 0 25px;color:var(--muted);font-size:16px;line-height:1.65}
.testimonial-card figcaption {display:flex;flex-direction:column;gap:4px;margin-top:auto;font-size:14px}
.testimonial-card figcaption span {color:var(--muted)}
.news-card {display:flex;flex-direction:column;min-width:0;padding:28px 0;border-top:2px solid var(--green);border-bottom:1px solid var(--rule);text-decoration:none}
.news-category {display:block;color:var(--muted);font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-bottom:14px}
.news-card h3 {font-size:27px;line-height:1.2;min-height:3.6em}
.news-card p {font-size:16px;line-height:1.65;color:var(--muted);margin:18px 0 24px}
.news-read {margin-top:auto;font-size:14px;font-weight:600}
.news-card:hover h3 {text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.content-page {padding-block:42px 64px}
.content-page > h1 {font-size:clamp(34px,4.5vw,54px);line-height:1.12;max-width:22ch;margin-bottom:24px}
.page-intro {font-size:19px;color:var(--muted);line-height:1.65;max-width:65ch;margin-bottom:32px}
.article-page {max-width:820px}
.article-page > .text-link {margin-bottom:24px}
.article-byline {font-size:14px;color:var(--muted);border-bottom:1px solid var(--rule);padding-bottom:24px;margin-bottom:30px}
.article-body {max-width:760px;font-size:17px;line-height:1.75}
.article-body h2 {font-size:28px;line-height:1.2;margin:32px 0 16px}
.article-body p {margin:16px 0}
.article-body .button {margin-block:10px}
.article-links {display:flex;flex-wrap:wrap;gap:16px 28px;border-top:1px solid var(--rule);margin-top:32px;padding-top:22px}
.footer-legal {display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:14px;border-top:1px solid #ffffff33;margin-top:16px}
.alcohol-notice {display:flex;align-items:center;gap:18px;max-width:650px}
.alcohol-notice > a {flex:none;display:flex;align-items:center;min-height:44px;background:transparent;padding:0}
.alcohol-notice .nix18-logo {filter:brightness(0) invert(1)}
.nix18-logo {display:block;width:120px;height:50px;object-fit:contain}
.alcohol-notice p {font-size:14px;line-height:1.6}
.footer-legal nav {display:flex;flex-wrap:wrap;gap:16px 22px;font-size:14px}
.footer-grid nav {flex-wrap:wrap}
.age-pending #site-content {visibility:hidden}
.age-check-open {overflow:hidden}
.age-check {color:var(--ink);background:var(--ivory);border:1px solid var(--rule);border-radius:8px;padding:32px;width:min(480px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;position:fixed;inset:0;margin:auto;z-index:100}
.age-check::backdrop {background:#173d2e}
.age-check > .nix18-logo {margin-bottom:12px}
.age-check h2 {font-size:34px;line-height:1.15;margin:12px 0 18px}
.age-check p {font-size:16px;line-height:1.6}
.age-check form {margin-top:22px}
.age-check label {display:block;font-weight:600;font-size:14px;margin-bottom:8px}
.age-check input {display:block;width:100%;min-height:50px;background:#fff;color:var(--ink);border:1px solid #708879;border-radius:4px;padding:12px;font:inherit}
.age-check form .button {width:100%;margin-block:14px}
#age-check-error {color:#a2271e;font-size:14px;margin-top:10px}
#age-check-note {font-size:13px;color:var(--muted)}
.age-exit {display:block;min-height:44px;padding-block:12px;font-size:14px}
.age-check nav {display:flex;gap:12px 18px;flex-wrap:wrap;border-top:1px solid var(--rule);padding-top:14px;margin-top:8px;font-size:13px}
.age-noscript {padding:30px;position:fixed;inset:0;background:var(--ivory);z-index:101}
@media(min-width:900px) and (max-width:1199px) {.desktop-nav{gap:12px;font-size:14px}.header-inner{gap:14px}.brand{width:192px}.header-apply{padding-inline:10px}}
@media(max-width:899px) {.testimonial-grid,.news-grid{gap:16px}.testimonial-card{padding:22px}.news-card h3{font-size:23px}.footer-legal{align-items:flex-start;flex-direction:column}.testimonial-card h3{font-size:22px}.customer-feature{gap:24px;grid-template-columns:1fr 1fr}.customer-feature-copy blockquote{font-size:16px}.customer-feature-copy h3{font-size:27px}}
@media(max-width:700px) {.customer-feature{grid-template-columns:1fr;gap:24px}.customer-feature-copy{display:flex;flex-direction:column}.customer-feature-copy .customer-logo{min-height:70px;margin-bottom:14px}.customer-feature-copy .customer-logo img{height:70px}.customer-logo{margin-bottom:18px}.customer-sector{min-height:0}.customer-feature-copy blockquote{font-size:17px}}
@media(max-width:650px) {.testimonial-grid.testimonials-full{grid-template-columns:1fr}}
@media(max-width:650px) {.testimonial-grid,.news-grid{grid-template-columns:1fr}.testimonials-section,.news-section{padding-block:36px}.testimonials-section .section-heading,.news-section .section-heading{align-items:flex-start;flex-direction:column;gap:12px}.testimonial-card h3,.news-card h3{min-height:0}.testimonial-card blockquote{margin-top:14px}.news-card{padding-block:22px}.news-card h3{font-size:27px}.content-page{padding-block:30px 44px}.page-intro{font-size:17px}.article-body{font-size:16px}.alcohol-notice{gap:12px;align-items:flex-start}.alcohol-notice .nix18-logo{width:90px;height:38px}.age-check{padding:24px}.age-check h2{font-size:30px}}

.customer-video-sound {margin-top:12px;min-height:44px;padding:9px 16px;border:1px solid var(--green);border-radius:5px;background:var(--green);color:#fff;font:inherit;font-size:14px;cursor:pointer}
.customer-video-sound[hidden] {display:none}
.customer-video-sound:focus-visible {outline:3px solid var(--yellow);outline-offset:3px}
.customer-feature-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:24px}
.customer-feature-grid .customer-feature {display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr;align-items:stretch;gap:24px;margin:0;padding:0;border:1px solid var(--rule);border-radius:6px;background:#fff}
.customer-feature-grid .customer-feature-copy {display:flex;flex-direction:column;flex:1;padding:0 24px 24px}
.customer-feature-grid .customer-feature-copy figcaption {margin-top:auto}
.customer-feature-grid .customer-feature-copy h3 {font-size:25px;min-height:2.36em}
.customer-video-local video {position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#122d23}
.customer-feature-grid .customer-video {border-radius:5px 5px 0 0}
.customer-feature-grid .customer-video-note {margin:12px 24px 0;min-height:5em}
.customer-feature-grid .customer-video-sound {margin-left:24px;margin-right:24px}
.testimonial-grid,.testimonial-grid.testimonials-full {grid-template-columns:1fr}
.testimonial-card {display:grid;grid-template-columns:220px minmax(0,1fr);gap:32px}
.testimonial-identity,.testimonial-copy {min-width:0}
.testimonial-copy {display:flex;flex-direction:column}
.testimonial-copy blockquote {margin-top:0}
.testimonial-identity .customer-logo {margin-bottom:12px}
.testimonial-identity h3 {min-height:0}
@media(min-width:701px) and (max-width:900px) {.customer-feature-grid {grid-template-columns:1fr}.customer-feature-grid .customer-feature {display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto;grid-row:auto;padding:22px;gap:24px}.customer-feature-grid .customer-feature-copy {padding:0}.customer-feature-grid .customer-video-note {margin-inline:0;min-height:0}.customer-feature-grid .customer-video {border-radius:5px}}
@media(max-width:700px) {.customer-feature-grid {grid-template-columns:1fr;gap:16px}.customer-feature-grid .customer-feature-copy h3 {min-height:0}.customer-feature-grid .customer-video-note {min-height:0}.testimonial-card {grid-template-columns:1fr;gap:20px}}

.testimonial-attribution {display:flex;flex-direction:column;gap:4px;margin-top:auto;font-size:14px}
.testimonial-attribution span {color:var(--muted)}

/* One large lead film, followed by three supporting customer stories. */
.customer-lead .customer-feature {grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:40px;padding-bottom:40px;margin-bottom:32px}
.customer-lead .customer-video {min-height:200px}
.customer-feature-grid .customer-video {min-height:200px}
.customer-feature-grid .customer-feature-copy h3 {font-size:24px;min-height:0}
.customer-feature-grid .customer-feature-copy blockquote {font-size:16px;line-height:1.6}
@media(max-width:1000px) and (min-width:701px) {
 .customer-lead .customer-feature {grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr);gap:24px}
 .customer-feature-grid {grid-template-columns:1fr}
 .customer-feature-grid .customer-feature {grid-template-columns:1fr 1fr;gap:24px;padding:22px}
 .customer-feature-grid .customer-feature-copy {padding:0}
 .customer-feature-grid .customer-video-note {margin-inline:0;min-height:0}
}
@media(max-width:700px) {
 .customer-lead .customer-feature {grid-template-columns:minmax(0,1fr);gap:24px;padding-bottom:28px;margin-bottom:24px}
 .customer-feature-grid .customer-feature {grid-template-columns:minmax(0,1fr)}
}

/* Compact shared footer: retain every link and notice without oversized gaps. */
.site-footer {padding-top:24px}
.site-footer .footer-grid {grid-template-columns:180px minmax(180px,1fr) auto;gap:18px;align-items:center}
.site-footer .footer-grid>.brand {width:180px;padding-block:4px}
.site-footer .footer-grid p {font-size:14px;line-height:1.5}
.site-footer .footer-grid nav {grid-column:auto;gap:4px 16px;font-size:14px;justify-content:flex-end}
.site-footer .footer-grid nav a {padding-block:8px}
.site-footer .footer-legal {gap:16px 24px}
.site-footer .alcohol-notice {gap:14px;max-width:600px}
.site-footer .alcohol-notice .nix18-logo {width:90px;height:38px}
.site-footer .footer-legal nav {gap:4px 18px}
.site-footer .footer-legal nav a {display:inline-flex;align-items:center;min-height:36px}
.site-footer .footer-bottom {margin-top:0;padding-block:14px;gap:8px 24px;font-size:13px;align-items:center}
@media(max-width:1050px){.site-footer .footer-grid{grid-template-columns:180px minmax(0,1fr);gap:8px 20px}.site-footer .footer-grid p{grid-column:1/-1;grid-row:2;max-width:none}.site-footer .footer-grid nav{grid-column:2;grid-row:1}}
@media(max-width:650px){.site-footer{padding-top:20px}.site-footer .footer-grid{grid-template-columns:1fr;gap:8px}.site-footer .footer-grid>.brand{width:166px}.site-footer .footer-grid p{grid-column:1;grid-row:2}.site-footer .footer-grid nav{grid-column:1;grid-row:3;justify-content:flex-start;gap:0 16px}.site-footer .footer-grid nav a{min-height:44px;display:inline-flex;align-items:center}.site-footer .footer-legal{margin-top:10px;gap:10px}.site-footer .footer-legal nav a{min-height:44px}.site-footer .footer-bottom{align-items:flex-start;gap:4px}}

/* Social logos retain accessible names and generous touch targets. */
.site-footer .footer-grid nav a.social-link{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;padding:0;border-radius:50%;color:inherit}
.site-footer .social-link svg{display:block;flex-shrink:0}
.site-footer .social-link:hover{background:#ffffff18}
.site-footer .social-link:focus-visible{outline:2px solid currentColor;outline-offset:2px}
