:root{--rotary-blue:#174f8c;--rotary-gold:#f4a62a;--ink:#082f5d;--cream:#fff8e8}
.ryla-wordmark{display:flex;align-items:flex-end;gap:0;font:900 clamp(2.5rem,4.8vw,4.75rem)/.72 'Barlow Condensed',sans-serif;letter-spacing:-.06em;text-decoration:none;white-space:nowrap}
.ryla-wordmark span,.ryla-wordmark b{color:#f4a62a}.ryla-wordmark small{font:800 .72rem/1 'Inter',sans-serif;letter-spacing:.18em;color:#f4a62a;margin:0 0 .05rem .55rem}
.official-ryla-logo{display:flex;align-items:center;width:126px;height:58px;overflow:hidden;background:transparent}
.official-ryla-logo img{display:block;width:100%;height:auto}
.ryla-full-name{display:inline-block;margin:.55rem 0 .75rem;padding:.5rem .78rem;background:#fff;color:#174f8c;font:800 clamp(.78rem,1.2vw,.98rem)/1 'Inter',sans-serif;letter-spacing:.1em;text-transform:uppercase;box-shadow:5px 5px 0 #f4a62a;transform:rotate(-1deg)}
.footer-rotary img{display:block;width:100%;height:auto}
.hero-scene{position:relative;isolation:isolate;overflow:visible}
.hero-scene>img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border:5px solid #fff;box-shadow:0 24px 60px rgba(2,30,61,.32);transform:rotate(1deg)}
.poster-tag{position:absolute;z-index:3;font:900 clamp(.78rem,1.15vw,1rem)/1 'Barlow Condensed',sans-serif;letter-spacing:.08em;padding:.78rem 1rem;box-shadow:5px 6px 0 rgba(7,75,142,.22)}
.spots-tag{top:-14px;left:18px;right:auto;background:var(--rotary-gold);color:#062f5e;transform:rotate(3deg);clip-path:polygon(3% 8%,97% 0,100% 88%,5% 100%)}
.grow-tag{bottom:10px;left:-18px;background:#ef6b55;color:#fff;transform:rotate(-3deg);clip-path:polygon(0 10%,96% 0,100% 91%,4% 100%)}
.hero-scene .stamp{z-index:4}
.programme{padding:clamp(4rem,8vw,8rem) clamp(1.2rem,6vw,7rem);background:var(--rotary-blue);color:#fff;position:relative;overflow:hidden}
.programme:before{content:"";position:absolute;width:420px;height:420px;border:80px solid rgba(244,166,42,.13);border-radius:50%;right:-180px;top:-210px}
.programme-intro{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(260px,1.2fr);gap:clamp(2rem,6vw,7rem);align-items:end;max-width:1180px;margin:0 auto 3rem}
.programme-intro .eyebrow{grid-column:1/-1;color:#ffd25e;margin-bottom:-1.4rem}
.programme-intro h2{font:900 clamp(3.2rem,7vw,6.5rem)/.82 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:0;color:#fff}
.programme-intro>p:last-child{font-size:clamp(1.05rem,1.7vw,1.3rem);line-height:1.65;margin:0;max-width:620px;color:#e9f3ff}
.programme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:1180px;margin:0 auto}
.programme-card{background:#fff;color:var(--ink);padding:1.7rem 1.45rem 1.8rem;min-height:290px;border-radius:4px 24px 4px 4px;box-shadow:0 12px 0 rgba(2,35,72,.22);position:relative}
.programme-card:nth-child(2){transform:translateY(18px);background:#fff4cc}.programme-card:nth-child(3){background:#d9f3ec}.programme-card:nth-child(4){transform:translateY(18px);background:#ffdcd2}
.programme-card span{display:inline-grid;place-items:center;width:43px;height:43px;border-radius:50%;background:var(--rotary-gold);font:900 1rem 'Inter',sans-serif}
.programme-card h3{font:800 clamp(1.45rem,2.2vw,2rem)/1 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:1.4rem 0 .8rem}
.programme-card p{line-height:1.55;margin:0;color:#34536e}
.presenters{max-width:1180px;margin:4.5rem auto 0;display:grid;grid-template-columns:minmax(220px,.65fr) minmax(300px,1.35fr);gap:clamp(2rem,5vw,5rem);padding:clamp(1.6rem,4vw,3rem);background:#062f5e;border:1px solid rgba(255,255,255,.18);border-radius:24px}
.presenters-heading .eyebrow{color:#ffd25e;margin:0 0 .8rem}.presenters-heading h3{font:900 clamp(2.2rem,4vw,3.8rem)/.9 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:0}
.presenter-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.16)}
.presenter-list article{display:grid;gap:.38rem;background:#062f5e;padding:1.15rem}.presenter-list strong{font:800 1.25rem 'Barlow Condensed',sans-serif;text-transform:uppercase;color:#fff}.presenter-list span{font-size:.9rem;line-height:1.45;color:#cfe5fb}
.weekend-flow{max-width:1180px;margin:4.3rem auto 0;display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:1rem;border-top:1px solid rgba(255,255,255,.28);padding-top:2rem}
.weekend-flow div{display:grid;gap:.35rem}.weekend-flow b{font:800 1.22rem 'Barlow Condensed',sans-serif;text-transform:uppercase;color:#ffd25e}.weekend-flow small{line-height:1.45;color:#e9f3ff}.weekend-flow>span{font-size:1.5rem;color:#f4a62a}
.programme-note{max-width:1180px;margin:2rem auto 0;color:#d5e8fb;font-size:.86rem}
.partner-panels{max-width:1180px;margin:2.4rem auto 0;display:grid;grid-template-columns:.82fr 1.18fr;gap:1rem}
.partner-panel{min-height:145px;background:#174f8c;border-radius:18px;padding:1.25rem clamp(1.2rem,3vw,2rem);display:flex;align-items:center;justify-content:space-between;gap:1.5rem;overflow:hidden}
.partner-panel span{font:800 .8rem 'Inter',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#ffd25e;white-space:nowrap}
.partner-panel img{display:block;max-width:100%;height:auto;object-fit:contain}
.venue-partner{background:#dcecff;border:1px solid #b5d4f2}.venue-partner img{width:min(300px,48%)}
.venue-partner span{color:#174f8c}
.organiser-panel img{width:min(440px,62%)}
.footer-rotary{display:block;width:min(270px,72vw);padding:0;background:transparent;filter:drop-shadow(0 1px 0 rgba(255,255,255,.55))}
.quick-facts{gap:26px}
.quick-facts .price-fact strong{color:#ffd25e}
.detail-grid{grid-template-columns:repeat(5,1fr)}
.price-detail{background:#fff0c7}
.registration-strip{max-width:1180px;margin:2rem auto 0;padding:1.4rem clamp(1.2rem,3vw,2rem);border-radius:18px;background:#062f5e;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.registration-strip div{display:grid;gap:.25rem}.registration-strip span{font:800 .72rem 'Inter',sans-serif;letter-spacing:.15em;color:#ffd25e}.registration-strip strong{font:900 clamp(2rem,4vw,3.2rem)/1 'Barlow Condensed',sans-serif;text-transform:uppercase}.registration-strip small{color:#d5e8fb;line-height:1.45}.registration-strip .button{flex:0 0 auto}
@media(max-width:1000px){.programme-grid{grid-template-columns:repeat(2,1fr)}.programme-card:nth-child(2),.programme-card:nth-child(4){transform:none}.weekend-flow{grid-template-columns:1fr 1fr}.weekend-flow>span{display:none}.detail-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.ryla-wordmark{font-size:2.8rem}.nav nav a:not(.nav-cta){display:none}.hero-scene{margin-top:1.5rem}.programme-intro{grid-template-columns:1fr}.programme-intro .eyebrow{margin-bottom:-.5rem}.programme-grid{grid-template-columns:1fr}.presenters{grid-template-columns:1fr}.presenter-list{grid-template-columns:1fr}.weekend-flow{grid-template-columns:1fr}.poster-tag{font-size:.72rem}.grow-tag{left:0}.footer-rotary{width:220px}.partner-panels{grid-template-columns:1fr}.partner-panel{flex-direction:column;align-items:flex-start}.partner-panel img,.venue-partner img{width:100%;max-height:95px}.registration-strip{align-items:stretch;flex-direction:column}.registration-strip .button{width:100%}}
@media(max-width:420px){.ryla-wordmark{font-size:2.4rem}.ryla-wordmark small{display:none}.official-ryla-logo{width:108px;height:50px}.nav-cta{padding:.7rem .9rem}.spots-tag{left:10px;right:auto;top:-10px}}
@media(max-width:640px){.detail-grid{grid-template-columns:1fr}.quick-facts{display:grid;grid-template-columns:repeat(2,1fr)}}
