/* APRM HomeTest migration: additive component styling only.
   Existing AfCRA CSS and proven HomeTest layout are not modified. */
:root{--aprm-ink:#172f4b;--aprm-blue:#183e70;--aprm-soft:#f5f8fb;--aprm-border:#dce5ee}
*,*::before,*::after{box-sizing:border-box}
main>section{min-width:0}
main .container{min-width:0}
main .hero{padding:clamp(36px,5vw,72px) 0;background:linear-gradient(115deg,#fff,#f3f7fb);color:var(--aprm-ink)}
main .hero-inner{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:center;gap:clamp(20px,4vw,58px)}
main .hero-inner>*{min-width:0}
main .hero h1{font-size:clamp(2rem,4.7vw,4.8rem);line-height:1.1;overflow-wrap:break-word;margin:10px 0 22px}
main .hero h1 em{font-style:normal;color:var(--aprm-blue)}
main .hero-theme{font-size:clamp(1.25rem,2vw,2rem);font-weight:750;color:var(--aprm-blue)}
main .hero-lead{line-height:1.65;max-width:65ch}
main .hero-actions,main .programme-tools{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
main .btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:8px;border:1px solid #9eafc3;text-decoration:none;font-weight:700;max-width:100%;text-align:center}
main .btn.primary,main .btn.gold{background:var(--aprm-blue);color:#fff;border-color:var(--aprm-blue)}
main .btn.outline-light,main .btn.outline{background:#fff;color:var(--aprm-blue)}
main .countdown-prominent{background:white;border:1px solid var(--aprm-border);border-radius:18px;padding:clamp(16px,3vw,30px);box-shadow:0 8px 30px #172f4b12;min-width:0}
main .countdown-prominent h3{font-size:clamp(1.3rem,2vw,1.9rem);margin:10px 0}
main .countdown-venue{line-height:1.5;overflow-wrap:anywhere}
main .timer{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:18px}
main .timer-item{min-width:0;text-align:center;background:#f1f6fb;padding:12px 3px;border-radius:9px}
main .timer-item strong{display:block;color:#ff5722;font-size:clamp(1.3rem,3vw,2.7rem);font-variant-numeric:tabular-nums}
main .timer-item span{display:block;font-size:clamp(.65rem,1vw,.85rem)}
main .convener-strip,main .partner-strip{padding:22px 0;background:#fff;border-bottom:1px solid var(--aprm-border)}
main .brand-strip-inner{display:grid;grid-template-columns:minmax(0,160px) minmax(0,1fr);gap:20px;align-items:center}
main .brand-strip-title{font-size:.9rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
main .brand-grid{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;min-width:0}
main .brand-tile{flex:1 1 105px;max-width:180px;min-width:0;display:grid;place-items:center;padding:8px}
main .brand-tile img{display:block;width:100%;max-width:155px;height:65px;object-fit:contain}
main .section,main .photo-section,main .aprm-video-section{padding:clamp(42px,6vw,84px) 0}
main .section.alt,main .photo-section,main .aprm-video-section{background:var(--aprm-soft)}
main .section-head{max-width:850px;margin-bottom:24px}
main h2{font-size:clamp(1.65rem,3vw,2.8rem);line-height:1.2;margin:10px 0 18px}
main h3{line-height:1.3}
main .eyebrow{font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--aprm-blue);font-size:.85rem}
main .grid{display:grid;gap:18px;min-width:0}
main .grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
main .grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
main .grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
main .grid>*{min-width:0}
main .card,main .day{background:white;border:1px solid var(--aprm-border);border-radius:13px;padding:clamp(17px,2vw,26px);min-width:0}
main .card p,main .day p{line-height:1.65}
main .card .number,main .news-meta{color:var(--aprm-blue);font-size:.8rem;font-weight:800}
main .tag{display:inline-block;padding:5px 11px;border-radius:20px;background:#e9f0f7;font-size:.85rem}
main .band{background:#0b1924;color:white;padding:45px 0}
main .band-inner{display:flex;justify-content:space-between;align-items:center;gap:25px}
main .band-inner>*{min-width:0}
main .filter{border:1px solid var(--aprm-border);background:white;border-radius:25px;padding:9px 14px;cursor:pointer}
main .filter.active{background:var(--aprm-blue);color:white}
main .programme-list{display:grid;gap:12px}
main .day{display:grid;grid-template-columns:minmax(0,150px) minmax(0,1fr) auto;gap:16px;align-items:center}
main .day>*{min-width:0}
main .speaker-placeholder{display:grid;place-items:center;min-height:100px;background:#e6edf4;border-radius:10px}
main .gallery-stage{position:relative;overflow:hidden;border-radius:15px;background:#132d48;margin-top:20px}
main .gallery-figure{margin:0}
main .gallery-figure img{display:block;width:100%;height:clamp(230px,48vw,650px);object-fit:cover}
main .gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;border:0;border-radius:7px;background:#0b1924cc;color:white;padding:12px;font-size:1.5rem;cursor:pointer}
main .gallery-prev{left:8px}main .gallery-next{right:8px}
main .gallery-controls{width:100%;min-width:0;padding:18px 0}
main .gallery-dots{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;width:100%;min-width:0}
main .gallery-dot{flex:0 0 13px;width:13px;height:13px;border-radius:50%;border:2px solid var(--aprm-blue);padding:0;background:transparent;cursor:pointer}
main .gallery-dot.active{background:var(--aprm-blue)}
main .aprm-video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:22px}
main .aprm-video-card{min-width:0;background:white;border-radius:12px;overflow:hidden;border:1px solid var(--aprm-border)}
main .aprm-video-player{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:0;background:#101c2c;cursor:pointer}
main .aprm-video-player img,main .aprm-video-player iframe{display:block;width:100%;height:100%;object-fit:cover;border:0}
main .aprm-video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#c00;color:white;padding:10px 22px;border-radius:12px}
main .aprm-video-info{padding:18px}
main .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
main .field{display:flex;flex-direction:column;gap:6px;min-width:0}
main .field.full{grid-column:1/-1}
main input,main textarea,main select{max-width:100%}
main .feature{padding:15px;border-left:4px solid var(--aprm-blue);background:#e9f0f7;color:#173e70;border-radius:6px}
.footer{background:#0b1924;color:#d7e1ea;padding:45px 0 24px}
.footer .footer-grid{display:grid;grid-template-columns:2fr repeat(3,minmax(0,1fr));gap:25px}
.footer .footer-grid>*{min-width:0}
.footer a{display:block;color:#d7e1ea;margin:10px 0;text-decoration:none}
.footer .footer-bottom{border-top:1px solid #ffffff33;padding-top:20px;margin-top:30px}
@media(max-width:850px){main .hero-inner{grid-template-columns:minmax(0,1fr)}main .brand-strip-inner{grid-template-columns:minmax(0,1fr)}main .grid.three,main .grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}main .day{grid-template-columns:minmax(0,1fr)}.footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){main .grid.two,main .grid.three,main .grid.four,main .form-grid{grid-template-columns:minmax(0,1fr)}main .field.full{grid-column:auto}main .band-inner{flex-direction:column;align-items:flex-start}main .hero-actions .btn{width:100%}main .timer-item{padding:10px 2px}main .timer-item strong{font-size:clamp(1.1rem,6vw,1.8rem)}main .timer-item span{font-size:.62rem}.footer .footer-grid{grid-template-columns:minmax(0,1fr)}main .gallery-arrow{padding:7px}}
