/* TheOnlineNews Theme v1.10.0 */
:root{--orange:#E85B0D;--orange-light:#F07340;--orange-pale:#FDF0E8;--navy:#0F2044;--navy-mid:#1A3260;--navy-light:#2A4880;--navy-pale:#EBF0FA;--bg:#F5F2EE;--bg-alt:#EDE9E2;--white:#FFFFFF;--text-dark:#111827;--text-mid:#374151;--text-muted:#6B7280;--border:rgba(15,32,68,0.08);--shadow-sm:0 2px 10px rgba(15,32,68,0.06);--shadow-md:0 6px 24px rgba(15,32,68,0.10);--r-sm:10px;--r-md:16px;--r-lg:26px;}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Inter',system-ui,sans-serif;background:var(--bg);color:var(--text-dark);line-height:1.6;font-size:16px;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}
a:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:4px;}
img{max-width:100%;height:auto;display:block;}
.skip-link{position:absolute;top:-100px;left:1rem;padding:.5rem 1rem;background:var(--orange);color:#fff;border-radius:var(--r-sm);font-weight:600;z-index:9999;transition:top .2s;}
.skip-link:focus{top:1rem;}

/* ── HEADER ── */
.site-header{position:sticky;top:0;z-index:200;background:rgba(15,32,68,0.97);backdrop-filter:blur(18px) saturate(160%);border-bottom:1px solid rgba(255,255,255,0.10);padding:0 clamp(1rem,4vw,3rem);}
.header-top{max-width:1440px;margin:0 auto;display:flex;align-items:center;height:62px;gap:1rem;}

/* Logo */
.site-logo{display:flex;align-items:center;gap:.6rem;flex-shrink:0;text-decoration:none;}
.site-logo-img{height:40px;width:auto;display:block;}
.logo-fallback{display:flex;align-items:center;gap:.6rem;}
.logo-mark{width:34px;height:34px;background:var(--orange);border-radius:8px;display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-weight:900;font-size:.88rem;color:#fff;}
.logo-text strong{font-size:.86rem;font-weight:700;color:#fff;display:block;}
.logo-text strong em{color:var(--orange);font-style:normal;}
.logo-text span{font-size:.57rem;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.08em;}

/* Date & Time — beside logo */
.header-datetime{display:flex;flex-direction:column;align-items:flex-start;font-size:.62rem;color:rgba(255,255,255,.5);line-height:1.35;white-space:nowrap;border-left:1px solid rgba(255,255,255,.15);padding-left:.85rem;flex-shrink:0;}
#ton-date{font-weight:500;color:rgba(255,255,255,.65);}
#ton-time{color:rgba(255,255,255,.4);}

/* Nav */
/* Desktop nav primitives — fly-out positioning is wrapped in a min-width media
   query so it never interferes with the mobile drawer (v1.10.2 fix). */
.ton-nav-wrap{flex:1;min-width:0;position:relative;}
.ton-dynamic-nav{list-style:none;display:flex;align-items:center;gap:.05rem;flex-wrap:wrap;}
@media (min-width: 769px){
.ton-submenu{display:none;position:absolute;top:calc(100% + 4px);left:0;background:var(--navy-mid);border-radius:var(--r-sm);border:1px solid rgba(255,255,255,.1);box-shadow:0 12px 40px rgba(0,0,0,.35);min-width:180px;list-style:none;z-index:300;padding:.35rem 0;}
.ton-submenu-depth-1,.ton-submenu-depth-2{top:0;left:calc(100% + 2px);}
.ton-menu-item.has-children > .ton-submenu::before{content:'';position:absolute;top:-8px;left:0;right:0;height:8px;background:transparent;}
.ton-submenu-depth-1::before,.ton-submenu-depth-2::before{top:0;left:-6px;right:auto;width:6px;height:100%;}
.ton-menu-item.is-hover-open > .ton-submenu,.ton-menu-item:focus-within > .ton-submenu{display:block;}
}
@media(hover:hover) and (min-width:769px){.ton-menu-item:hover > .ton-submenu{display:block;}}
.ton-submenu li>a{display:flex;align-items:center;justify-content:space-between;padding:.45rem 1rem;font-size:.74rem;color:rgba(255,255,255,.75);transition:background .15s,color .15s;white-space:nowrap;}
.ton-submenu li>a:hover{background:rgba(255,255,255,.09);color:#fff;}
.ton-menu-item{position:relative;}
.ton-menu-item>a{display:flex;align-items:center;gap:.3rem;color:rgba(255,255,255,.65);font-size:.75rem;font-weight:500;padding:.35rem .7rem;border-radius:6px;white-space:nowrap;transition:color .15s,background .15s;cursor:pointer;}
.ton-menu-item>a:hover,.ton-menu-item.active>a{color:#fff;background:rgba(255,255,255,.09);}
.ton-caret{margin-left:2px;transition:transform .2s;}
.ton-menu-item:hover>a .ton-caret{transform:rotate(180deg);}
@media (min-width:769px){
.ton-submenu{display:none;position:absolute;top:calc(100% + 4px);left:0;background:var(--navy-mid);border-radius:var(--r-sm);border:1px solid rgba(255,255,255,.1);box-shadow:0 12px 40px rgba(0,0,0,.35);min-width:180px;list-style:none;z-index:300;padding:.35rem 0;}
.ton-submenu-depth-1,.ton-submenu-depth-2{top:0;left:calc(100% + 2px);}
/* Transparent "bridge" so the cursor doesn't fall off between the top item and the dropdown */
.ton-menu-item.has-children > .ton-submenu::before{content:'';position:absolute;top:-8px;left:0;right:0;height:8px;background:transparent;}
.ton-submenu-depth-1::before,.ton-submenu-depth-2::before{top:0;left:-6px;right:auto;width:6px;height:100%;}
/* JS-controlled hover state (with delay) for desktop; CSS :hover still kept as a fallback */
.ton-menu-item.is-hover-open > .ton-submenu,.ton-menu-item:focus-within > .ton-submenu{display:block;}
}
@media(hover:hover) and (min-width:769px){.ton-menu-item:hover > .ton-submenu{display:block;}}
.ton-submenu li>a{display:flex;align-items:center;justify-content:space-between;padding:.45rem 1rem;font-size:.74rem;color:rgba(255,255,255,.75);transition:background .15s,color .15s;white-space:nowrap;}
.ton-submenu li>a:hover{background:rgba(255,255,255,.09);color:#fff;}
.ton-caret-right{flex-shrink:0;}

/* Header right */
.header-right{margin-left:auto;display:flex;align-items:center;gap:.6rem;flex-shrink:0;}

/* Search — header icon */
.header-search-link{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:7px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.13);color:rgba(255,255,255,.7);transition:background .15s,color .15s,transform .15s;}
.header-search-link:hover{background:rgba(255,255,255,.18);color:#fff;transform:scale(1.06);}

/* Social */
.header-social{display:flex;align-items:center;gap:.3rem;}
.header-soc-btn{width:26px;height:26px;border-radius:6px;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.6);background:rgba(255,255,255,.08);transition:background .15s,color .15s;}
.header-soc-btn:hover{background:var(--orange);color:#fff;}

/* Weather — top right corner */
.header-weather{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:rgba(255,255,255,.9);background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:.35rem .75rem;white-space:nowrap;flex-shrink:0;}
.weather-icon{font-size:1.1rem;line-height:1;}
.weather-info{display:flex;flex-direction:column;align-items:flex-start;line-height:1.25;}
.weather-temp{font-weight:700;font-size:.78rem;color:#fff;}
.weather-city{font-size:.6rem;color:rgba(255,255,255,.5);}

/* ── TICKER ── */
.ticker-bar{background:var(--orange);color:#fff;padding:.46rem clamp(1rem,4vw,3rem);font-size:.71rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;display:flex;align-items:center;gap:1rem;overflow:hidden;position:relative;}
.ticker-label{background:var(--navy);padding:.17rem .52rem;border-radius:4px;font-size:.64rem;white-space:nowrap;flex-shrink:0;position:relative;z-index:2;}
.ticker-track{display:flex;gap:3rem;animation:ticker 90s linear infinite;white-space:nowrap;}
.ticker-track:hover{animation-play-state:paused;}
.ticker-track a{color:#fff;text-decoration:none;}
.ticker-track a:hover{text-decoration:underline;}
.ticker-track em{font-style:normal;opacity:.7;font-size:.65rem;}
@keyframes ticker{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}

/* ── ADS ── */
.ad-wrap{display:flex;flex-direction:column;align-items:center;padding:.6rem clamp(1rem,4vw,3rem);background:var(--bg-alt);}
.ad-label{font-size:.58rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);text-align:center;margin-bottom:.3rem;}

/* ── YOUTUBE HERO ── */
.yt-hero{background:linear-gradient(135deg,#0a0a0a 0%,#1a0500 35%,#0F2044 100%);padding:clamp(2rem,4vw,3rem) clamp(1rem,4vw,3rem);}
.yt-hero-inner{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr;gap:2.5rem;align-items:center;}
.yt-badge-row{display:flex;align-items:center;gap:.7rem;margin-bottom:1rem;}
.yt-badge{background:#FF0000;color:#fff;font-size:.61rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:.24rem .58rem;border-radius:5px;}
.yt-hero-title{font-family:'Playfair Display',serif;font-size:clamp(1.5rem,2.8vw,2.2rem);font-weight:900;color:#fff;line-height:1.12;margin-bottom:.82rem;}
.yt-hero-title em{color:var(--orange);font-style:normal;}
.yt-hero-desc{font-size:.83rem;color:rgba(255,255,255,.62);line-height:1.65;margin-bottom:1.35rem;}
.yt-btn-row{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;}
.yt-sub-btn{display:inline-flex;align-items:center;gap:.5rem;background:#FF0000;color:#fff;padding:.58rem 1.25rem;border-radius:99px;font-size:.79rem;font-weight:700;transition:background .2s;}
.yt-sub-btn:hover{background:#cc0000;}
.yt-watch-btn{display:inline-flex;align-items:center;gap:.45rem;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.17);color:#fff;padding:.58rem 1.05rem;border-radius:99px;font-size:.79rem;font-weight:600;transition:background .2s;}
.yt-watch-btn:hover{background:rgba(255,255,255,.17);}
.yt-embed-wrap{border-radius:var(--r-lg);overflow:hidden;box-shadow:0 20px 55px rgba(0,0,0,.5);}
.yt-embed-wrap iframe{width:100%;aspect-ratio:16/9;border:none;display:block;}

/* ── PAGE LAYOUT ── */
.page-wrap{max-width:1440px;margin:0 auto;padding:clamp(1.5rem,3vw,2.25rem) clamp(1rem,4vw,3rem);display:flex;gap:2.25rem;}
.main-content{flex:1;min-width:0;}
.sidebar{width:292px;flex-shrink:0;display:flex;flex-direction:column;gap:1.35rem;}

/* ── SECTIONS ── */
.ton-section{margin-bottom:2rem;}
.region-div{display:flex;align-items:center;gap:.9rem;margin:1.75rem 0 1.15rem;}
.region-div:first-child{margin-top:0;}
.region-div h2{font-size:clamp(.85rem,1.4vw,1rem);font-weight:700;color:var(--text-mid);white-space:nowrap;}
.region-line{flex:1;height:2px;background:linear-gradient(to right,var(--orange),transparent);border-radius:1px;}

/* ── SOURCE GRID ── */
.sources-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;}
.source-card{background:var(--white);border-radius:var(--r-lg);padding:1.15rem 1.1rem 1rem;box-shadow:var(--shadow-sm);border:1px solid var(--border);position:relative;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s;}
.source-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);}
.source-card::before{content:'';position:absolute;top:-32px;right:-32px;width:80px;height:80px;border-radius:50%;opacity:.45;pointer-events:none;}
.source-card:nth-child(3n+1)::before{background:var(--orange-pale);}
.source-card:nth-child(3n+2)::before{background:var(--navy-pale);}
.source-card:nth-child(3n)::before{background:var(--orange-pale);top:auto;right:auto;bottom:-32px;left:-32px;}
.sc-header{display:flex;align-items:center;gap:.6rem;margin-bottom:.9rem;padding-bottom:.72rem;border-bottom:1px solid var(--border);}
.sc-meta{flex:1;min-width:0;}
.sc-name{font-size:.76rem;font-weight:700;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sc-tag{font-size:.56rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--orange);}
.sc-ext{color:rgba(15,32,68,.28);flex-shrink:0;transition:color .15s;}.sc-ext:hover{color:var(--orange);}
.headline-list{display:flex;flex-direction:column;flex:1;}
.hl-item{padding:.48rem 0;border-bottom:1px solid rgba(15,32,68,.07);display:flex;gap:.5rem;align-items:flex-start;}
.hl-item:last-child{border-bottom:none;padding-bottom:0;}
.hl-img{width:52px;height:38px;object-fit:cover;border-radius:5px;flex-shrink:0;margin-top:2px;}
.hl-body{flex:1;min-width:0;}
.hl-title{font-size:.79rem;font-weight:700;line-height:1.34;color:var(--text-dark);display:block;transition:color .15s;}
.hl-title:hover{color:var(--orange);}
.hl-date{font-size:.6rem;color:var(--text-muted);margin-top:.18rem;}

/* ── SIDEBAR ── */
.widget{background:var(--white);border-radius:var(--r-md);padding:1.15rem;border:1px solid var(--border);box-shadow:var(--shadow-sm);}
.widget-title{font-size:.63rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.82rem;display:flex;align-items:center;gap:.5rem;}
.widget-title::after{content:'';flex:1;height:1px;background:var(--border);}
.sidebar-hl-item{padding:.5rem 0;border-bottom:1px solid var(--border);}
.sidebar-hl-item:last-child{border-bottom:none;}
.sidebar-hl-title{font-size:.77rem;font-weight:600;color:var(--text-dark);line-height:1.35;display:block;transition:color .15s;}
.sidebar-hl-title:hover{color:var(--orange);}
.sidebar-hl-source{font-size:.6rem;color:var(--orange);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-top:.15rem;display:block;}

/* ── FOOTER ── */
.site-footer{background:var(--navy);color:rgba(255,255,255,.6);padding:3rem clamp(1rem,4vw,3rem) 1.5rem;border-top:1px solid rgba(255,255,255,.07);}
.footer-inner{max-width:1440px;margin:0 auto;}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.09);margin-bottom:1.5rem;}
.footer-brand p{font-size:.73rem;line-height:1.65;margin-bottom:.82rem;}
.footer-soc{display:flex;gap:.36rem;flex-wrap:wrap;}
.fsoc-btn{width:27px;height:27px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:6px;color:rgba(255,255,255,.5);display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s;}
.fsoc-btn:hover{background:var(--orange);color:#fff;border-color:transparent;}
.footer-col h4{font-size:.61rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.33);margin-bottom:.58rem;}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.28rem;}
.footer-col ul li a{font-size:.73rem;color:rgba(255,255,255,.48);transition:color .15s;}
.footer-col ul li a:hover{color:#fff;}
.footer-nl-form{margin-top:.75rem;display:flex;flex-direction:column;gap:.4rem;}
.footer-nl-form input{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:7px;padding:.5rem .75rem;color:#fff;font-size:.76rem;font-family:inherit;outline:none;transition:border-color .15s;}
.footer-nl-form input:focus{border-color:var(--orange);}
.footer-nl-form input::placeholder{color:rgba(255,255,255,.3);}
.footer-nl-form button{background:var(--orange);color:#fff;border:none;border-radius:7px;padding:.5rem;font-size:.76rem;font-weight:700;font-family:inherit;cursor:pointer;transition:background .15s;}
.footer-nl-form button:hover{background:var(--orange-light);}
.nl-msg{font-size:.72rem;min-height:1.2em;}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;font-size:.67rem;color:rgba(255,255,255,.27);flex-wrap:wrap;gap:.5rem;}

/* ── STATIC PAGES ── */
.ton-static-page{max-width:860px;}
.ton-static-page h1{font-size:1.6rem;font-weight:700;color:var(--navy);margin-bottom:1.25rem;}
.entry-content{font-size:.95rem;color:var(--text-mid);line-height:1.75;}
.ton-404{text-align:center;padding:4rem 2rem;}
.ton-404 h1{font-size:5rem;font-weight:900;color:var(--orange);line-height:1;}
.ton-no-feeds{text-align:center;padding:3rem;color:var(--text-muted);}
.ton-search-wrap{max-width:860px;}
.ton-search-form{display:flex;gap:.5rem;margin:1rem 0 1.5rem;}
.ton-search-form input{flex:1;padding:.65rem 1rem;border:1px solid var(--border);border-radius:8px;font-size:.9rem;font-family:inherit;outline:none;}
.ton-search-form input:focus{border-color:var(--orange);}
.ton-search-form button{background:var(--orange);color:#fff;border:none;padding:.65rem 1.25rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;}
.ton-search-list{display:flex;flex-direction:column;gap:.75rem;}
.ton-search-item{display:flex;gap:.75rem;align-items:flex-start;background:var(--white);border:1px solid var(--border);border-radius:var(--r-sm);padding:.75rem 1rem;}
.search-item-img{width:72px;height:48px;object-fit:cover;border-radius:5px;flex-shrink:0;}
.search-item-title{font-size:.85rem;font-weight:600;color:var(--text-dark);display:block;transition:color .15s;}
.search-item-title:hover{color:var(--orange);}
.search-item-source{font-size:.62rem;color:var(--orange);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem;display:block;}

/* ── RESPONSIVE ── */
@media(max-width:1024px){.sources-grid{grid-template-columns:repeat(2,1fr);}.footer-grid{grid-template-columns:1.4fr 1fr 1fr;}.yt-hero-inner{grid-template-columns:1fr 1fr;gap:1.5rem;}.header-search input{width:110px;}.weather-city{display:none;}.header-datetime{font-size:.58rem;padding-left:.6rem;}}
@media(max-width:768px){.header-top{height:56px;gap:.5rem;flex-wrap:nowrap;}.site-header{padding:0 .75rem;}.logo-text span{display:none;}.header-datetime{display:none;}.header-search{display:none;}.header-social{display:none;}.header-weather{display:none;}.header-right{margin-left:0;gap:.3rem;flex:0 0 auto;}.ton-mobile-toggle{display:flex !important;margin-left:auto;flex-shrink:0;}.ton-nav-wrap{display:contents !important;}.ton-dynamic-nav{display:none;}.ton-dynamic-nav.is-open{display:flex !important;flex-direction:column;position:fixed;top:56px;left:0;right:0;bottom:0;background:rgba(15,32,68,0.97);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);overflow-y:auto;padding:1rem 1.25rem;z-index:1999;gap:0;box-shadow:0 8px 32px rgba(0,0,0,.45);}.ton-dynamic-nav.is-open .ton-menu-item{border-bottom:1px solid rgba(255,255,255,.07);width:100%;}.ton-dynamic-nav.is-open .ton-menu-item>a{padding:.85rem .5rem;font-size:.95rem;border-radius:0;width:100%;justify-content:space-between;color:rgba(255,255,255,.85);}.ton-dynamic-nav.is-open .ton-submenu{position:static;background:rgba(255,255,255,.04);box-shadow:none;border:none;border-radius:0;padding:0;margin-left:1rem;display:none;width:auto;}.ton-dynamic-nav.is-open .ton-menu-item.is-open>.ton-submenu{display:block;}.ton-dynamic-nav.is-open .ton-submenu li>a{padding:.65rem .75rem;font-size:.85rem;}.ticker-bar{font-size:.65rem;padding:.4rem 1rem;}.yt-hero{padding:1.5rem 1rem;}.yt-hero-inner{grid-template-columns:1fr;gap:1.25rem;}.yt-hero-title{font-size:1.4rem;}.page-wrap{flex-direction:column;padding:1.25rem 1rem;gap:1.5rem;}.main-content,.sidebar{width:100%;}.sources-grid{grid-template-columns:1fr;gap:.85rem;}.region-div{margin:1.25rem 0 .85rem;}.source-card{padding:1rem;border-radius:var(--r-md);}.footer-grid{grid-template-columns:1fr 1fr;gap:1.5rem;}.footer-brand{grid-column:1/-1;}.site-footer{padding:2rem 1rem 1.25rem;}}
@media(max-width:480px){.site-header{padding:0 .75rem;}.header-top{height:52px;gap:.5rem;}.logo-mark{width:28px;height:28px;font-size:.78rem;}.logo-text strong{font-size:.78rem;}.header-search{display:none;}.header-datetime{display:none;}.header-weather{padding:.28rem .5rem;font-size:.68rem;}.yt-hero-title{font-size:1.2rem;}.yt-btn-row{flex-direction:column;align-items:flex-start;}.footer-grid{grid-template-columns:1fr;}.footer-bottom{flex-direction:column;text-align:center;}.ton-search-form{flex-direction:column;}}
@media(max-width:360px){.logo-text{display:none;}.ht-img{width:42px;height:30px;}}
@media(hover:none) and (pointer:coarse){.hl-title{min-height:44px;display:flex;align-items:center;}.ton-menu-item>a{min-height:44px;display:flex;align-items:center;}.source-card:hover{transform:none;}.footer-nl-form button,.footer-nl-form input{min-height:44px;}}
@media print{.site-header,.ticker-bar,.sidebar,.ad-wrap,.yt-hero,.site-footer{display:none!important;}.page-wrap{padding:0;}.sources-grid{grid-template-columns:repeat(2,1fr);}.source-card{box-shadow:none;border:1px solid #ccc;break-inside:avoid;}}

/* ── LOGO VARIANTS ── */
.site-logo-desktop { display: block; height: 40px; width: auto; }
.site-logo-mobile  { display: none;  height: 32px; width: auto; }
/* If only one logo uploaded (no separate mobile), always show desktop version */
.site-logo-desktop:only-child { display: block !important; }
@media (max-width: 480px) {
  /* If mobile logo exists, swap them */
  .site-logo-desktop + .site-logo-mobile { display: block; }
  .site-logo-desktop + .site-logo-mobile ~ * { display: none; }
  /* If no mobile logo, shrink desktop logo */
  .site-logo-desktop:only-child { height: 28px; }
}

/* ── MOBILE NAV OVERLAY ── */
/* Overlay behind menu so content is dimmed */
.ton-nav-overlay {
  display: none;
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(0,0,0,0.45);
  z-index: 198;
}
.ton-nav-overlay.is-active { display: block; }

/* Fix top position per breakpoint */
@media (max-width: 768px) {
  .ton-dynamic-nav.is-open { top: 56px; }
}
@media (max-width: 480px) {
  .ton-dynamic-nav.is-open { top: 52px; }
}
@media (max-width: 360px) {
  .ton-dynamic-nav.is-open { top: 52px; }
}

/* Ticker: fade mask so text doesn't overlap LIVE badge */
.ticker-bar::after{content:'';position:absolute;left:clamp(1rem,4vw,3rem);top:0;bottom:0;width:70px;background:linear-gradient(to right,var(--orange) 60%,transparent);pointer-events:none;z-index:1;}

/* ── PAGE HEADER (Country / Province / City pages) ── */
.ton-page-header{display:flex;align-items:center;gap:.9rem;margin:0 0 1.15rem;padding-bottom:.5rem;}
.ton-breadcrumb{font-size:.7rem;color:var(--text-muted);display:flex;align-items:center;flex-wrap:wrap;gap:.3rem;white-space:nowrap;}
.ton-breadcrumb a{color:var(--orange);font-weight:600;}
.ton-breadcrumb a:hover{text-decoration:underline;}
.ton-bc-sep{color:var(--text-muted);opacity:.5;}
.ton-page-title{font-family:var(--font-sans);font-size:clamp(.95rem,1.5vw,1.1rem);font-weight:800;color:var(--text-mid);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;margin:0;}
.ton-page-header::after{content:'';flex:1;height:2px;background:linear-gradient(to right,var(--orange),transparent);border-radius:1px;}

/* ── Nav items without a published page (visual hint) ── */
.ton-dynamic-nav .ton-no-page > a{opacity:.55;cursor:not-allowed;}
.ton-dynamic-nav .ton-no-page > a:hover{background:transparent;color:rgba(255,255,255,.45);}

/* ── EXPAND BUTTON (mobile only) ── */
.ton-expand-btn{display:none;background:none;border:none;cursor:pointer;color:rgba(255,255,255,.6);padding:0;align-items:center;justify-content:center;transition:transform .2s,color .15s;}
.ton-expand-btn:hover,.ton-expand-btn:focus-visible{color:#fff;outline:none;}
/* Hide on desktop — hover handles expansion there */
@media(min-width:769px){.ton-expand-btn{display:none !important;}}

/* ── MOBILE ACCORDION — max-height technique (v1.10.5) ─────────────────────
   Submenus are ALWAYS display:block on mobile. They are hidden/shown via
   max-height:0/overflow:hidden instead of display:none/block.
   This means no CSS cascade war over "display" is possible — max-height and
   overflow are never contested by any external plugin or theme rule. ── */

body > .ton-dynamic-nav.is-open{list-style:none !important;}
body > .ton-dynamic-nav.is-open .ton-menu-item{display:flex !important;flex-wrap:wrap !important;align-items:center !important;width:100% !important;border-bottom:1px solid rgba(255,255,255,.08) !important;position:relative !important;}
body > .ton-dynamic-nav.is-open .ton-menu-item > a{display:flex !important;align-items:center !important;flex:1 !important;padding:1rem .75rem !important;color:rgba(255,255,255,.92) !important;font-size:1rem !important;font-weight:500 !important;border-radius:0 !important;background:transparent !important;text-decoration:none !important;min-width:0 !important;}
body > .ton-dynamic-nav.is-open .ton-menu-item > a:hover,
body > .ton-dynamic-nav.is-open .ton-menu-item > a:active{background:rgba(255,255,255,.07) !important;color:#fff !important;}
body > .ton-dynamic-nav.is-open .ton-expand-btn{display:flex !important;width:48px !important;height:48px !important;flex-shrink:0 !important;border-left:1px solid rgba(255,255,255,.08) !important;color:rgba(255,255,255,.7) !important;transition:transform .25s,color .15s !important;}
body > .ton-dynamic-nav.is-open .ton-menu-item.is-open > .ton-expand-btn{transform:rotate(180deg) !important;color:var(--orange) !important;}

/* KEY: display:block always — hiding is done via max-height, never display:none */
body > .ton-dynamic-nav.is-open .ton-submenu{
  display:block !important;
  max-height:0 !important;
  overflow:hidden !important;
  transition:max-height .3s ease !important;
  position:static !important;left:auto !important;right:auto !important;
  top:auto !important;bottom:auto !important;
  width:100% !important;flex-basis:100% !important;
  min-width:0 !important;max-width:none !important;
  transform:none !important;
  background:rgba(255,255,255,.04) !important;border:none !important;
  box-shadow:none !important;border-radius:0 !important;
  padding:0 !important;margin:0 !important;list-style:none !important;
}
/* OPEN: expand the accordion */
body > .ton-dynamic-nav.is-open .ton-menu-item.is-open > .ton-submenu{
  max-height:9999px !important;
  overflow:visible !important;
}

body > .ton-dynamic-nav.is-open .ton-submenu .ton-menu-item{padding-left:1rem !important;}
body > .ton-dynamic-nav.is-open .ton-submenu li > a{padding:.85rem 1rem !important;font-size:.92rem !important;color:rgba(255,255,255,.8) !important;}
body > .ton-dynamic-nav.is-open .ton-submenu-depth-1 li > a{padding-left:1.6rem !important;}
body > .ton-dynamic-nav.is-open .ton-submenu-depth-2 li > a{padding-left:2.4rem !important;font-size:.86rem !important;}
body > .ton-dynamic-nav.is-open .ton-caret,
body > .ton-dynamic-nav.is-open .ton-caret-right{display:none !important;}
body > .ton-dynamic-nav.is-open .ton-no-page > a{opacity:.5 !important;}
body > .ton-dynamic-nav.is-open .ton-menu-viewparent > a.ton-view-parent{color:#FF8A4C !important;font-weight:700 !important;font-size:.78rem !important;text-transform:uppercase !important;letter-spacing:.05em !important;border-bottom:1px solid rgba(255,255,255,.10) !important;padding-top:.85rem !important;padding-bottom:.85rem !important;}
body > .ton-dynamic-nav.is-open .ton-menu-viewparent{list-style:none !important;}


/* ── MOBILE MENU base styles — hamburger only visible on mobile ── */
@media(min-width:769px){
  .ton-mobile-toggle{display:none !important;}
}
.ton-mobile-toggle{flex-direction:column;justify-content:center;align-items:center;gap:4px;background:none;border:1px solid rgba(255,255,255,.15);border-radius:6px;cursor:pointer;padding:.5rem;width:38px;height:38px;flex-shrink:0;}
.ton-mobile-toggle span{display:block;width:20px;height:2px;background:#fff;border-radius:2px;transition:all .25s;}

/* ── HEADLINE SHARE BUTTON ── */
.hl-item{position:relative;}
.hl-share{flex-shrink:0;background:transparent;border:1px solid var(--border);color:var(--text-muted);width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,color .15s,border-color .15s,transform .15s;margin-left:.4rem;align-self:flex-start;}
.hl-share:hover,.hl-share:focus-visible{background:var(--orange);color:#fff;border-color:var(--orange);transform:scale(1.05);outline:none;}

/* ── SHARE POPOVER (desktop fallback) ── */
.ton-share-backdrop{position:fixed;inset:0;background:rgba(15,32,68,.45);backdrop-filter:blur(3px);z-index:9998;opacity:0;animation:tonShareIn .15s forwards;}
.ton-share-modal{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);background:#fff;border-radius:14px;box-shadow:0 24px 64px rgba(0,0,0,.25);z-index:9999;width:min(380px,calc(100vw - 2rem));padding:1.25rem 1.25rem 1rem;animation:tonShareIn .18s ease-out;}
@keyframes tonShareIn{from{opacity:0;transform:translate(-50%,-48%) scale(.96);}to{opacity:1;transform:translate(-50%,-50%) scale(1);}}
.ton-share-modal h3{font-family:var(--font-sans);font-size:.95rem;font-weight:800;color:var(--navy);margin:0 0 .15rem;text-transform:uppercase;letter-spacing:.03em;}
.ton-share-modal .ton-share-sub{font-size:.78rem;color:var(--text-muted);margin:0 0 1rem;line-height:1.35;}
.ton-share-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;margin-bottom:.85rem;}
.ton-share-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;background:var(--gray-50,#f3f4f6);border:1px solid var(--border);border-radius:10px;padding:.7rem .35rem;text-decoration:none;color:var(--text-mid);font-size:.65rem;font-weight:600;cursor:pointer;transition:all .15s;}
.ton-share-btn:hover{background:var(--orange);color:#fff;border-color:var(--orange);transform:translateY(-1px);}
.ton-share-btn svg{width:20px;height:20px;}
.ton-share-close{position:absolute;top:.6rem;right:.6rem;background:none;border:none;cursor:pointer;color:var(--text-muted);width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem;line-height:1;}
.ton-share-close:hover{background:var(--gray-50,#f3f4f6);color:var(--navy);}
.ton-share-copied{font-size:.72rem;color:#16a34a;text-align:center;font-weight:600;margin-top:.25rem;min-height:1rem;}

/* Footer legal links (Privacy + Terms) */
.footer-legal-menu{display:inline-flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.78rem;}
.footer-legal-menu a{color:rgba(255,255,255,.7);text-decoration:none;transition:color .15s;}
.footer-legal-menu a:hover{color:var(--orange,#f97316);text-decoration:underline;}
.footer-legal-menu .footer-sep{color:rgba(255,255,255,.35);}

/* ── ADVANCED SEARCH CARD (sidebar) ── */
.ton-adv-search-card{display:flex;align-items:center;gap:.75rem;padding:.95rem 1rem;background:linear-gradient(135deg,var(--navy) 0%,var(--navy-mid,#1a3163) 100%);color:#fff;border-radius:var(--r-md);text-decoration:none;transition:transform .15s,box-shadow .15s;position:relative;overflow:hidden;}
.ton-adv-search-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(15,32,68,.25);}
.ton-adv-search-card::before{content:'';position:absolute;inset:auto -20px -30px auto;width:90px;height:90px;background:radial-gradient(circle,var(--orange) 0%,transparent 70%);opacity:.25;border-radius:50%;}
.ton-adv-search-icon{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;color:var(--orange);position:relative;z-index:1;}
.ton-adv-search-text{flex:1;display:flex;flex-direction:column;gap:.1rem;position:relative;z-index:1;line-height:1.2;}
.ton-adv-search-text strong{font-size:.85rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase;color:#fff;}
.ton-adv-search-text small{font-size:.7rem;color:rgba(255,255,255,.65);font-weight:500;}
.ton-adv-search-arrow{font-size:1.4rem;color:rgba(255,255,255,.5);transition:transform .2s,color .15s;position:relative;z-index:1;}
.ton-adv-search-card:hover .ton-adv-search-arrow{transform:translateX(3px);color:var(--orange);}

/* ── SEARCH PAGE ── */
.ton-search-page .main-content{flex:1 1 100%;max-width:920px;margin:0 auto;}
.ton-search-form{background:#fff;border:1px solid var(--border);border-radius:var(--r-md);padding:1.25rem;margin-bottom:1.5rem;box-shadow:0 1px 3px rgba(0,0,0,.04);}
.ton-sf-row{margin-bottom:.9rem;}
.ton-sf-row:last-child{margin-bottom:0;}
.ton-sf-q-wrap{position:relative;display:flex;align-items:center;}
.ton-sf-q-icon{position:absolute;left:14px;color:var(--text-muted);pointer-events:none;}
#ton-sf-q{width:100%;padding:.85rem 1rem .85rem 2.5rem;font-size:1rem;border:2px solid var(--border);border-radius:8px;background:#fff;color:#111827;font-family:inherit;transition:border-color .15s,box-shadow .15s;}
#ton-sf-q:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--orange) 18%,transparent);}
.ton-sf-filters{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;}
.ton-sf-field{display:flex;flex-direction:column;gap:.3rem;}
.ton-sf-field label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);}
.ton-sf-field select{padding:.55rem .6rem;font-size:.85rem;border:1px solid var(--border);border-radius:7px;background:#fff;color:#111827;font-family:inherit;cursor:pointer;}
.ton-sf-field select:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 2px color-mix(in srgb,var(--orange) 14%,transparent);}
.ton-sf-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;}
.ton-sf-submit{background:var(--orange);color:#fff;border:none;padding:.7rem 1.6rem;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border-radius:7px;cursor:pointer;transition:transform .15s,background .15s;font-family:inherit;}
.ton-sf-submit:hover{background:color-mix(in srgb,var(--orange) 85%,#000);transform:translateY(-1px);}
.ton-sf-clear{background:transparent;color:var(--text-muted);border:1px solid var(--border);padding:.7rem 1.2rem;font-size:.8rem;font-weight:600;border-radius:7px;cursor:pointer;transition:background .15s;font-family:inherit;}
.ton-sf-clear:hover{background:#f3f4f6;color:var(--navy);}
.ton-sf-status{font-size:.78rem;color:var(--text-muted);margin-left:auto;}

/* Results */
.ton-search-results{margin-bottom:1.25rem;}
.ton-search-list{list-style:none;padding:0;margin:0;background:#fff;border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;}
.ton-search-item{padding:1rem 1.25rem;border-bottom:1px solid #e3e8f0;transition:background .15s;}
.ton-search-item:last-child{border-bottom:none;}
.ton-search-item:hover{background:#f8fafc;}
.ton-search-headline{display:block;color:var(--navy);font-size:1.02rem;font-weight:700;line-height:1.35;text-decoration:none;margin-bottom:.35rem;}
.ton-search-headline:hover{color:var(--orange);text-decoration:underline;}
.ton-search-meta{font-size:.74rem;color:var(--text-muted);font-weight:500;}
.ton-search-date{color:#9ca3af;}
.ton-search-empty{padding:2rem 1.5rem;background:#fff;border:1px dashed var(--border);border-radius:var(--r-md);text-align:center;color:var(--text-muted);font-size:.9rem;}

/* Pager */
.ton-search-pager{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1rem;}
.ton-search-pager:empty{display:none;}
.ton-pager-btn{background:#fff;color:var(--navy);border:1px solid var(--border);padding:.5rem 1rem;font-size:.78rem;font-weight:600;border-radius:7px;cursor:pointer;font-family:inherit;}
.ton-pager-btn:hover:not([disabled]){background:var(--navy);color:#fff;border-color:var(--navy);}
.ton-pager-btn[disabled]{opacity:.4;cursor:not-allowed;}
.ton-pager-info{font-size:.78rem;color:var(--text-muted);font-weight:600;}

@media(max-width:768px){
  .ton-sf-filters{grid-template-columns:1fr 1fr;}
  .ton-sf-actions{flex-direction:column;align-items:stretch;}
  .ton-sf-status{margin-left:0;text-align:center;}
  .ton-search-headline{font-size:.95rem;}
}

/* ──────────────────────────────────────────────────────────────────
   v1.10.0  —  NEW STYLES
   ────────────────────────────────────────────────────────────────── */

/* (coming soon) badge in footer */
.footer-coming-soon{font-size:.6rem;color:#9ca3af;font-style:italic;margin-left:.25rem;font-weight:400;letter-spacing:.02em;}
.footer-col ul li a:hover .footer-coming-soon{color:#cbd5e1;}

/* ── ACCORDION SECTIONS (P1.4 / P1.5) ── */
.ton-section--accordion{background:var(--white);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-sm);overflow:hidden;margin-bottom:1rem;transition:box-shadow .2s;}
.ton-section--accordion:hover{box-shadow:var(--shadow-md);}
.ton-section--accordion.is-open{box-shadow:var(--shadow-md);}
.ton-acc-toggle{width:100%;display:flex;align-items:center;gap:1rem;background:transparent;border:none;cursor:pointer;padding:1.1rem 1.25rem;font-family:inherit;color:var(--navy);text-align:left;transition:background .15s;}
.ton-acc-toggle:hover,.ton-acc-toggle:focus-visible{background:var(--orange-pale);outline:none;}
.ton-acc-title{flex:1;font-size:1.02rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--navy);}
.ton-acc-meta{font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--bg-alt);padding:.22rem .55rem;border-radius:99px;flex-shrink:0;}
.ton-acc-plus{flex-shrink:0;color:var(--orange);transition:transform .25s ease;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:rgba(232,91,13,.08);}
.ton-section--accordion.is-open .ton-acc-plus{transform:rotate(45deg);background:rgba(232,91,13,.18);}
.ton-acc-body{padding:0 1.25rem 1.25rem;border-top:1px solid var(--border);animation:tonAccIn .25s ease;}
.ton-acc-body[hidden]{display:none;}
@keyframes tonAccIn{from{opacity:0;transform:translateY(-4px);}to{opacity:1;transform:translateY(0);}}

/* ── LINK-LIST CARD (P1.9) ── */
.ton-linklist-card .sc-name::before{content:'★ ';color:var(--orange);font-weight:900;}
.ton-linklist-card .sc-ext{color:var(--orange);}
.ton-linklist-items .hl-item{padding:.42rem 0;}

/* ── FALLBACK: nav still inside header (edge case, max-height approach) ── */
@media (max-width: 768px) {
  .ton-dynamic-nav.is-open .ton-submenu {
    display: block !important;
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height .3s ease !important;
    position: static !important;
    left: auto !important; right: auto !important;
    top: auto !important; bottom: auto !important;
    width: 100% !important; flex-basis: 100% !important;
    min-width: 0 !important; max-width: none !important;
    transform: none !important;
    background: rgba(255,255,255,.04) !important;
    border: none !important; box-shadow: none !important;
    border-radius: 0 !important; padding: 0 !important;
    margin: 0 !important; list-style: none !important;
  }
  .ton-dynamic-nav.is-open .ton-menu-item.is-open > .ton-submenu {
    max-height: 9999px !important;
    overflow: visible !important;
  }
  .ton-dynamic-nav.is-open .ton-menu-item { display: flex !important; flex-wrap: wrap !important; width: 100% !important; }
  .ton-dynamic-nav.is-open .ton-menu-item > a { flex: 1 !important; min-width: 0 !important; }
  .ton-dynamic-nav.is-open .ton-submenu-depth-1 li > a { padding-left: 1.6rem !important; }
  .ton-dynamic-nav.is-open .ton-submenu-depth-2 li > a { padding-left: 2.4rem !important; font-size: .86rem !important; }
  .ton-dynamic-nav.is-open .ton-submenu .ton-expand-btn {
    display: flex !important; width: 44px !important; height: 44px !important;
    flex-shrink: 0 !important; align-self: center !important;
    border-left: 1px solid rgba(255,255,255,.08) !important; color: rgba(255,255,255,.7) !important;
  }
  .ton-dynamic-nav.is-open .ton-menu-viewparent > a.ton-view-parent {
    color: #FF8A4C !important; font-weight: 700 !important; font-size: .78rem !important;
    text-transform: uppercase !important; letter-spacing: .05em !important;
    border-bottom: 1px solid rgba(255,255,255,.10) !important;
    padding-top: .85rem !important; padding-bottom: .85rem !important;
  }
  .ton-dynamic-nav.is-open .ton-menu-viewparent { list-style: none !important; }
}

/* ── 404 PAGE ── */
.ton-404-main{display:flex;align-items:center;justify-content:center;min-height:60vh;}
.ton-404-hero{width:100%;max-width:1440px;padding:clamp(2rem,6vw,5rem) clamp(1rem,4vw,3rem);}
.ton-404-inner{max-width:640px;margin:0 auto;text-align:center;}
.ton-404-badge{width:74px;height:74px;border-radius:50%;background:linear-gradient(135deg,var(--orange) 0%,var(--orange-light) 100%);color:#fff;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 16px 40px rgba(232,91,13,.30);margin-bottom:1.5rem;}
.ton-404-code{font-family:'Playfair Display',serif;font-weight:900;font-size:clamp(5rem,18vw,9.5rem);line-height:.9;background:linear-gradient(135deg,var(--navy) 0%,var(--orange) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:-.03em;margin-bottom:.5rem;}
.ton-404-title{font-family:'Playfair Display',serif;font-size:clamp(1.25rem,3.2vw,1.95rem);font-weight:700;color:var(--navy);margin-bottom:.75rem;line-height:1.2;}
.ton-404-lede{font-size:1rem;color:var(--text-mid);line-height:1.6;margin-bottom:1.75rem;}
.ton-404-cta-row{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.5rem;}
.ton-404-cta{display:inline-flex;align-items:center;gap:.5rem;padding:.78rem 1.5rem;border-radius:99px;font-size:.86rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;transition:transform .15s,box-shadow .15s,background .15s;text-decoration:none;}
.ton-404-cta-primary{background:var(--orange);color:#fff;box-shadow:0 6px 18px rgba(232,91,13,.25);}
.ton-404-cta-primary:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(232,91,13,.40);background:var(--orange-light);}
.ton-404-cta-secondary{background:transparent;color:var(--navy);border:2px solid var(--navy);}
.ton-404-cta-secondary:hover{background:var(--navy);color:#fff;transform:translateY(-1px);}
.ton-404-quicklinks{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem;font-size:.78rem;color:var(--text-muted);}
.ton-404-quicklinks-label{font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.7rem;margin-right:.3rem;}
.ton-404-quicklinks a{color:var(--navy);font-weight:600;transition:color .15s;}
.ton-404-quicklinks a:hover{color:var(--orange);text-decoration:underline;}

/* ── CONTACT FORM (P2.11) ── */
.ton-contact-wrap{padding:clamp(1rem,3vw,2rem) 0;}
.ton-contact-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:2.5rem;align-items:start;background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);padding:clamp(1.5rem,3vw,2.5rem);box-shadow:var(--shadow-sm);}
.ton-contact-info{padding-right:1rem;border-right:1px solid var(--border);}
.ton-contact-title{font-family:'Playfair Display',serif;font-size:1.75rem;font-weight:900;color:var(--navy);margin-bottom:.5rem;line-height:1.15;}
.ton-contact-lede{font-size:.92rem;color:var(--text-mid);line-height:1.6;margin-bottom:1.5rem;}
.ton-contact-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem;}
.ton-contact-list li{display:flex;gap:.85rem;align-items:flex-start;font-size:.88rem;color:var(--text-mid);}
.ton-contact-list strong{color:var(--navy);font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;}
.ton-contact-list a{color:var(--orange);font-weight:600;}
.ton-contact-list a:hover{text-decoration:underline;}
.ton-ci-icon{flex-shrink:0;width:38px;height:38px;border-radius:50%;background:var(--orange-pale);color:var(--orange);display:inline-flex;align-items:center;justify-content:center;}
.ton-contact-form{display:flex;flex-direction:column;gap:1rem;position:relative;}
.ton-cf-row.ton-cf-2col{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.ton-cf-field{display:flex;flex-direction:column;gap:.4rem;}
.ton-cf-field label{font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);}
.ton-cf-field input,.ton-cf-field select,.ton-cf-field textarea{padding:.7rem .85rem;font-size:.95rem;font-family:inherit;border:2px solid var(--border);border-radius:8px;background:#fff;color:var(--text-dark);transition:border-color .15s,box-shadow .15s;}
.ton-cf-field input:focus,.ton-cf-field select:focus,.ton-cf-field textarea:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 3px rgba(232,91,13,.12);}
.ton-cf-field textarea{resize:vertical;min-height:120px;font-family:inherit;line-height:1.5;}
.ton-cf-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:.5rem;}
.ton-cf-submit{background:var(--orange);color:#fff;border:none;padding:.78rem 1.85rem;font-size:.88rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border-radius:99px;cursor:pointer;font-family:inherit;transition:background .15s,transform .15s,box-shadow .15s;box-shadow:0 6px 18px rgba(232,91,13,.22);}
.ton-cf-submit:hover{background:var(--orange-light);transform:translateY(-1px);box-shadow:0 10px 24px rgba(232,91,13,.32);}
.ton-cf-submit[disabled]{opacity:.6;cursor:not-allowed;transform:none;}
.ton-cf-status{font-size:.85rem;font-weight:600;}
.ton-cf-status.is-success{color:#16a34a;}
.ton-cf-status.is-error{color:#dc2626;}
.ton-cf-privacy{font-size:.72rem;color:var(--text-muted);margin:0;}
.ton-cf-privacy a{color:var(--orange);font-weight:600;}
.ton-cf-privacy a:hover{text-decoration:underline;}

@media(max-width:768px){
  .ton-contact-grid{grid-template-columns:1fr;gap:1.5rem;padding:1.5rem;}
  .ton-contact-info{padding-right:0;border-right:none;padding-bottom:1.5rem;border-bottom:1px solid var(--border);}
  .ton-cf-row.ton-cf-2col{grid-template-columns:1fr;}
  .ton-acc-toggle{padding:.95rem 1rem;gap:.6rem;}
  .ton-acc-title{font-size:.95rem;}
  .ton-acc-meta{display:none;}
  .ton-acc-body{padding:0 1rem 1rem;}
  .ton-404-cta-row{flex-direction:column;align-items:stretch;}
  .ton-404-cta{justify-content:center;}
}



