:root{--navy:#082d57;--orange:#e8610b;--yellow:#f6b712;--green:#4e8728;--cream:#f8f4ec;--paper:#fffdf8;--ink:#142033;--line:#dfd7ca;--shadow:0 16px 40px rgba(7,39,75,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.55}a{color:inherit}.wrap{width:min(1180px,calc(100% - 36px));margin:auto}.topbar{background:var(--navy);color:#fff;font-size:13px}.topbar-inner{min-height:38px;display:flex;align-items:center;gap:22px}.spacer{flex:1}.topbar a{text-decoration:none}.header{background:rgba(255,253,248,.97);position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(8,45,87,.12);backdrop-filter:blur(12px)}.nav{min-height:94px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand img{width:62px;height:74px;object-fit:contain}.brand strong{display:block;font-size:28px;line-height:1;color:var(--navy);letter-spacing:-.035em}.brand em{font-family:Georgia,serif;color:var(--orange);font-size:1.25em;font-weight:500}.brand small{display:block;margin-top:6px;color:var(--orange);font-weight:800}.nav nav{display:flex;gap:22px;margin-left:auto}.nav nav a{text-decoration:none;font-weight:800;font-size:14px;white-space:nowrap}.nav nav a:hover{color:var(--orange)}.menu{display:none;margin-left:auto;border:1px solid var(--navy);background:#fff;padding:10px 14px;border-radius:10px;font-weight:800;color:var(--navy)}.hero{position:relative;overflow:hidden;background:linear-gradient(90deg,var(--navy) 0 55%,rgba(8,45,87,.93) 55%,rgba(8,45,87,.15) 78%,rgba(8,45,87,0) 100%),linear-gradient(135deg,#c9e7f4,#f7dfa5 55%,#83ad5e);color:#fff}.hero-grid{position:relative;z-index:2;min-height:560px;display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center;padding:55px 0 62px}.edition{font-size:24px;font-weight:900;color:var(--orange);text-transform:uppercase;margin:0 0 8px}.hero h1{font-size:clamp(82px,11vw,145px);line-height:.78;letter-spacing:-.06em;margin:0;color:var(--orange);font-weight:1000}.hero h1 span{display:block;font-size:.22em;line-height:1.4;color:#fff;text-transform:none;font-family:Georgia,serif;font-style:italic;letter-spacing:0}.script{font-family:Georgia,serif;font-style:italic;font-size:28px;margin:26px 0 30px}.script b{color:var(--yellow)}.actions{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:10px;text-decoration:none;font-weight:900}.orange{background:var(--orange);color:#fff}.white{background:rgba(255,255,255,.1);border:2px solid #fff;color:#fff}.green{background:var(--green);color:#fff}.dark{border:2px solid var(--navy);color:var(--navy);background:#fff}.event-panel{display:grid;gap:14px}.event-row{background:rgba(255,255,255,.96);color:var(--ink);border-radius:18px;padding:15px 20px;display:grid;grid-template-columns:52px 1fr;align-items:center;box-shadow:var(--shadow)}.event-row>b{width:44px;height:44px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:22px}.event-row small{display:block;font-weight:800}.event-row strong{display:block;font-size:21px;color:var(--navy)}.event-row:first-child strong{color:var(--orange);font-size:28px}.round-note{width:180px;height:180px;border-radius:50%;background:#fff;color:var(--navy);border:3px dashed var(--orange);display:grid;place-items:center;text-align:center;padding:24px;justify-self:end;transform:rotate(-3deg);font-family:Georgia,serif;font-style:italic;font-size:18px}.pennants{position:absolute;top:0;right:15%;display:flex;gap:8px;z-index:3}.pennants i{width:0;height:0;border-left:18px solid transparent;border-right:18px solid transparent;border-top:38px solid var(--orange)}.pennants i:nth-child(2n){border-top-color:var(--yellow)}.pennants i:nth-child(3n){border-top-color:var(--green)}.pennants i:nth-child(4n){border-top-color:#fff}.section{padding:76px 0}.quick{background:var(--cream)}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.quick-grid article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:0 8px 25px rgba(8,45,87,.05)}.circle{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-size:26px;margin-bottom:16px}.orange-bg{background:var(--orange)}.quick-grid h2{font-size:23px;color:var(--navy);margin:0 0 8px}.quick-grid a{font-weight:900;color:var(--orange);text-decoration:none}.info-strip{padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.info-grid{display:grid;grid-template-columns:.9fr 1.3fr;gap:34px;align-items:center}.brush,.role-brush{background:var(--navy);color:#fff;font-weight:900;text-transform:uppercase;display:inline-block;padding:10px 16px;clip-path:polygon(0 11%,94% 0,100% 18%,97% 86%,5% 100%,0 83%)}.info-grid p{margin:0;font-size:18px}.kicker{color:var(--orange);text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:900}.registration h2,.map-section h2,.soft h2,#supernester h2{font-family:Georgia,serif;font-size:clamp(42px,5vw,62px);line-height:1.05;margin:0 0 18px;color:var(--navy)}.lead{font-size:20px;max-width:760px}.reg-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:center}.deadline{background:var(--navy);color:#fff;border-radius:24px;padding:34px;box-shadow:var(--shadow)}.deadline span{color:var(--yellow);font-weight:900;text-transform:uppercase}.deadline strong{display:block;color:var(--yellow);font-size:48px;line-height:1;margin:14px 0}.map-section{background:var(--navy);color:#fff}.map-section h2{color:#fff}.yellow{color:var(--yellow)}.pale{color:#e4edf8}.map-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center}.legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:28px}.map-mock{min-height:380px;position:relative;overflow:hidden;border-radius:26px;background:#f1e6ca;border:8px solid #fff;box-shadow:0 20px 60px rgba(0,0,0,.25)}.road{position:absolute;background:#d0c2a1;border:3px solid #fff}.r1{width:140%;height:40px;left:-20%;top:26%;transform:rotate(8deg)}.r2{width:120%;height:34px;left:-10%;top:58%;transform:rotate(-12deg)}.r3{width:36px;height:140%;left:34%;top:-20%;transform:rotate(9deg)}.pin{position:absolute;color:var(--orange);font-size:54px;text-shadow:0 2px 0 #fff}.p1{left:21%;top:18%}.p2{left:49%;top:38%}.p3{left:71%;top:18%}.p4{left:76%;top:66%}.map-label{position:absolute;right:18px;bottom:18px;background:#fff;color:var(--navy);border-radius:14px;padding:12px 16px;font-weight:900}.super-card{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;background:linear-gradient(135deg,#fff7db,#fff);border:1px solid #ead7a5;border-radius:28px;padding:36px;box-shadow:var(--shadow)}.tag{display:inline-block;background:var(--yellow);color:var(--navy);padding:7px 12px;font-weight:900;border-radius:999px;text-transform:uppercase;font-size:12px}.super-card h3{font-size:30px;margin:18px 0 10px;color:var(--navy)}.super-list{display:grid;gap:14px}.super-list div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}.super-list strong,.super-list span{display:block}.super-list span{color:#76695d;margin-top:4px}.soft{background:var(--cream)}.roles{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:34px}.roles article{background:#fff;border-radius:20px;border:1px solid var(--line);padding:28px}.roles h3{font-size:28px;color:var(--navy);margin:18px 0 8px}.roles a{display:block;color:var(--navy);font-weight:900;margin-top:8px;word-break:break-word}footer{background:var(--navy);color:#fff;padding:26px 0 16px}.footer-grid{display:flex;justify-content:space-between;gap:24px;align-items:center}.footer-grid strong,.footer-grid span{display:block}.footer-grid span{color:#d7e4f2}.footline{text-align:center;border-top:1px solid rgba(255,255,255,.18);margin-top:18px;padding-top:14px;color:#d7e4f2}@media(max-width:980px){.menu{display:block}.nav nav{display:none;position:absolute;top:100%;left:18px;right:18px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px;box-shadow:var(--shadow);flex-direction:column}.nav nav.open{display:flex}.hero{background:linear-gradient(180deg,var(--navy) 0 70%,#e8d6ae 100%)}.hero-grid,.reg-grid,.map-grid,.super-card,.info-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:1fr 1fr}.roles{grid-template-columns:1fr}}@media(max-width:640px){.wrap{width:min(100% - 24px,1180px)}.topbar-inner{gap:10px;overflow:auto;white-space:nowrap}.spacer{display:none}.brand img{width:48px;height:58px}.brand strong{font-size:20px}.brand small{font-size:12px}.nav{min-height:78px}.hero-grid{min-height:auto;padding:42px 0 48px}.hero h1{font-size:86px}.script{font-size:23px}.round-note{width:150px;height:150px;font-size:17px;justify-self:center}.quick-grid{grid-template-columns:1fr}.section{padding:58px 0}.actions{flex-direction:column}.btn{width:100%}.footer-grid{flex-direction:column;text-align:center}}


/* Mobile optimization v2 */
.hero-summary{
  display:none;
}
@media(max-width:640px){
  .topbar{display:none}

  .header{
    position:sticky;
    top:0;
  }
  .nav{
    min-height:68px;
    gap:10px;
  }
  .brand{
    gap:9px;
    min-width:0;
  }
  .brand img{
    width:42px;
    height:50px;
  }
  .brand strong{
    font-size:18px;
    line-height:1.05;
  }
  .brand em{
    font-size:1.08em;
  }
  .brand small{
    display:none;
  }
  .menu{
    padding:8px 12px;
    border-radius:9px;
    font-size:15px;
  }

  .hero{
    background:var(--navy);
  }
  .pennants{
    right:8px;
    gap:4px;
  }
  .pennants i{
    border-left-width:12px;
    border-right-width:12px;
    border-top-width:25px;
  }
  .hero-grid{
    padding:42px 0 34px;
    gap:20px;
  }
  .hero-copy{
    padding-right:0;
  }
  .edition{
    font-size:14px;
    letter-spacing:.08em;
    margin-bottom:8px;
  }
  .hero h1{
    font-size:70px;
    line-height:.82;
    margin-bottom:8px;
  }
  .hero h1 span{
    font-size:.18em;
  }
  .script{
    font-size:20px;
    line-height:1.35;
    margin:18px 0 22px;
  }
  .hero-summary{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin:0 0 18px;
  }
  .hero-summary span{
    background:#fff;
    color:var(--navy);
    border-radius:14px;
    padding:11px 12px;
  }
  .hero-summary b,
  .hero-summary small{
    display:block;
  }
  .hero-summary b{
    font-size:17px;
  }
  .hero-summary small{
    margin-top:2px;
    color:#6d7783;
  }
  .hero-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
  }
  .hero-actions .btn{
    width:auto;
    min-height:46px;
    padding:0 12px;
    font-size:15px;
  }

  .event-panel{
    display:none;
  }

  .section{
    padding:42px 0;
  }
  .quick{
    padding-top:24px;
  }
  .quick-grid{
    grid-template-columns:1fr 1fr;
    gap:10px;
  }
  .quick-grid article{
    padding:16px;
    min-height:190px;
    border-radius:16px;
  }
  .circle{
    width:44px;
    height:44px;
    font-size:20px;
    margin-bottom:11px;
  }
  .quick-grid h2{
    font-size:18px;
    margin-bottom:6px;
  }
  .quick-grid p{
    font-size:14px;
    line-height:1.4;
    margin:0 0 12px;
  }
  .quick-grid a{
    font-size:14px;
  }

  .info-strip{
    padding:22px 0;
  }
  .info-grid{
    gap:16px;
  }
  .brush{
    padding:9px 12px;
    font-size:14px;
    line-height:1.35;
  }
  .info-grid p{
    font-size:16px;
    line-height:1.55;
  }

  .registration h2,
  .map-section h2,
  .soft h2,
  #supernester h2{
    font-size:34px;
    line-height:1.06;
  }
  .lead{
    font-size:17px;
    line-height:1.55;
  }
  .reg-grid{
    gap:24px;
  }
  .deadline{
    padding:24px;
    border-radius:20px;
  }
  .deadline strong{
    font-size:38px;
  }
  .deadline p{
    font-size:16px;
  }

  .map-grid{
    gap:24px;
  }
  .legend{
    gap:12px;
    font-size:14px;
    margin-top:18px;
  }
  .map-mock{
    min-height:285px;
    border-width:6px;
    border-radius:20px;
  }
  .pin{
    font-size:40px;
  }
  .map-label{
    font-size:14px;
    padding:9px 11px;
  }

  .super-card{
    padding:22px;
    gap:20px;
    border-radius:20px;
  }
  .super-card h3{
    font-size:24px;
    line-height:1.25;
  }
  .super-card p{
    font-size:16px;
  }
  .super-list div{
    padding:14px;
  }

  .roles{
    gap:14px;
    margin-top:22px;
  }
  .roles article{
    padding:20px;
    border-radius:18px;
  }
  .role-brush{
    font-size:13px;
    padding:8px 10px;
  }
  .roles h3{
    font-size:24px;
    margin:14px 0 7px;
  }
  .roles p{
    font-size:16px;
    margin:0 0 12px;
  }
  .roles a{
    font-size:15px;
    overflow-wrap:anywhere;
  }

  footer{
    padding:20px 0 12px;
  }
  .footer-grid{
    gap:10px;
  }
  .footer-grid strong{
    font-size:17px;
  }
  .footer-grid span,
  .footline{
    font-size:14px;
  }
}
@media(max-width:390px){
  .brand strong{font-size:16px}
  .hero h1{font-size:62px}
  .quick-grid{grid-template-columns:1fr}
  .quick-grid article{min-height:auto}
}
