:root{font-family:Arial,Helvetica,sans-serif;color:#092b1a;background:#fafbf8;font-synthesis:none;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}a{color:inherit}button,input{font:inherit}a,button,input{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #df9b00;outline-offset:5px}section,aside{scroll-margin-top:25px}.skip{position:absolute;top:-60px;background:white;padding:15px;z-index:10}.skip:focus{top:5px}header{min-height:108px;padding:10px max(4vw,20px);display:flex;align-items:center;gap:28px;background:#001c11;color:white}.logo{width:242px;flex-shrink:0;height:94px;overflow:hidden}.logo span{display:block;width:100%;height:100%;background:url('assets/design.png') 6.3% 0/614.4% auto no-repeat}nav{display:flex;gap:clamp(12px,2vw,30px);justify-content:center;flex:1}nav a{text-decoration:none;text-transform:uppercase;font-size:14px;padding:15px 0}nav a:hover{color:#ffd333}.gold{background:linear-gradient(#ffdf61,#f4a300);color:#101d0d;padding:16px 22px;border:1px solid #ffe789;border-radius:7px;font-weight:bold;text-transform:uppercase;text-decoration:none;white-space:nowrap}.hero{width:100%;aspect-ratio:1536/391;background:url('assets/design.png') center 16.9%/100% auto no-repeat}.values{display:flex;justify-content:space-between;gap:25px;background:#002714;color:#fff;padding:18px max(6.5vw,24px);border-top:1px solid #59822b}.values>div{display:flex;align-items:center;gap:13px}.values b{display:grid;place-items:center;border:2px solid #b7df38;border-radius:50%;width:51px;height:51px;font-size:32px;color:#f3d833}.values p{margin:0}.values strong,.values span{display:block}.values strong{font-size:16px;margin-bottom:5px}.values span{font-size:14px}.station{border-left:1px solid #67752e;padding-left:30px}main{max-width:1430px;margin:auto;padding:30px 32px 0;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:30px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}h1,h2,p{margin-top:0}h1,.information h2,.contact h2{font-size:20px;text-transform:uppercase;margin-bottom:0}.section-title a{font-size:14px;text-decoration:none} .cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}article{border:1px solid #dde3da;border-radius:9px;overflow:hidden;background:#fff}.program-art{aspect-ratio:230/102;background-image:url('assets/design.png');background-size:667.83% auto;background-repeat:no-repeat}.art1{background-position:7.73% 68.44%}.art2{background-position:26.72% 68.44%}.art3{background-position:45.25% 68.44%}.art4{background-position:65% 68.44%}.card-copy{padding:15px 13px}.card-copy h2{font-size:17px;color:#111c19;line-height:1.3;min-height:44px;margin-bottom:7px}.card-copy p{font-size:14px;line-height:1.6;min-height:68px;color:#465149}.card-copy a{font-size:12px;text-decoration:none;display:flex;justify-content:space-between;align-items:center;gap:4px;font-weight:bold}.card-copy a span{border-radius:50%;background:#175217;color:#fff;padding:8px 10px}.information{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;padding:29px 0}.information h2{margin-bottom:14px}.information p{font-size:15px;line-height:1.7;color:#526052;margin-bottom:0}.notice{display:flex;gap:15px;align-items:center}.calendar{font-size:36px;color:#386f35}.about{border-top:1px solid #dbe1d6;padding:27px 0 5px}.eyebrow{font-size:12px;font-weight:bold;letter-spacing:2px}.about h2{font-family:Georgia,serif;font-size:34px;font-weight:normal;margin-bottom:16px}.about>p:last-child{font-size:16px;line-height:1.8;max-width:580px;color:#526052}.studio{background:#002817;border-radius:12px;overflow:hidden;color:white;align-self:start;box-shadow:0 10px 30px #00271418}.studio-photo{position:relative;aspect-ratio:1/1.17;overflow:hidden}.studio-photo img{width:100%;height:100%;object-fit:cover;object-position:center 33%}.studio-label{position:absolute;inset:auto 0 0;padding:45px 22px 20px;background:linear-gradient(transparent,#002817)}.studio-label span{font-size:12px;letter-spacing:3px;color:#ffe170;display:block;margin-bottom:6px}.studio-label strong{font-family:Georgia,serif;font-size:25px}.player{padding:17px 22px 24px}.player .eyebrow{color:#b4c9b7;font-size:11px}.player h2{color:#ffdb43;font-size:23px;margin-bottom:19px}.play-row{display:flex;gap:15px;align-items:center}.play-row button{border:1px solid #ffe783;width:58px;height:58px;border-radius:50%;background:linear-gradient(#ffdf5e,#eda000);color:#092b1a;font-size:25px;cursor:pointer;flex-shrink:0}.play-row strong{font-size:16px}.play-row p{font-size:13px;line-height:1.5;color:#c2d3c7;margin:5px 0;overflow-wrap:anywhere}.volume{display:flex;align-items:center;gap:10px;font-size:13px;margin-top:24px}.volume input{width:100%;min-width:0;accent-color:#ffcc22}.volume output{min-width:30px}.original{display:block;font-size:13px;margin-top:24px;color:#efdf99}.connection-note{font-size:13px;line-height:1.6;color:#d8e1d9;border-top:1px solid #ffffff26;padding-top:15px;margin:18px 0 0}.gallery{grid-column:1/-1;border-top:1px solid #dbe1d6;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 0 0}.gallery h2{font-family:Georgia,serif;font-weight:normal;font-size:29px;margin-bottom:10px}.gallery p:last-child{color:#526052;line-height:1.7}.gallery a{white-space:nowrap;font-size:14px}.contact{grid-column:1/-1;padding-bottom:22px}.contact p{font-size:15px;line-height:1.7;color:#526052;max-width:650px;margin:15px 0 0}@media(min-width:1550px){.hero{max-height:440px;background-size:100% auto}}@media(max-width:1150px){header{flex-wrap:wrap;gap:10px;justify-content:space-between}nav{order:3;flex-basis:100%;gap:24px}main{grid-template-columns:minmax(0,1fr) 300px;padding:25px;gap:22px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card-copy h2,.card-copy p{min-height:0}.station{display:none!important}.values{gap:15px}.information{grid-template-columns:1fr}}@media(max-width:700px){header{padding:8px 16px}.logo{width:190px;height:78px}.gold{padding:13px;font-size:13px}nav{justify-content:flex-start;overflow-x:auto;gap:20px}nav a{font-size:12px}.hero{aspect-ratio:1.9;background-size:140% auto;background-position:50% 16.9%}.values{display:grid;grid-template-columns:1fr 1fr;padding:18px 23px;gap:18px}.values b{height:38px;width:38px;font-size:24px}.values strong{font-size:14px}.values span{font-size:12px}main{display:flex;flex-direction:column;padding:22px 18px;gap:25px}.studio{order:-1;width:100%;display:grid;grid-template-columns:1fr}.studio-photo{aspect-ratio:auto;min-height:300px}.studio-label{padding:40px 12px 16px}.studio-label strong{font-size:20px}.player{padding:20px 15px}.play-row{flex-wrap:wrap}.player h2{font-size:21px}.volume{gap:5px;font-size:12px}.volume>output{display:none}.original{line-height:1.7}.section-title h1{font-size:19px}.section-title a{font-size:12px}.gallery{align-items:flex-start;flex-direction:column;gap:0}.contact{padding:0}.information{gap:24px}.about h2{font-size:30px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}
:root .logo{height:126px}
@media(max-width:700px){:root .logo{height:99px}nav{flex-wrap:wrap;overflow:visible;gap:4px 18px}nav a{padding:8px 0}}
@media(max-width:700px){header nav{flex-wrap:wrap;overflow:visible;gap:4px 18px}header nav a{padding:8px 0}}


/* A quieter header and more readable main content. */
header{min-height:108px;padding-top:6px;padding-bottom:6px}
:root .logo{width:200px;height:104px}
main{max-width:1536px;padding-top:26px;grid-template-columns:minmax(0,1fr) 350px}
.card-copy{padding:18px 15px}
.card-copy h2{font-size:18px;line-height:1.4;min-height:50px}
.card-copy p{font-size:16px;line-height:1.65;min-height:80px}
.card-copy a{font-size:14px}
.information p,.contact p{font-size:16px}
.play-row p,.volume,.original{font-size:14px}
.about h2{font-size:30px}
@media(max-width:1150px){main{grid-template-columns:minmax(0,1fr) 320px}.card-copy h2,.card-copy p{min-height:0}}
@media(max-width:700px){:root .logo{width:170px;height:89px}header{min-height:0}main{padding-top:20px}.card-copy{padding:15px 12px}.card-copy a{font-size:13px}.about h2{font-size:28px}}
@media(min-width:960px) and (max-width:1150px){header{flex-wrap:nowrap;padding-left:24px;padding-right:24px;gap:20px}:root .logo{width:180px;height:94px}header nav{order:0;flex-basis:auto;gap:16px}header nav a{font-size:12px}.gold{font-size:14px;padding:14px 17px}}
/* Final balance from the banner through the footer. */
main{max-width:1680px}
.cards article{display:flex;flex-direction:column}
.card-copy{display:flex;flex-direction:column;flex:1}
.card-copy h2{min-height:0;margin-bottom:12px}
.card-copy p{min-height:0;flex:1;margin-bottom:20px}
.card-copy a{min-height:36px}



@media(max-width:700px){.section-title{align-items:flex-start}.section-title a{white-space:nowrap}.card-copy h2{font-size:17px}.volume{flex-wrap:wrap}.volume input{flex:1;min-width:50px}}
.cards article{cursor:pointer;transition:box-shadow .18s,border-color .18s}
.cards article:hover,.cards article:focus-within{border-color:#729b52;box-shadow:0 5px 18px #00271412}
.program-details{border:0;padding:0;background:none;color:inherit;font:inherit;font-weight:inherit;text-align:left;cursor:pointer}
.program-details:hover{text-decoration:underline;text-underline-offset:4px}
#program-dialog{padding:0;border:1px solid #d6dfd1;border-radius:14px;width:min(520px,calc(100% - 32px));max-height:90dvh;overflow:auto;color:#092b1a;background:#fff;box-shadow:0 20px 80px #0005}
#program-dialog::backdrop{background:#00190fc9}
.dialog-close{position:absolute;right:12px;top:12px;width:42px;height:42px;background:#fff;border:1px solid #ddd;border-radius:50%;font-size:28px;cursor:pointer;color:#092b1a}
.dialog-copy{padding:26px}.dialog-copy h2{font-size:26px;margin-bottom:14px}.dialog-copy p{font-size:16px;line-height:1.7}.dialog-copy .eyebrow{font-size:12px}.program-note{color:#526052;border-top:1px solid #e1e6de;padding-top:18px}.dialog-copy .gold{display:inline-block;margin-top:4px}
@media(prefers-reduced-motion:reduce){.cards article{transition:none}}

/* =========================================================
   ATP FM — FINAL COMPACT HEADER
   Logo removed.
   Listen Live moved to left.
   Navigation remains centered.
   ========================================================= */

.compact-header{
  min-height:52px;
  padding:6px 28px;

  display:grid;
  grid-template-columns:190px minmax(0,1fr) 190px;
  align-items:center;

  gap:18px;

  background:#002414;
}


/* LISTEN LIVE — LEFT */

.compact-header .header-listen{
  justify-self:start;

  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;

  min-width:150px;

  padding:10px 16px;

  border-radius:7px;

  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;

  text-decoration:none;

  white-space:nowrap;
}


/* small live indicator */

.header-live-dot{
  width:8px;
  height:8px;

  flex:0 0 8px;

  border-radius:50%;

  background:#fff;

  box-shadow:
    0 0 0 2px rgba(0,0,0,.18),
    0 0 8px rgba(255,255,255,.60);
}


/* NAVIGATION — TRUE CENTER */

.compact-header nav{
  order:initial;
  flex-basis:auto;

  display:flex;
  align-items:center;
  justify-content:center;

  gap:clamp(18px,2.2vw,38px);

  min-width:0;
}

.compact-header nav a{
  padding:8px 0;

  font-size:12px;
  line-height:1;

  white-space:nowrap;
}


/* invisible right-side balance keeps nav centered */

.header-balance{
  width:150px;
  justify-self:end;
}


/* old logo must never occupy header space */

.compact-header .logo{
  display:none !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media(max-width:1000px){

  .compact-header{
    grid-template-columns:155px minmax(0,1fr) 155px;
    padding:6px 18px;
    gap:10px;
  }

  .compact-header .header-listen{
    min-width:135px;
    padding:9px 12px;
    font-size:11px;
  }

  .compact-header nav{
    gap:16px;
  }

  .compact-header nav a{
    font-size:11px;
  }

  .header-balance{
    width:135px;
  }
}


/* =========================================================
   PHONE — STILL COMPACT
   ========================================================= */

@media(max-width:700px){

  .compact-header{
    min-height:48px;

    grid-template-columns:auto minmax(0,1fr);

    padding:5px 10px;

    gap:10px;

    flex-wrap:nowrap;
  }

  .compact-header .header-listen{
    min-width:0;

    padding:8px 10px;

    font-size:9px;
  }

  .compact-header nav{
    order:initial;

    width:100%;

    justify-content:flex-start;

    gap:15px;

    overflow-x:auto;

    flex-wrap:nowrap;

    scrollbar-width:none;
  }

  .compact-header nav::-webkit-scrollbar{
    display:none;
  }

  .compact-header nav a{
    flex:0 0 auto;

    padding:7px 0;

    font-size:9px;
  }

  .header-balance{
    display:none;
  }
}


/* =========================================================
   ATP FM — RED LIVE INDICATOR
   ========================================================= */

.header-live-dot{
  width:10px;
  height:10px;

  flex:0 0 10px;

  border-radius:50%;

  background:#ff2028;

  border:1px solid #8f0008;

  box-shadow:
    inset 0 1px 2px rgba(255,255,255,.65),
    0 0 4px #ff2028,
    0 0 9px rgba(255,32,40,.75);

  animation:
    headerLivePulse 1.15s ease-in-out infinite;
}

@keyframes headerLivePulse{

  0%,100%{
    opacity:.72;
    transform:scale(.92);
    box-shadow:
      inset 0 1px 2px rgba(255,255,255,.55),
      0 0 3px #ff2028,
      0 0 6px rgba(255,32,40,.48);
  }

  50%{
    opacity:1;
    transform:scale(1.08);
    box-shadow:
      inset 0 1px 2px rgba(255,255,255,.75),
      0 0 5px #ff2028,
      0 0 12px rgba(255,32,40,.92);
  }
}


/* =========================================================
   ATP FM WEBSITE
   APPROVED VIRTUAL STUDIO INTEGRATION
   ========================================================= */


/* ---------------------------------
   RIGHT SIDE: INSIDE THE STUDIO CARD
   --------------------------------- */

.studio{
  width:100%;
  align-self:start;
}

.studio-photo{
  aspect-ratio:1 / 1.02;
}

.studio-photo img{
  object-fit:cover;
  object-position:center;
}

.player{
  padding-bottom:20px;
}


/* ENTER STUDIO BUTTON */

.enter-studio{
  border:1px solid #e1b331;
  border-radius:7px;

  background:
    linear-gradient(
      180deg,
      #ffe26a,
      #efae13
    );

  color:#082516;

  font:800 12px Segoe UI,Arial,sans-serif;

  letter-spacing:.055em;

  cursor:pointer;

  box-shadow:
    0 4px 10px rgba(0,0,0,.18);

  transition:
    transform .15s ease,
    box-shadow .15s ease,
    filter .15s ease;
}

.enter-studio:hover{
  transform:translateY(-1px);

  filter:brightness(1.05);

  box-shadow:
    0 6px 14px rgba(0,0,0,.23);
}

.enter-studio:active{
  transform:translateY(0);
}

.side-enter-studio{
  display:block;

  width:100%;

  margin:18px 0 4px;

  padding:11px 12px;
}


/* ---------------------------------
   LOWER VIRTUAL STUDIO SHOWCASE
   --------------------------------- */

.studio-showcase{
  grid-column:1 / 2;

  min-height:250px;

  display:grid;

  grid-template-columns:
    minmax(245px,.36fr)
    minmax(0,.64fr);

  overflow:hidden;

  border-radius:12px;

  border:1px solid #12462f;

  background:
    linear-gradient(
      135deg,
      #003823,
      #002414 72%
    );

  color:white;

  box-shadow:
    0 12px 28px rgba(0,38,21,.14);
}

.studio-showcase-copy{
  position:relative;
  z-index:2;

  padding:31px 26px;

  display:flex;
  flex-direction:column;

  align-items:flex-start;
  justify-content:center;
}

.studio-showcase-copy .eyebrow{
  margin:0 0 10px;

  color:#8df2bd;
}

.studio-showcase-copy h2{
  margin:0 0 12px;

  color:white;

  font-family:Georgia,serif;
  font-size:30px;
  font-weight:normal;
  line-height:1.08;
}

.studio-showcase-copy>p:not(.eyebrow){
  margin:0 0 20px;

  color:#d8e9df;

  font-size:14px;
  line-height:1.65;
}

.studio-showcase-button{
  padding:11px 17px;
}


/* latest approved studio image */

.studio-showcase-art{
  min-height:250px;

  background:
    linear-gradient(
      90deg,
      #003823 0%,
      rgba(0,56,35,.45) 14%,
      transparent 38%
    ),
    url("assets/virtual-studio-master.png")
    center center / cover no-repeat;
}


/* Keep contact area orderly beneath content */

.contact{
  margin-top:2px;
}


/* ---------------------------------
   VIRTUAL STUDIO OVERLAY
   --------------------------------- */

.virtual-studio-modal{
  position:fixed;

  inset:0;

  z-index:9999;

  padding:3vh 2vw;

  background:
    rgba(0,8,14,.91);

  backdrop-filter:
    blur(7px);

  overflow:auto;
}

.virtual-studio-modal[hidden]{
  display:none !important;
}

.virtual-studio-modal-shell{
  width:min(1600px,96vw);
  height:min(900px,94vh);

  margin:auto;

  display:grid;

  grid-template-rows:auto minmax(0,1fr);

  overflow:hidden;

  border:1px solid #1b6b88;
  border-radius:14px;

  background:#020b12;

  box-shadow:
    0 25px 90px rgba(0,0,0,.75),
    0 0 30px rgba(30,189,255,.13);
}

.virtual-studio-modal-bar{
  min-height:54px;

  padding:8px 12px 8px 18px;

  display:flex;

  align-items:center;
  justify-content:space-between;

  gap:15px;

  background:
    linear-gradient(
      90deg,
      #061c2a,
      #032031,
      #061724
    );

  border-bottom:
    1px solid rgba(69,206,255,.25);
}

.virtual-studio-modal-bar>div{
  min-width:0;
}

.virtual-studio-modal-bar strong{
  display:block;

  color:#f2fbff;

  font-size:14px;

  letter-spacing:.04em;
}

.virtual-studio-modal-bar span{
  display:block;

  margin-top:2px;

  color:#6bdcff;

  font-size:9px;

  letter-spacing:.08em;
}

.virtual-studio-close{
  flex:0 0 40px;

  width:40px;
  height:40px;

  display:grid;
  place-items:center;

  border:1px solid #31546a;
  border-radius:50%;

  background:#091c29;

  color:white;

  font-size:26px;
  line-height:1;

  cursor:pointer;
}

.virtual-studio-close:hover{
  background:#123449;
}

#virtual-studio-frame{
  width:100%;
  height:100%;

  min-width:0;
  min-height:0;

  border:0;

  background:#010710;
}

body.virtual-studio-open{
  overflow:hidden;
}


/* =========================================================
   TABLET
   ========================================================= */

@media(max-width:1150px){

  .studio-showcase{
    grid-column:1 / -1;

    grid-template-columns:
      minmax(230px,.38fr)
      minmax(0,.62fr);
  }
}


/* =========================================================
   PHONE
   ========================================================= */

@media(max-width:700px){

  .studio-showcase{
    grid-column:auto;

    display:flex;
    flex-direction:column;

    min-height:0;

    border-radius:12px;
  }

  .studio-showcase-art{
    order:-1;

    min-height:0;
    aspect-ratio:16 / 9;

    background:
      url("assets/virtual-studio-master.png")
      center center / cover no-repeat;
  }

  .studio-showcase-copy{
    padding:22px 18px;
  }

  .studio-showcase-copy h2{
    font-size:25px;
  }

  .studio-showcase-button{
    width:100%;

    padding:12px;
  }

  .virtual-studio-modal{
    padding:0;
  }

  .virtual-studio-modal-shell{
    width:100vw;
    height:100dvh;

    max-width:none;

    border:0;
    border-radius:0;
  }

  .virtual-studio-modal-bar{
    min-height:48px;

    padding:6px 8px 6px 12px;
  }

  .virtual-studio-modal-bar strong{
    font-size:12px;
  }

  .virtual-studio-modal-bar span{
    font-size:7px;
  }

  .virtual-studio-close{
    width:36px;
    height:36px;

    flex-basis:36px;

    font-size:23px;
  }
}


/* =========================================================
   ATP FM — HERO BANNER 50% HEIGHT
   ========================================================= */

.hero{
  height:225px;
  aspect-ratio:auto;

  background-size:cover;
  background-position:center center;
}


/* Tablet */

@media(max-width:1100px){

  .hero{
    height:190px;
  }
}


/* Cellphone */

@media(max-width:700px){

  .hero{
    height:125px;

    background-size:cover;
    background-position:center center;
  }
}


/* =========================================================
   ATP FM VIRTUAL STUDIO — FULL SCREEN / FIT SCREEN CONTROL
   ========================================================= */

.studio-screen-toggle{
  position:absolute;
  top:10px;
  right:58px;
  z-index:100;

  display:flex;
  align-items:center;
  gap:8px;

  height:38px;
  padding:0 14px;

  border:1px solid rgba(64,190,255,.65);
  border-radius:18px;

  background:
    linear-gradient(180deg,#0d4164,#071d32);

  color:#bdeeff;

  font:800 11px/1 "Segoe UI",Arial,sans-serif;
  letter-spacing:.08em;

  cursor:pointer;

  box-shadow:
    0 0 10px rgba(35,176,255,.28),
    inset 0 1px 0 rgba(255,255,255,.16);

  transition:.2s ease;
}

.studio-screen-toggle:hover{
  color:#fff;
  border-color:#60d8ff;

  box-shadow:
    0 0 16px rgba(44,196,255,.50),
    inset 0 1px 0 rgba(255,255,255,.20);
}


/* small fullscreen corner icon */

.studio-screen-icon{
  position:relative;
  width:15px;
  height:15px;
}

.studio-screen-icon::before,
.studio-screen-icon::after{
  content:"";
  position:absolute;
  inset:0;
}

.studio-screen-icon::before{
  border-top:2px solid currentColor;
  border-left:2px solid currentColor;
}

.studio-screen-icon::after{
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
}


/* actual browser fullscreen */

#virtual-studio-modal:fullscreen{
  width:100vw !important;
  height:100vh !important;
  max-width:none !important;
  max-height:none !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:0 !important;
}

#virtual-studio-modal:fullscreen #virtual-studio-frame{
  width:100% !important;
  height:100% !important;
}


/* Mobile */

@media(max-width:600px){

  .studio-screen-toggle{
    right:54px;
    top:9px;
    height:34px;
    padding:0 10px;
    font-size:9px;
  }

}



/* ATP FM FINAL APPROVED HERO */
.hero{background-image:url('assets/header-hero-clean.png') !important;background-size:100% 100% !important;background-position:center center !important;background-repeat:no-repeat !important;width:100% !important;height:auto !important;aspect-ratio:1536/485 !important;max-height:none !important;}





/* Compact footer: one authoritative set of footer styles. */
.atp-footer{padding:18px 20px 12px;background:#062b22;color:#fff;border-top:1px solid #a4a13b;text-align:center}
.footer-ministry-line{margin:0 0 15px;color:#f1e5bc;font:italic 18px/1.5 Georgia,serif}
.footer-brand-row{width:min(720px,100%);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;text-align:left}
.footer-left-brands{display:flex;align-items:center;gap:28px}
.footer-hi-ai{display:flex;align-items:center;gap:10px}
.footer-brand-copy strong,.footer-brand-copy small{display:block}
.footer-brand-copy strong{font-size:17px;color:#a6f2ce;line-height:1.4}
.footer-brand-copy small{font-size:11px;color:#c5d8cf;line-height:1.5}
.footer-logo{display:block;width:56px;height:56px;flex:0 0 56px;overflow:hidden}
.footer-logo img{display:block;width:100%;height:100%;object-fit:contain}
/* Crop only the presentation of existing assets; source files stay intact. */
.footer-hi-ai-mark{border-radius:50%}
.footer-hi-ai-mark img{width:108%;height:108%;max-width:none;margin:-4%}
.footer-shield-mark{border-radius:50%}
.footer-sview .footer-logo{border-radius:50%}
.footer-shield-mark img{width:174px;height:65px;max-width:none;object-fit:fill;margin:-4px 0 0 -3px}
.footer-partner{display:flex;align-items:center;gap:8px}
.footer-partner>span:last-child{font-size:12px;letter-spacing:.04em;color:#dcece5;white-space:nowrap}
.footer-ownership{width:min(720px,100%);margin:13px auto 0;padding-top:10px;border-top:1px solid #ffffff26;color:#b7c9ba;font:11px/1.5 Arial,Helvetica,sans-serif}
@media(max-width:600px){
  .atp-footer{padding:16px 12px 11px}
  .footer-ministry-line{font-size:16px;margin-bottom:12px}
  .footer-brand-row{gap:12px}
  .footer-left-brands{gap:14px}
  .footer-hi-ai{gap:7px}
  .footer-logo{width:44px;height:44px;flex-basis:44px}
  .footer-shield-mark img{width:137px;height:51px;margin:-3px 0 0 -2px}
  .footer-brand-copy strong{font-size:14px}
  .footer-brand-copy small{font-size:10px;max-width:76px}
  .footer-partner{flex-direction:column;gap:3px}
  .footer-partner>span:last-child{font-size:10px}
}

/* ATP FM contact links: visible, accessible and mobile-friendly. */
.contact-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:18px;
}
.contact-link{
  min-height:78px;
  padding:14px 16px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:6px;
  border:1px solid #d7dfd4;
  border-radius:9px;
  background:#fff;
  color:#092b1a;
  text-decoration:none;
  overflow-wrap:anywhere;
  box-shadow:0 4px 14px #0027140d;
  transition:border-color .18s,box-shadow .18s,transform .18s;
}
.contact-link span{
  color:#526052;
  font-size:12px;
  font-weight:bold;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.contact-link strong{font-size:15px;line-height:1.35}
.contact-link:hover{
  border-color:#729b52;
  box-shadow:0 7px 20px #0027141a;
  transform:translateY(-1px);
}
.contact-link-social{
  border-color:#67a7ff;
  background:linear-gradient(#3187f5,#1877f2);
  color:#fff;
}
.contact-link-social span{color:#eaf3ff}
@media(max-width:900px){
  .contact-actions{grid-template-columns:1fr}
  .contact-link{min-height:68px}
}
@media(prefers-reduced-motion:reduce){
  .contact-link{transition:none}
}
