:root{--ink:#20232b;--muted:#848894;--purple:#105a73;--line:#e6e8ee;--paper:#fff;--bg:#f5f6f8}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Calibri,"Segoe UI",Arial,sans-serif;font-size:14pt}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #4b9eb9;outline-offset:4px}.skip-link{position:fixed;top:-60px;background:#fff;padding:12px;z-index:5}.skip-link:focus{top:10px}.top{min-height:124px;background:var(--paper);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:24px 48px;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;align-items:flex-start;flex-direction:column;justify-self:start}.logo{font-size:49px;letter-spacing:-4px;font-weight:800;line-height:1}.logo-dot{color:var(--purple)}.logo small{font-size:16px;letter-spacing:-.5px;margin-left:4px}.slogan{font-size:11px;color:#737783;margin-top:10px;letter-spacing:.2px}.weather{justify-self:center;display:flex;align-items:center;gap:16px}.weather-icon{font-family:Arial,sans-serif;font-size:43px;color:#edb854}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:800;color:#7e8390}.weather-reading{font-size:12px;margin-top:5px}.weather-reading strong{font-size:25px;margin-right:9px;letter-spacing:-1px}.weather-detail{font-size:10px;color:var(--muted);margin-top:3px}.date-time{justify-self:end;text-align:right;font-size:12px;font-weight:600}.date-time>div{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:8px}.clock-dot,.live-label span{height:6px;width:6px;border-radius:50%;background:#105a73}.date-time time{font-size:24px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.5px}.timezone{font-size:10px;color:var(--muted);font-weight:400}.page-layout{max-width:1600px;margin:auto;display:grid;grid-template-columns:252px minmax(0,1fr)}.sidebar{padding:36px 22px 20px 28px;border-right:1px solid var(--line);display:flex;flex-direction:column;align-self:stretch;min-height:calc(100vh - 124px)}.sidebar-title{font-size:8px;letter-spacing:1.25px;font-weight:800;color:#9599a4;margin:0 8px 23px}.nav-item{width:100%;border:0;background:transparent;text-align:left;display:flex;align-items:center;gap:12px;border-radius:9px;padding:12px 11px;font-size:12px;font-weight:700;min-height:49px;color:#686d7b;transition:background .2s,color .2s}.nav-item:hover{background:#e7eef3}.nav-item.active{background:#e5f0f5;color:var(--purple)}.nav-symbol{font-size:22px;line-height:1}.nav-arrow{margin-left:auto;font-size:18px}.section-label{display:flex;justify-content:space-between;margin:32px 11px 14px;font-size:9px;color:#969ba6;font-weight:700;letter-spacing:1.5px}.section-label span{letter-spacing:0}.source-nav{display:grid;gap:5px}.source-logo{width:29px;height:29px;background:#fff;border:1px solid #e7e9ee;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-weight:800;font-size:18px;letter-spacing:-1px}.actualno{color:#eb414b}.actualno span{font-size:15px}.chasa{color:#1d58a6;font-size:15px}.bta{color:#1a6997;font-size:10px;letter-spacing:-.5px}.pogled{color:#b8323b;font-size:17px}.source-state{width:5px;height:5px;margin-left:auto;background:#c3c6d0;border-radius:50%}.source-state.ok{background:#4ca98a}.source-state.error,.source-state.cached{background:#d59d47}.sidebar-note{margin:45px 9px 35px;border-top:1px solid var(--line);padding-top:25px}.note-mark{color:var(--purple);font-size:28px}.sidebar-note h3{font-size:15px;line-height:1.7;letter-spacing:-.3px;margin:12px 0 10px}.sidebar-note p{font-size:11px;color:#9296a2;line-height:1.9}.rss-label{display:flex;align-items:center;gap:7px;font-size:9px;color:#8c90a0;margin-top:23px}.rss-label span{color:var(--purple)}.sidebar-bottom{display:flex;flex-direction:column;gap:7px;margin-top:auto;padding:30px 10px 0;font-size:9px;color:#9a9daa}.small-brand{font-weight:800;letter-spacing:1px;color:#6e7280}main{padding:37px 44px 0;min-width:0}.main-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;gap:20px}.live-label{display:flex;align-items:center;gap:8px;font-size:9px;font-weight:800;letter-spacing:1.7px;color:var(--purple)}.live-label span{box-shadow:0 0 0 4px #dcecf3;animation:pulse 2.5s infinite}h1{font-size:clamp(32px,3.2vw,49px);line-height:1.2;font-weight:800;letter-spacing:-2px;margin:19px 0 16px}h1>span{color:var(--purple)}.main-heading p{color:#888c99;font-size:12px;margin:0;line-height:1.7}.heading-stamp{border:1px solid #d3e3ec;padding:18px 23px;transform:rotate(-7deg);border-radius:4px;color:#587a90;margin-right:12px;flex-shrink:0}.heading-stamp>span{font-size:9px;letter-spacing:4px}.heading-stamp>div{font-size:26px;letter-spacing:-1px;font-weight:800;line-height:1.5}.heading-stamp>div span{margin-left:12px}.heading-stamp small{font-size:9px;letter-spacing:1px}.toolbar{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:25px;gap:15px}.feed-title{display:flex;align-items:center;gap:10px}.feed-title h2{font-size:18px;letter-spacing:-.6px;margin:0}.feed-title>span{background:#e7eef3;border-radius:5px;padding:3px 7px;font-size:10px;color:#7a7e8d;font-weight:800}.toolbar-actions{display:flex;gap:9px}.search{display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:7px;padding:9px 11px;gap:8px}.search svg,.refresh svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;color:#9699a6}.search input{width:155px;border:0;background:transparent;font-size:10px;outline:none;color:var(--ink)}.search input::placeholder{color:#a1a5b0}.refresh{display:flex;align-items:center;justify-content:center;width:36px;border:1px solid var(--line);border-radius:7px;background:#fff}.refresh:hover{background:#e8f3f7}.refresh:disabled svg{animation:spin 1s linear infinite}.feed-meta{display:flex;justify-content:space-between;gap:15px;margin:17px 0 21px;font-size:9px;color:#989daa;line-height:1.7}.feed-meta>span:last-child{font-size:8px;letter-spacing:1.25px;flex-shrink:0}.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}.news-card{background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column;min-width:0;animation:appear .4s both}.news-card:hover{transform:translateY(-4px);box-shadow:0 10px 28px #22253c0c}.card-media{position:relative;aspect-ratio:1.65;background:#e7f0f5;overflow:hidden;display:block}.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.news-card:hover img{transform:scale(1.04)}.image-placeholder{height:100%;width:100%;display:flex;align-items:center;justify-content:center;color:#a8c2d2;font-size:66px;font-weight:800;letter-spacing:-6px;background:linear-gradient(130deg,#e3eef4,#f3f7fa)}.image-placeholder::after{content:'IDA.'}.card-body{padding:18px 19px 16px;display:flex;flex-direction:column;flex:1}.card-source{display:flex;align-items:center;gap:6px;color:#777b88;font-size:9px;font-weight:700;margin-bottom:12px}.card-source i{display:block;width:5px;height:5px;border-radius:50%;background:var(--purple)}.card-source.actualno i{background:#eb5359}.card-source.chasa i{background:#477db8}.card-source.bta i{background:#3ca7a4}.card-source.pogled i{background:#aa5456}.news-card h3{font-size:15px;line-height:1.6;letter-spacing:-.35px;margin:0 0 10px;font-weight:800}.news-card h3 a:hover{color:var(--purple)}.card-description{font-size:11px;line-height:1.8;color:#8b8f9c;margin:0 0 17px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:13px;border-top:1px solid #f0f1f5;color:#9a9eaa;font-size:9px;gap:10px}.card-bottom a{font-size:16px;color:#286d8a;line-height:1}.news-card.featured{grid-column:span 2}.featured .card-media{aspect-ratio:2.4}.featured h3{font-size:23px;line-height:1.45;letter-spacing:-.7px}.featured .card-body{padding:21px 24px 18px}.featured .card-description{font-size:12px}.featured .card-source:after{content:'ВЪВ ФОКУС';font-size:8px;letter-spacing:1.5px;margin-left:auto;color:var(--purple);background:#e6f1f6;padding:4px 7px;border-radius:4px}.source-notice{background:#fff8ec;color:#90713b;border:1px solid #f0e5d2;padding:12px 15px;border-radius:7px;font-size:11px;line-height:1.7;margin-bottom:20px}.empty-state{grid-column:1/-1;text-align:center;padding:60px 22px 70px;background:white;border:1px solid var(--line);border-radius:12px}.empty-state .empty-icon{font-size:35px;color:var(--purple)}.empty-state h3{font-size:19px;margin:18px 0 10px}.empty-state p{color:var(--muted);line-height:1.8;max-width:430px;margin:auto;font-size:12px}.empty-state button{margin-top:22px;padding:10px 20px;background:var(--purple);border:0;border-radius:7px;color:white}.skeleton{height:330px;pointer-events:none}.skeleton .card-media,.skeleton-line{background:linear-gradient(100deg,#eeeff4 30%,#f8f9fc 50%,#eeeff4 70%);background-size:200% 100%;animation:shimmer 1.6s infinite}.skeleton-line{height:13px;border-radius:4px;margin-bottom:14px}.skeleton-line.short{width:45%}.feed-end{display:flex;align-items:center;gap:16px;margin:36px 0;color:#a1a4b0;font-size:10px;text-align:center}.feed-end span{height:1px;background:var(--line);flex:1}.feed-end p{max-width:75%}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:22px 0;color:#9b9fab;font-size:9px;line-height:1.7}footer>span{font-weight:800;flex-shrink:0}footer p{margin:0}footer a{flex-shrink:0}footer a:hover{color:var(--purple)}@keyframes shimmer{to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{box-shadow:0 0 0 6px #dcecf300}}@keyframes appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.top{padding-left:max(48px,calc((100vw - 1504px)/2));padding-right:max(48px,calc((100vw - 1504px)/2))}main{padding-right:50px;padding-left:50px}.news-card h3{font-size:17px}.featured h3{font-size:26px}}
@media(max-width:1100px){.page-layout{grid-template-columns:215px minmax(0,1fr)}.sidebar{padding-left:18px;padding-right:16px}main{padding:30px 27px 0}.top{padding-left:28px;padding-right:28px}.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.news-card.featured{grid-column:span 2}.featured .card-media{aspect-ratio:2.8}.heading-stamp{display:none}.sidebar-title{font-size:7px}.slogan{font-size:10px}.weather-reading{font-size:10px}.timezone{display:none}footer{flex-wrap:wrap}footer p{order:3;width:100%}}
@media(max-width:720px){.top{grid-template-columns:1fr auto;padding:20px;gap:17px;min-height:115px}.logo{font-size:39px}.logo small{font-size:13px}.slogan{font-size:9px;margin-top:7px}.date-time{font-size:10px}.date-time time{font-size:20px}.weather{grid-column:1/-1;justify-self:stretch;border-top:1px solid var(--line);padding-top:13px;gap:10px}.weather-icon{font-size:24px}.weather>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.weather-reading{margin:0;font-size:11px}.weather-reading strong{font-size:18px;letter-spacing:0}.weather-detail{display:none}.page-layout{display:block}.sidebar{border-right:0;min-height:0;padding:17px 20px;border-bottom:1px solid var(--line);display:block}.sidebar-title,.section-label,.sidebar-note,.sidebar-bottom{display:none}.source-nav{display:contents}.sidebar{display:flex;overflow:auto;gap:7px}.nav-item{width:auto;white-space:nowrap;min-height:37px;padding:7px 11px;font-size:10px;gap:7px;flex-shrink:0;border:1px solid var(--line);background:white}.source-logo{width:20px;height:20px;border:0;font-size:13px;background:transparent}.source-logo.bta{font-size:8px}.source-state,.nav-arrow{display:none}.nav-symbol{font-size:17px}.nav-item.active{border-color:#c9dfe9}main{padding:27px 20px 0}.main-heading{margin-bottom:25px}h1{font-size:37px;letter-spacing:-1.6px;margin-top:16px}.main-heading p{font-size:11px;max-width:270px}.live-label{font-size:8px;letter-spacing:1.2px}.toolbar{flex-wrap:wrap;padding-top:20px}.feed-title h2{font-size:17px}.toolbar-actions{flex:1;justify-content:flex-end}.search input{width:113px}.search{padding:9px 8px}.feed-meta{font-size:8px}.feed-meta>span:last-child{font-size:7px;letter-spacing:.6px}.news-grid{gap:15px}.news-card h3{font-size:13px;line-height:1.6}.card-body{padding:14px 13px}.card-source{font-size:8px}.card-description{display:none}.featured .card-description{display:-webkit-box}.featured h3{font-size:20px}.featured .card-body{padding:18px}.featured .card-media{aspect-ratio:1.8}.card-bottom{font-size:8px;line-height:1.7}.card-media{aspect-ratio:1.3}.feed-end{margin:25px 0;font-size:9px}footer{font-size:8px;padding-bottom:25px}}
@media(max-width:390px){.news-grid{grid-template-columns:1fr}.news-card.featured{grid-column:auto}.card-media{aspect-ratio:1.8}.news-card h3{font-size:17px}.search input{width:100px}.toolbar-actions{justify-content:flex-start}.toolbar{gap:12px}.date-time{font-size:9px}.slogan{max-width:150px;line-height:1.6}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

[hidden]{display:none!important}

@media(max-width:720px){.sidebar{flex-direction:row}.date-time{grid-column:2;grid-row:1}.weather{grid-row:2}}

/* Main reading type: Calibri, 14 pt. */
:root{--body-font-size:14pt}
body{font-family:Calibri,"Segoe UI",Arial,sans-serif;font-size:var(--body-font-size);line-height:1.5}
.nav-item,.search input,.main-heading p,.card-description,.featured .card-description,.sidebar-note p,.empty-state p,.empty-state button,.source-notice{font-size:var(--body-font-size)}
.news-card h3{font-size:16pt;line-height:1.45}
.featured h3{font-size:22pt}
.card-source,.card-bottom,.feed-meta,.weather-reading,.date-time,.slogan{font-size:11pt}
@media(max-width:720px){.toolbar-actions{width:100%;justify-content:flex-start}.search{flex:1;min-width:0}.search input{width:100%;min-width:0}.news-grid{grid-template-columns:1fr}.news-card.featured{grid-column:auto}.featured h3{font-size:19pt}.card-description{display:-webkit-box}.card-media{aspect-ratio:1.8}.nav-item{font-size:12pt}.slogan{font-size:9pt}.date-time{font-size:10pt}.main-heading p{max-width:none}.date-time time{font-size:18pt}}

/* Bright Top area: violet, sky blue and warm sunlight. */
.top .logo-image{display:block;width:210px;height:70px;max-width:100%;object-fit:contain;object-position:left center}
@media(max-width:720px){.top .logo-image{width:150px;height:50px}}
@media(max-width:360px){.top .logo-image{width:125px;height:42px}}
.card-media img.source-fallback{object-fit:contain;background:#edfaff}
.news-card:hover img.source-fallback{transform:none}
.top{position:relative;isolation:isolate;min-height:150px;padding-top:25px;padding-bottom:25px;gap:24px;background:radial-gradient(ellipse at 12% 0%,#dcecf3 0%,transparent 55%),radial-gradient(ellipse at 85% 100%,#c7f3ff 0%,transparent 55%),linear-gradient(110deg,#f2f8fb,#f0f7ff 55%,#e7fcff);border-bottom:0;box-shadow:0 5px 24px #105a730a}
.top:after{content:'';position:absolute;bottom:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#16486d,#287f9b 35%,#3cbbe9 72%,#6ee6da)}
.top .logo{color:#0a3654;font-size:53px;letter-spacing:-3px;text-shadow:0 2px 0 #ffffffa6}
.top .logo-dot{color:#f0ac20}.top .logo small{color:#175d78;letter-spacing:.3px}
.top .slogan{color:#547185;font-weight:600;line-height:1.45;margin-top:10px}
.top .weather{max-width:100%;gap:14px;padding:14px 18px;border:1px solid #ffffff;border-radius:18px;background:#ffffffc9;box-shadow:0 6px 20px #105a7308}
.top .weather-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:48px;height:48px;border-radius:14px;background:#fff4d7;color:#dd9a16;font-size:34px}
.top .weather .eyebrow,.top .weather-reading,.top .weather-reading strong,.top .weather-detail{font-family:Calibri,"Segoe UI",Arial,sans-serif;font-size:12pt;line-height:1.4;letter-spacing:0}
.top .weather .eyebrow{color:#175d78;font-weight:700}.top .weather-reading{color:#303450;margin-top:3px}.top .weather-reading strong{color:#105a73;font-weight:800;margin-right:8px}.top .weather-detail{color:#74768a;margin-top:3px}
.top .date-time{padding:13px 18px;border:1px solid #fff;border-radius:18px;background:#ffffffa8;color:#665c85;box-shadow:0 6px 20px #105a7308}
.top .date-time>div{gap:8px;margin-top:5px}.top .date-time time{color:#0a3654;font-size:27px;letter-spacing:.7px}.top .clock-dot{background:#20b995;box-shadow:0 0 0 4px #20b99512}
.top .timezone{display:inline-flex;align-items:center;padding:3px 8px;border-radius:20px;background:#e5f0f5;color:#175d78;font-size:10pt;font-weight:600;line-height:1.3}
@media(max-width:1100px) and (min-width:721px){.top{gap:15px;padding-left:24px;padding-right:24px;grid-template-columns:1fr 1.2fr 1fr}.top .weather{padding:12px;gap:10px}.top .weather-icon{width:38px;height:38px;font-size:29px}.top .date-time{padding:12px}.top .slogan{max-width:220px}}
@media(max-width:720px){.top{grid-template-columns:minmax(0,1fr) auto;padding:20px 18px 24px;gap:18px 12px}.top .logo{font-size:41px}.top .slogan{font-size:10pt;max-width:170px}.top .date-time{padding:10px 12px;font-size:10pt;border-radius:14px}.top .date-time time{font-size:21px}.top .timezone{font-size:9pt;padding:3px 6px}.top .date-time>div{gap:6px}.top .clock-dot{width:5px;height:5px}.top .weather{justify-self:stretch;padding:13px 16px;border-radius:15px;gap:14px}.top .weather>div{display:block;min-width:0}.top .weather-icon{width:43px;height:43px;font-size:31px}.top .weather-detail{display:block}.top .weather .eyebrow,.top .weather-reading,.top .weather-reading strong,.top .weather-detail{font-size:12pt}}
@media(max-width:360px){.top{padding-left:13px;padding-right:13px}.top .logo{font-size:36px}.top .slogan{font-size:9pt;max-width:135px}.top .date-time{padding:8px}.top .date-time time{font-size:19px}.top .date-time>div{gap:5px}.top .timezone{padding:3px 5px}.top .weather{padding:12px}}

/* Marine blue gradient is limited to Top. */
.top{background:radial-gradient(ellipse at 90% 0%,#1c6685a6 0%,transparent 58%),linear-gradient(110deg,#061a30,#0a3654 55%,#105a73);box-shadow:0 8px 30px #00000025}
.top:after{background:linear-gradient(90deg,#16486d,#37a5c7 45%,#82e0df)}
.top .logo-image{background:#f2f9ff;border:1px solid #cce6f4;border-radius:12px;padding:7px 10px}
.top .slogan{color:#c1d9ec}.top .weather,.top .date-time{border-color:#42758e88;background:linear-gradient(135deg,#183e5acf,#0c2944dd);box-shadow:0 7px 24px #00000020}
.top .weather-icon{background:#1f4962;color:#ffcc70}.top .weather .eyebrow{color:#9ee6ef}.top .weather-reading{color:#f0f8ff}.top .weather-reading strong{color:#94eaf1}.top .weather-detail{color:#bed4e5}
.top .date-time{color:#bdd5e8}.top .date-time time{color:#f0faff}.top .timezone{background:#24506b;color:#b1edf3}.top .clock-dot{background:#6de1c3;box-shadow:0 0 0 4px #6de1c315}
@media(max-width:720px){.top .logo-image{padding:5px 7px;border-radius:9px}}

/* Selected feed heading and article count. */
.feed-title h2,.feed-title>span{font-size:16pt;color:#8b1e26}

/* Requested navigation, source and feed typography. */
.sidebar-title,.live-label,.section-label,.feed-meta>span:last-child,.source-nav .nav-item,.card-source{font-size:12pt;line-height:1.5}
.feed-title h2{font-size:18pt;font-weight:400}
@media(max-width:720px){.feed-meta{flex-wrap:wrap;row-gap:8px}}

/* Stamp caption sizes. */
.heading-stamp>span,.heading-stamp small{font-size:12pt}

/* Compact introductory news block. */
main{padding-top:24px}
.main-heading{margin-bottom:21px;gap:18px}
.main-heading h1{font-size:clamp(29px,2.5vw,37px);line-height:1.1;letter-spacing:-1.2px;margin:10px 0 9px}
.main-heading p{line-height:1.4;margin:0}
.main-heading .live-label{line-height:1.25}
.heading-stamp{padding:11px 17px}
.heading-stamp>div{font-size:23px;line-height:1.25}
@media(max-width:720px){main{padding-top:20px}.main-heading{margin-bottom:18px}.main-heading h1{font-size:30px;line-height:1.1;margin:9px 0 8px}.main-heading p{font-size:12pt;line-height:1.4}.main-heading .live-label{font-size:12pt}}

.sidebar-note h3{font-size:12pt}

/* Slightly more compact source navigation. */
.sidebar{padding-top:26px}
.sidebar-title{margin-bottom:16px}
.nav-item{min-height:41px;padding:8px 10px;gap:9px}
.source-nav{gap:2px}
.source-nav .source-logo{width:25px;height:25px}
.section-label{margin-top:23px;margin-bottom:9px}
.sidebar-note{margin-top:30px;padding-top:20px}
@media(max-width:720px){.sidebar{padding-top:12px;padding-bottom:12px;gap:6px}.nav-item{min-height:35px;padding:6px 9px;gap:6px}.source-nav .source-logo{width:20px;height:20px}}

/* Keep the main slogan on one line. */
.main-heading h1{white-space:nowrap;font-size:clamp(24px,2.45vw,35px);letter-spacing:-1px}
@media(max-width:1100px){.main-heading h1{font-size:clamp(22px,2.65vw,29px)}}
@media(max-width:720px){.main-heading h1{font-size:clamp(15px,4.25vw,25px);letter-spacing:-.35px}}

/* Four equal news cards per row on desktop. */
.news-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.news-card.featured{grid-column:auto}
.featured .card-media{aspect-ratio:1.65}
.featured .card-body{padding:18px 19px 16px}
.featured h3{font-size:16pt;line-height:1.45;letter-spacing:-.35px}
.featured .card-description{font-size:14pt}
@media(max-width:1200px){.news-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px){.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.news-grid{grid-template-columns:1fr;gap:15px}.featured .card-media{aspect-ratio:1.8}.featured .card-body{padding:14px 13px}}

/* Newest article occupies two tiles on multi-column screens. */
.news-card.featured{grid-column:span 2}
.featured .card-media{aspect-ratio:2.4}
.featured .card-body{padding:21px 24px 18px}
.featured h3{font-size:20pt;line-height:1.4;letter-spacing:-.6px}
@media(max-width:720px){.news-card.featured{grid-column:auto}.featured .card-media{aspect-ratio:1.8}.featured .card-body{padding:18px}.featured h3{font-size:18pt}}

.feed-end,.feed-end p{font-size:12pt}

/* Equal weather and date/time cards grouped on the right. */
.top{display:flex;justify-content:space-between;align-items:center}
.top .brand{flex:0 1 auto;min-width:0}
.top-widgets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;flex:0 1 660px;margin-left:auto;min-width:0;align-items:stretch}
.top-widgets>.weather,.top-widgets>.date-time{grid-column:auto;grid-row:auto;justify-self:stretch;align-self:stretch;width:100%;max-width:none;min-height:124px;height:auto;padding:14px 18px;border-radius:18px}
.top-widgets>.weather{justify-content:flex-start}
.top-widgets>.date-time{display:flex;flex-direction:column;justify-content:center;align-items:flex-end}
@media(max-width:1050px){.top{flex-wrap:wrap}.top-widgets{flex-basis:620px;max-width:100%}}
@media(max-width:720px){.top-widgets{flex:none;width:100%;max-width:100%;gap:12px}.top-widgets>.weather,.top-widgets>.date-time{min-height:176px;padding:12px 10px;border-radius:15px}.top-widgets>.weather{flex-direction:column;align-items:flex-start;justify-content:center;gap:4px}.top-widgets>.weather .weather-icon{width:28px;height:28px;font-size:23px;border-radius:8px}.top-widgets>.date-time{align-items:center;text-align:center}.top-widgets>.date-time>div{flex-wrap:wrap;justify-content:center}.top-widgets .weather>div{width:100%}}

/* Advertisement between the brand and the two information cards. */
.top{gap:22px}
.top .brand{flex:0 0 230px}
.top-widgets{flex:0 0 520px}
.top-feature{position:relative;isolation:isolate;overflow:hidden;display:flex;flex:1 1 320px;min-width:0;min-height:124px;flex-direction:column;align-items:flex-start;padding:12px 18px;border:1px solid #bce0e4;border-radius:18px;background:radial-gradient(ellipse at 100% 0%,#a9dadea8,transparent 65%),linear-gradient(115deg,#f7fcfc,#e4f1f2);color:#143b4b;text-decoration:none;box-shadow:0 7px 24px #00000020;transition:box-shadow .2s,border-color .2s}
.top-feature:hover{border-color:#82d7df;box-shadow:0 8px 28px #00000035}
.top-feature:focus-visible{outline:3px solid #94eaf1;outline-offset:4px}
.feature-title{font-size:16pt;font-weight:700;line-height:1.15;margin-bottom:4px}
.feature-specialty,.feature-description{font-size:12pt;line-height:1.25}
.feature-description{color:#4b6972;max-width:285px}
.feature-link{display:inline-flex;align-items:center;gap:12px;margin-top:8px;font-size:11pt;line-height:1.2;font-weight:700;color:#0d5b6c}
.feature-eye{position:absolute;z-index:-1;right:-12px;bottom:4px;width:112px;height:72px;color:#298a9b;opacity:.12;transform:rotate(-15deg)}
@media(max-width:1120px){.top{flex-wrap:wrap}.top .brand{flex-basis:230px}.top-feature{flex:1 1 300px}.top-widgets{flex:0 1 620px;max-width:100%}}
@media(max-width:720px){.top{gap:16px}.top .brand{flex:0 1 auto}.top-feature{flex:1 0 100%;width:100%;min-height:0;padding:14px 18px}.top-widgets{flex:none;width:100%}.feature-title{font-size:16pt}.feature-description{max-width:calc(100% - 30px)}}

/* Portrait at the left of the linked feature. */
.top-feature{flex-direction:row;align-items:center;gap:14px;padding:12px}
.feature-portrait{display:block;flex:0 0 92px;width:92px;height:110px;object-fit:cover;object-position:center;border-radius:11px;box-shadow:0 3px 12px #143b4b18}
.feature-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.feature-copy .feature-description{max-width:none}
@media(max-width:720px){.top-feature{gap:12px;padding:12px}.feature-portrait{flex-basis:82px;width:82px;height:106px}.feature-copy .feature-title{font-size:15pt}}

/* More compact banner, weather and date/time blocks. */
.top{padding-top:16px;padding-bottom:16px;min-height:0}
.top-feature{min-height:108px;padding:8px 10px;gap:10px;border-radius:15px}
.feature-portrait{flex-basis:80px;width:80px;height:92px;border-radius:9px}
.feature-title{margin-bottom:3px;line-height:1.1}
.feature-specialty,.feature-description{line-height:1.15}
.feature-link{margin-top:3px;line-height:1.1}
.top-widgets>.weather,.top-widgets>.date-time{min-height:108px;padding:10px 14px;border-radius:15px}
@media(max-width:720px){.top{padding-top:14px;padding-bottom:14px;gap:12px}.top-feature{min-height:108px}.feature-portrait{flex-basis:74px;width:74px;height:88px}.top-widgets>.weather,.top-widgets>.date-time{min-height:132px;padding:10px}}

/* Both partner banners share one grid cell and therefore the same dimensions. */
.top-feature-slot{display:grid;flex:1 1 320px;min-width:0;align-items:stretch}
.top-feature-slot>.top-feature{grid-area:1 / 1;align-self:stretch;min-width:0}
.top-feature-slot>.top-feature:not(.is-current){visibility:hidden;pointer-events:none}
.feature-dental{object-fit:contain;background:linear-gradient(135deg,#e2f1f2,#cce5e9);padding:13px}
@media(max-width:1120px){.top-feature-slot{flex:1 1 300px}}
@media(max-width:720px){.top-feature-slot{flex:1 0 100%;width:100%}}

/* Barodent: dark red gradient with white lettering. */
.top-feature[data-feature="barodent"]{background:radial-gradient(ellipse at 100% 0%,#b9434b80,transparent 70%),linear-gradient(115deg,#490d19,#771a2a 55%,#982d3b);border-color:#ac4c58;color:#fff}
.top-feature[data-feature="barodent"] .feature-title,.top-feature[data-feature="barodent"] .feature-specialty,.top-feature[data-feature="barodent"] .feature-description,.top-feature[data-feature="barodent"] .feature-link{color:#fff}
.top-feature[data-feature="barodent"] .feature-dental{background:linear-gradient(135deg,#fff5f5,#f1d7dc)}
.top-feature[data-feature="barodent"]:hover{border-color:#efabb5}
.top-feature[data-feature="barodent"]:focus-visible{outline-color:#ffd3db}
.top-feature[data-feature="barodent"] .feature-dental{padding:0;background:transparent;object-fit:contain;box-shadow:0 3px 12px #27061035}


/* Sea holiday feature: full supplied copy over a coastal gradient. */
.top-feature[data-feature="holidays"]{background:radial-gradient(ellipse at 100% 0%,#208eb4,transparent 70%),linear-gradient(115deg,#073953,#0b657e);border-color:#3b99ae;color:#fff}
.top-feature[data-feature="holidays"] .feature-copy{position:relative;z-index:1;width:100%}
.top-feature[data-feature="holidays"] .feature-title{font-size:12pt;line-height:1.15;color:#fff;margin-bottom:5px}
.top-feature[data-feature="holidays"] .feature-description{font-size:10pt;line-height:1.2;color:#fff}
.top-feature[data-feature="holidays"] .feature-link{font-size:10pt;color:#ffe1a3;margin-top:5px}
.feature-coast{position:absolute;right:-12px;bottom:-5px;width:145px;height:118px;opacity:.16;z-index:-1}
.top-feature[data-feature="holidays"]:hover{border-color:#8ce0e9}


/* A visible seaside scene: sunshine, sailing boat, surf and a sandy shore. */
.top-feature[data-feature="holidays"]{background:linear-gradient(110deg,#06364f,#087995);border-color:#51b7c6}
.top-feature[data-feature="holidays"] .feature-coast{right:0;bottom:0;width:220px;height:100%;opacity:1;object-fit:cover}
.top-feature[data-feature="holidays"]::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,#06364ff5 0%,#06364fe8 44%,#06364fa6 75%,#06364f60 100%);pointer-events:none}
.top-feature[data-feature="holidays"] .feature-copy{text-shadow:0 1px 3px #002c49}

/* The seaside illustration has its own bright panel, clear of the text. */
.top-feature[data-feature="holidays"]{padding-right:104px;background:linear-gradient(120deg,#074567,#086e8c);border-color:#69d9e1}
.top-feature[data-feature="holidays"] .feature-coast{width:94px;height:100%;right:0;bottom:0;z-index:0;opacity:1;border-left:1px solid #a8eff177}
.top-feature[data-feature="holidays"]::before{display:none}
.top-feature[data-feature="holidays"] .feature-copy{text-shadow:none}
.top-feature[data-feature="holidays"] .feature-title{color:#fff4cb}
.top-feature[data-feature="holidays"] .feature-link{color:#ffe197}
@media(max-width:720px){.top-feature[data-feature="holidays"]{padding-right:92px}.top-feature[data-feature="holidays"] .feature-coast{width:82px}}
/* Golden beach sand behind the holiday copy. */
.top-feature[data-feature="holidays"]{background:radial-gradient(ellipse at 15% 0%,#fff1c7b3,transparent 65%),linear-gradient(120deg,#f7dfa5,#eac37b 55%,#dca95c);border-color:#efce8c;color:#123e53}
.top-feature[data-feature="holidays"] .feature-title{color:#123e53}
.top-feature[data-feature="holidays"] .feature-description{color:#214b5a}
.top-feature[data-feature="holidays"] .feature-link{color:#064c67}
.top-feature[data-feature="holidays"]:hover{border-color:#ffe6af}