/*
Theme Name: SP4 Kosmos 1.1
Description: Samodzielny motyw SP4 Koszalin na podstawie sp4-prototyp-v8.html. Aktualności z wpisów, menu WordPress i ustawienia strony głównej w Personalizacji.
Version: 1.1.3
Requires at least: 4.9
Requires PHP: 5.6
Text Domain: sp4-kosmos
*/

  :root{
    --navy-deep:#1e2d54;
    --navy:#283967;
    --navy-soft:#374b7b;
    --amber:#ff8a3d;
    --amber-soft:#ffb273;
    --cream:#f6f1e6;
    --cream-dim:#cfd4e8;
    --line:rgba(246,241,230,0.14);
    --font-display:'Space Grotesk', 'Segoe UI', sans-serif;
    --font-body:'Inter', 'Segoe UI', sans-serif;
  }

  *{box-sizing:border-box; margin:0; padding:0;}
  body{
    background:var(--navy-deep);
    color:var(--cream);
    font-family:var(--font-body);
    line-height:1.5;
    overflow-x:hidden;
  }
  a{color:inherit; text-decoration:none;}
  img{max-width:100%; display:block;}

  /* Starfield background */
  .stars{
    position:fixed; inset:0; z-index:0; pointer-events:none;
    background-image:
      radial-gradient(2px 2px at 20px 30px, rgba(255,255,255,0.5), transparent),
      radial-gradient(1.5px 1.5px at 120px 80px, rgba(255,255,255,0.4), transparent),
      radial-gradient(1.5px 1.5px at 200px 150px, rgba(255,255,255,0.5), transparent),
      radial-gradient(2px 2px at 300px 60px, rgba(255,255,255,0.3), transparent),
      radial-gradient(1px 1px at 400px 200px, rgba(255,255,255,0.4), transparent);
    background-size:450px 250px;
    background-repeat:repeat;
    opacity:0.5;
  }

  /* HEADER */
  .site-header{
    position:sticky; top:0; z-index:50;
    background:rgba(30,45,84,0.96);
    backdrop-filter:blur(8px);
    border-bottom:1px solid var(--line);
  }
  .header-inner{
    max-width:1180px; margin:0 auto; padding:10px 24px;
    display:flex; align-items:center; justify-content:space-between; gap:20px;
  }
  .logo{display:flex; align-items:center; gap:12px; font-family:var(--font-display); font-weight:700; font-size:17px;}
  .logo-badge{
    width:40px; height:40px; border-radius:50%;
    background:radial-gradient(circle at 35% 30%, var(--amber-soft), var(--amber) 60%, #b1530f);
    display:flex; align-items:center; justify-content:center; font-size:18px;
    box-shadow:0 0 16px rgba(255,138,61,0.5);
  }
  .logo small{display:block; font-family:var(--font-body); font-weight:400; font-size:11px; color:var(--cream-dim); letter-spacing:.04em;}
  .site-nav ul{display:flex; gap:28px; list-style:none;}
  .site-nav a{font-size:14.5px; font-weight:500; color:var(--cream-dim); transition:color .2s;}
  .site-nav a:hover, .site-nav a:focus-visible{color:var(--amber-soft);}
  .header-cta{
    background:var(--amber); color:var(--navy-deep); font-weight:600; font-size:13.5px;
    padding:10px 18px; border-radius:999px; white-space:nowrap; transition:transform .2s, box-shadow .2s;
  }
  .header-cta:hover{transform:translateY(-1px); box-shadow:0 6px 18px rgba(255,138,61,0.35);}

  /* HERO */
  .hero{
    position:relative; z-index:1;
    max-width:1180px; margin:0 auto; padding:36px 24px 48px;
    display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; align-items:stretch;
    overflow:hidden;
  }
  /* Osobne tło tekstu pozwala pokazać zdjęcie w naturalnych kolorach. */
  .hero-copy{
    min-width:0; padding:28px; background:var(--navy);
    border:1px solid var(--line); border-radius:16px;
    overflow-wrap:anywhere;
  }
  .hero-photo-bg{
    position:relative; min-width:0; min-height:340px; overflow:hidden;
    border:1px solid var(--line); border-radius:16px;
  }
  .hero-photo-bg .photo-img{
    position:absolute; inset:0; width:100%; height:100%;
    object-fit:cover; object-position:center;
  }
  .eyebrow{
    font-size:12.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--amber-soft);
    display:flex; align-items:center; gap:10px; margin-bottom:12px; font-weight:600;
  }
  .eyebrow::before{content:''; width:26px; height:1px; background:var(--amber-soft);}
  h1{
    font-family:var(--font-display); font-weight:700; font-size:clamp(34px,4.5vw,54px);
    line-height:1.08; letter-spacing:-0.01em; margin-bottom:22px;
  }
  h1 span{color:var(--amber);}
  .hero p{font-size:15px; color:var(--cream-dim); max-width:480px; margin-bottom:18px;}
  .hero-actions{display:flex; gap:14px; flex-wrap:wrap; align-items:center; justify-content:space-between;}
  .btn-primary{
    background:var(--amber); color:var(--navy-deep); font-weight:600; font-size:13px;
    padding:10px 18px; border-radius:8px; transition:transform .2s, box-shadow .2s;
    box-shadow:0 6px 16px rgba(255,138,61,0.22);
  }
  .btn-primary:hover{transform:translateY(-2px);}
  .btn-secondary{
    border:1px solid var(--line); color:var(--cream); font-weight:600; font-size:13px;
    padding:10px 18px; border-radius:8px; transition:background .2s, border-color .2s;
  }
  .btn-secondary:hover{background:rgba(246,241,230,0.06); border-color:var(--cream-dim);}

  /* Hero visual: orbit */
  .orbit-wrap{position:relative; aspect-ratio:1/1; display:flex; align-items:center; justify-content:center; max-width:220px; margin:0 auto;}
  .planet{
    width:42%; aspect-ratio:1/1; border-radius:50%;
    background:radial-gradient(circle at 35% 30%, #5a6fd8, var(--navy-soft) 55%, var(--navy));
    box-shadow:0 0 60px rgba(90,111,216,0.35), inset -12px -12px 30px rgba(0,0,0,0.4);
    position:relative; z-index:2;
  }
  .ring{
    position:absolute; border:1px dashed rgba(246,241,230,0.18); border-radius:50%;
  }
  .ring1{width:62%; aspect-ratio:1/1;}
  .ring2{width:84%; aspect-ratio:1/1;}
  .ring3{width:100%; aspect-ratio:1/1;}
  .sat{
    position:absolute; width:34px; height:34px; border-radius:50%;
    background:var(--amber); display:flex; align-items:center; justify-content:center;
    font-size:15px; box-shadow:0 0 14px rgba(255,138,61,0.5);
    animation:spin 22s linear infinite;
  }
  .ring1 .sat{top:-17px; left:calc(50% - 17px); animation-duration:14s;}
  .ring2 .sat{top:-17px; left:calc(50% - 17px); animation-duration:22s; animation-direction:reverse;}
  .ring3 .sat{top:-17px; left:calc(50% - 17px); animation-duration:30s;}
  @keyframes spin{ from{transform:rotate(0deg) translateX(0) rotate(0deg);} }
  .ring1, .ring2, .ring3{animation:spin 1 linear; }
  .ring1{animation:none;}
  /* simpler: rotate the whole ring container */
  .ring{top:50%; left:50%; transform:translate(-50%,-50%); animation:orbitspin linear infinite;}
  .ring1{animation-duration:14s;}
  .ring2{animation-duration:24s; animation-direction:reverse;}
  .ring3{animation-duration:34s;}
  @keyframes orbitspin{ to{ transform:translate(-50%,-50%) rotate(360deg);} }

  @media (prefers-reduced-motion: reduce){
    .ring{animation:none;}
  }

  /* QUICK LINKS STRIP */
  .quicklinks{position:relative; z-index:1; border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:rgba(255,255,255,0.02);}
  .quicklinks-inner{
    max-width:1180px; margin:0 auto; padding:0 24px;
    display:grid; grid-template-columns:repeat(6,1fr); gap:1px; background:var(--line);
  }
  .qlink{
    background:var(--navy-deep); padding:16px 10px; text-align:center;
    display:flex; flex-direction:column; align-items:center; gap:8px;
    font-size:13px; font-weight:600; color:var(--cream-dim); transition:background .2s, color .2s;
  }
  .qlink:hover{background:rgba(255,138,61,0.08); color:var(--cream);}
  .qlink .ic{font-size:22px;}

  /* SECTION WRAPPER */
  section.block{position:relative; z-index:1; max-width:1180px; margin:0 auto; padding:90px 24px;}
  .block-head{display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:40px; gap:20px; flex-wrap:wrap;}
  .block-head h2{font-family:var(--font-display); font-weight:700; font-size:clamp(26px,3vw,34px);}
  .block-head .sub{color:var(--cream-dim); font-size:14.5px; max-width:420px;}
  .see-all{font-size:14px; font-weight:600; color:var(--amber-soft); white-space:nowrap;}

  /* NEWS GRID */
  .news-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
  .news-card{
    display:block;
    background:var(--navy); border:1px solid var(--line); border-radius:14px; overflow:hidden;
    transition:transform .25s, border-color .25s;
  }
  .news-card:hover{transform:translateY(-4px); border-color:rgba(255,138,61,0.4);}
  .news-thumb{height:160px; background:linear-gradient(135deg, var(--navy-soft), var(--navy)); position:relative; overflow:hidden;}
  .news-thumb::after{
    content:''; position:absolute; inset:0;
    background-image:radial-gradient(1.5px 1.5px at 30px 40px, rgba(255,255,255,0.6), transparent),
      radial-gradient(1px 1px at 90px 90px, rgba(255,255,255,0.4), transparent),
      radial-gradient(1.5px 1.5px at 150px 30px, rgba(255,255,255,0.5), transparent);
    background-size:200px 140px;
  }
  .news-tag{
    position:absolute; top:12px; left:12px; background:var(--navy-deep); color:var(--amber-soft);
    font-size:11px; font-weight:600; padding:4px 10px; border-radius:999px; letter-spacing:.03em;
  }
  .news-body{padding:18px 20px 22px;}
  .news-date{font-size:12px; color:var(--cream-dim); margin-bottom:8px; letter-spacing:.02em;}
  .news-title{font-family:var(--font-display); font-weight:600; font-size:17px; line-height:1.3;}

  /* STATS / WHY */
  .why{background:var(--navy); border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
  .stats-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:16px; overflow:hidden;}
  .stat{background:var(--navy); padding:34px 22px; text-align:center;}
  .stat .num{font-family:var(--font-display); font-weight:700; font-size:38px; color:var(--amber);}
  .stat .label{font-size:13px; color:var(--cream-dim); margin-top:6px;}

  /* AUDIENCE CARDS */
  .audience-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
  .aud-card{
    border:1px solid var(--line); border-radius:14px; padding:30px 26px;
    background:linear-gradient(160deg, rgba(255,138,61,0.05), transparent 60%);
    transition:border-color .25s, transform .25s;
  }
  .aud-card:hover{border-color:rgba(255,138,61,0.4); transform:translateY(-3px);}
  .aud-icon{
    width:48px; height:48px; border-radius:12px; background:rgba(255,138,61,0.12);
    display:flex; align-items:center; justify-content:center; font-size:22px; margin-bottom:18px;
  }
  .aud-card h3{font-family:var(--font-display); font-size:18px; margin-bottom:10px; font-weight:600;}
  .aud-card p{font-size:14px; color:var(--cream-dim); margin-bottom:18px;}
  .aud-card .links{display:flex; flex-direction:column; gap:9px;}
  .aud-card .links a{font-size:13.5px; font-weight:500; color:var(--cream); display:flex; align-items:center; gap:7px;}
  .aud-card .links a::before{content:'→'; color:var(--amber-soft);}
  .aud-card .links a:hover{color:var(--amber-soft);}

  /* RECRUITMENT BANNER */
  .recruit{
    position:relative; z-index:1; max-width:1180px; margin:0 auto 90px; padding:50px 50px;
    border-radius:20px; background:linear-gradient(120deg, var(--navy-soft), var(--navy) 70%);
    border:1px solid rgba(255,138,61,0.25);
    display:flex; align-items:center; justify-content:space-between; gap:30px; flex-wrap:wrap;
    overflow:hidden;
  }
  .recruit::before{
    content:'✦'; position:absolute; right:40px; top:50%; transform:translateY(-50%) rotate(-25deg);
    font-size:120px; opacity:0.08;
  }
  .recruit h2{font-family:var(--font-display); font-weight:700; font-size:28px; margin-bottom:8px;}
  .recruit p{color:var(--cream-dim); font-size:15px; max-width:420px;}

  /* FOOTER */
  .site-footer{position:relative; z-index:1; border-top:1px solid var(--line); padding:60px 24px 30px;}
  .footer-inner{max-width:1180px; margin:0 auto; display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px;}
  .footer-inner h4{font-family:var(--font-display); font-size:14px; margin-bottom:16px; color:var(--amber-soft); font-weight:600;}
  .footer-inner p, .footer-inner a{font-size:13.5px; color:var(--cream-dim); line-height:1.8;}
  .footer-inner a:hover{color:var(--cream);}
  .footer-links{display:flex; flex-direction:column; gap:9px;}
  .footer-bottom{
    max-width:1180px; margin:40px auto 0; padding-top:24px; border-top:1px solid var(--line);
    display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px;
    font-size:12.5px; color:var(--cream-dim);
  }

  @media (max-width:900px){
    .hero{grid-template-columns:1fr; padding-top:50px;}
    .orbit-wrap{order:-1; max-width:280px; margin:0 auto;}
    .site-nav{display:none;}
    .quicklinks-inner{grid-template-columns:repeat(3,1fr);}
    .news-grid, .audience-grid{grid-template-columns:1fr;}
    .stats-grid{grid-template-columns:repeat(2,1fr);}
    .footer-inner{grid-template-columns:1fr 1fr;}
    .recruit{padding:40px 28px;}
  }

  /* SZKOŁA W OBIEKTYWIE */
  .school-photo{
    display:grid; grid-template-columns:1.3fr 1fr; gap:24px; align-items:stretch;
  }
  .photo-main{
    border-radius:16px; overflow:hidden; position:relative; min-height:380px;
    background-image:url('assets/images/school-1.jpg');
    background-size:cover; background-position:center;
    border:1px solid var(--line);
  }
  .school-photo .cap{
    font-size:13px; color:var(--cream-dim); background:var(--navy);
    padding:6px 12px; border-radius:8px;
  }
  .photo-main .cap{
    position:absolute; left:20px; right:20px; bottom:18px; width:fit-content; max-width:calc(100% - 40px);
  }
  .photo-side{display:grid; grid-template-rows:1fr 1fr; gap:24px;}
  .photo-small{
    border-radius:16px; border:1px solid var(--line); min-height:170px;
    background-image:url('assets/images/school-1.jpg');
    background-size:cover; background-position:center;
    display:flex; align-items:flex-end; padding:16px;
    font-size:13px; font-weight:600; color:var(--cream-dim);
  }
  @media (max-width:900px){
    .school-photo{grid-template-columns:1fr;}
  }

  /* Animacja ma własne miejsce w panelu tekstowym, poza zdjęciem. */
  .hero-orbits {
    position:relative; flex:0 0 136px; width:136px; height:136px;
    margin-left:auto; pointer-events:none; overflow:hidden;
    display:flex; align-items:center; justify-content:center;
  }
  .photo-orbit-wrap { position:relative; width:112px; height:112px; }
  .photo-planet {
    position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
    width:36px; height:36px; border-radius:50%;
    background:radial-gradient(circle at 35% 30%, #7b8fe8, var(--navy-soft) 55%, var(--navy-deep));
    box-shadow:0 0 20px rgba(90,111,216,0.5), inset -4px -4px 10px rgba(0,0,0,0.4);
    z-index:3;
  }
  .photo-ring {
    position:absolute; top:50%; left:50%;
    border-radius:50%; border:1px dashed rgba(255,200,100,0.35);
    transform:translate(-50%,-50%);
    animation:photo-orbit linear infinite;
  }
  .photo-ring1 { width:54px; height:54px; animation-duration:9s; }
  .photo-ring2 { width:78px; height:78px; animation-duration:16s; animation-direction:reverse; border-color:rgba(255,255,255,0.2);}
  .photo-ring3 { width:108px; height:108px; animation-duration:25s; border-color:rgba(255,180,80,0.2);}
  @keyframes photo-orbit { to { transform:translate(-50%,-50%) rotate(360deg); } }
  @media(prefers-reduced-motion:reduce){ .photo-ring{animation:none;} }

  .photo-ring .psat {
    position:absolute; top:-6px; left:calc(50% - 6px);
    width:12px; height:12px; border-radius:50%;
    background:var(--amber); box-shadow:0 0 6px rgba(255,138,61,0.7);
    font-size:8px; display:flex; align-items:center; justify-content:center;
  }
  .photo-ring2 .psat { width:10px; height:10px; top:-5px; left:calc(50% - 5px); background:#cfd4e8; box-shadow:0 0 5px rgba(200,210,240,0.7); }
  .photo-ring3 .psat { width:8px; height:8px; top:-4px; left:calc(50% - 4px); background:#ff8a3d; }

  
  
  
  
  
  
  
  
  .child svg { display:block; overflow:visible; }


/* WordPress content, navigation and accessibility. */
:focus-visible{outline:3px solid var(--amber-soft);outline-offset:4px}
[id]{scroll-margin-top:130px}
.skip-link{position:fixed;top:-100px;left:16px;padding:12px 18px;background:var(--cream);color:var(--navy-deep);z-index:100000}
.skip-link:focus{top:12px}
.site-header .header-inner{flex-wrap:wrap;gap:16px}
.site-nav{margin-left:auto}
.site-nav ul{flex-wrap:wrap;gap:16px}
.site-nav li{position:relative;list-style:none}
.site-nav .sub-menu{display:none;position:absolute;left:0;top:100%;min-width:220px;padding:12px;background:var(--navy);border:1px solid var(--line);z-index:60}
.site-nav li:hover>.sub-menu,.site-nav li:focus-within>.sub-menu{display:block}
.site-nav .sub-menu .sub-menu{position:static;border:0;padding-left:12px}
.site-nav .sub-menu a{display:block;padding:8px}
.menu-toggle,.submenu-toggle{display:none}
button,input[type=submit]{background:var(--amber);color:var(--navy-deep);border:0;border-radius:8px;padding:12px 18px;font:inherit;cursor:pointer}
input:not([type=checkbox]):not([type=radio]),textarea,select{max-width:100%;border:1px solid var(--cream-dim);border-radius:6px;padding:10px;background:var(--cream);color:var(--navy-deep);font:inherit}
.search-form{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:24px 0 36px}
.search-form label{display:grid;gap:8px}
.content-shell{position:relative;z-index:1;max-width:1180px;min-height:50vh;margin:auto;padding:60px 24px 90px}
.content-shell>h1{font-size:clamp(30px,4vw,46px)}
.entry-content{overflow-wrap:anywhere}
.entry-content>*{margin-bottom:1.25em}
.entry-content a,.post-tags a,.comments-area a{color:var(--amber-soft);text-decoration:underline;text-underline-offset:3px}
.entry-content h2,.entry-content h3{margin-top:1.4em;line-height:1.25}
.entry-content ul,.entry-content ol{padding-left:1.6em}
.entry-content table{border-collapse:collapse;display:block;max-width:100%;overflow:auto}
.entry-content td,.entry-content th{padding:10px;border:1px solid var(--line)}
.entry-content iframe,.entry-content video{max-width:100%}
.entry-content pre{overflow:auto;padding:16px;background:var(--navy)}
.entry-content blockquote{border-left:3px solid var(--amber);padding-left:20px}
.entry-content img{height:auto}
.alignleft{float:left;margin:0 24px 20px 0}.alignright{float:right;margin:0 0 20px 24px}.aligncenter{margin-left:auto;margin-right:auto}
.entry-content:after{content:'';display:block;clear:both}
.wp-caption{max-width:100%}.wp-caption-text,.gallery-caption{font-size:14px;color:var(--cream-dim)}
.featured-image{max-height:540px;object-fit:cover;margin:24px 0;width:100%;height:auto;border-radius:14px}
.news-thumb img{height:100%;width:100%;object-fit:cover}.news-tag{z-index:1}
.pagination,.nav-links{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}
.page-numbers,.nav-previous a,.nav-next a{display:inline-block;padding:8px 14px;border:1px solid var(--line);border-radius:6px}
.page-numbers.current{background:var(--amber);color:var(--navy-deep)}
.post-date{color:var(--cream-dim);margin-bottom:24px}
.comments-area{margin-top:40px}.comments-area p{margin:16px 0}.comments-area label{display:block}.comment-list{padding-left:24px}.comment-list .children{padding-left:24px}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;word-wrap:normal!important}
.why>.block{position:relative;max-width:1180px;margin:auto;padding-left:24px;padding-right:24px}
.recruit::before{pointer-events:none}
.admin-bar .site-header{top:32px}
@media(max-width:1100px){.header-inner .header-cta{font-size:12px;padding:8px 12px}.site-nav{width:100%;order:3}.site-nav ul{justify-content:center}}
@media(max-width:900px){
  .site-nav{display:block;width:100%;order:5;margin:0}
  .sp4-js .site-nav{display:none}
  .sp4-js .site-nav.is-open{display:block;max-height:var(--sp4-menu-height,65vh);overflow-y:auto;overscroll-behavior:contain}
  .sp4-js .menu-toggle{display:block;margin-left:auto;min-height:44px;padding:10px 14px;flex-shrink:0}
  .header-inner .logo{flex:1;min-width:0;gap:8px}
  .header-inner .logo-badge{flex-shrink:0}
  .header-inner .logo>span:last-child{min-width:0}
  .site-nav ul{flex-direction:column;gap:8px;align-items:stretch}
  .site-nav a{display:block;padding:10px;min-height:44px;overflow-wrap:anywhere}
  .site-nav .sub-menu{display:block;position:static;padding:0 0 0 16px;border:0;min-width:0}
  .sp4-js .site-nav .has-submenu-toggle{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:start}
  .sp4-js .site-nav .has-submenu-toggle>a{grid-column:1;grid-row:1}
  .sp4-js .site-nav .submenu-toggle{display:flex;align-items:center;justify-content:center;grid-column:2;grid-row:1;width:44px;min-height:44px;padding:0;color:var(--amber-soft);background:transparent;border:1px solid var(--line);border-radius:8px}
  .submenu-toggle-icon{width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg)}
  .submenu-toggle[aria-expanded="true"] .submenu-toggle-icon{transform:translateY(2px) rotate(225deg)}
  .sp4-js .site-nav li.has-submenu-toggle>.sub-menu{display:none;grid-column:1 / -1;grid-row:2;margin-top:6px;padding:8px 0 8px 12px;border-left:1px solid var(--line)}
  .sp4-js .site-nav li.has-submenu-toggle.is-submenu-open>.sub-menu{display:flex}
  .site-nav a:focus-visible,.site-nav .submenu-toggle:focus-visible{outline-offset:-3px}
  .orbit-wrap{display:none}.hero{padding:32px 24px 40px}.hero p{max-width:540px}
  .hero-copy{padding:24px}
  .hero-photo-bg{min-height:0}
  .hero-photo-bg .photo-img{position:static;height:auto}
  .header-inner .header-cta{display:none}
  .recruit{margin:0 16px 60px}.footer-inner{gap:26px}
  section.block{padding:56px 24px}
}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:600px){.admin-bar .site-header{position:relative;top:0}}
@media(max-width:480px){.footer-inner{grid-template-columns:1fr}.quicklinks-inner{padding:0 12px}.qlink{font-size:12px}.stats-grid{grid-template-columns:1fr}.photo-main{min-height:250px}.header-inner .logo{font-size:15px}.hero{padding:24px 16px 32px}.hero-copy{padding:24px 20px}.hero h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Optional legacy widgets preserve content in a layout matching the new theme. */
.legacy-panels{position:relative;z-index:1;max-width:1180px;margin:0 auto;padding:30px 24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.legacy-widget{padding:20px;margin-bottom:20px;border:1px solid var(--line);border-radius:12px;overflow-wrap:anywhere}
.legacy-widget h2{font-size:20px;margin-bottom:16px}.legacy-widget ul{padding-left:20px}.legacy-widget a{color:var(--amber-soft);text-decoration:underline}.legacy-widget img{height:auto;max-width:100%}.legacy-widget iframe{max-width:100%}.legacy-widget table{display:block;overflow:auto}.legacy-clear{clear:both}
@media(max-width:900px){.legacy-panels{grid-template-columns:1fr}}
