/*
Theme Name: Harbor Bulletin
Author: Independent Blog Studio
Description: Rounded publication panels, a pill menu, a two-column blog feed and a separate right sidebar. Includes a dedicated Dashboard Blogroll manager and Telegram contact.
Version: 3.0.0
Requires at least: 6.4
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: harbor-bulletin
*/
:root{--bg:#e7edf4;--surface:#ffffff;--ink:#1d2e46;--muted:#626b74;--accent:#315b91;--accent-ink:#ffffff;--line:#d2ddea;--tint:#e9f0fa;--heading-font:"Trebuchet MS", Arial, sans-serif;--body-font:Arial, sans-serif;--width:1280px;--brand-size:42px;--header-gap:30px;--gap:25px;--radius:18px;--card-border:0;--card-padding:22px;--title-size:27px;--weight:700;--tracking:-.025em;--ratio:1.5;--reading-width:720px;}

*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body-font);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--heading-font);line-height:1.12;letter-spacing:var(--tracking);overflow-wrap:anywhere}h1,h2,h3,p,figure{margin-top:0}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}.entry-content a,.comment-content a{text-decoration:underline;text-underline-offset:3px;color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}img{height:auto;max-width:100%;vertical-align:middle}svg{vertical-align:middle}button,input,textarea,select{font:inherit}button,input[type=submit]{cursor:pointer}button,.button,input[type=submit]{background:var(--ink);color:var(--bg);border:0;padding:11px 16px;border-radius:var(--radius)}input:not([type=submit]):not([type=checkbox]):not([type=radio]),textarea,select{background:var(--surface);color:var(--ink);border:1px solid var(--line);padding:10px 12px;max-width:100%;border-radius:var(--radius)}textarea{width:100%}input[type=checkbox]{margin-right:8px}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}.screen-reader-text:focus{clip:auto!important;clip-path:none;background:var(--ink);color:var(--bg);height:auto;left:16px;padding:14px 20px;top:16px;width:auto;z-index:99999}.site-frame{max-width:var(--width);margin:auto;padding:0 38px}.site-header{margin-bottom:var(--header-gap);padding-top:24px}.masthead{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:125px;padding:22px 0}.site-title{font-family:var(--heading-font);font-weight:800;font-size:clamp(28px,4vw,var(--brand-size));line-height:.98;letter-spacing:-.045em;display:block}.site-description{font-size:12px;margin:10px 0 0;max-width:48ch;color:var(--muted);letter-spacing:.015em}.custom-logo{max-width:260px;max-height:100px;object-fit:contain}.masthead-note{font-size:11px;text-transform:uppercase;letter-spacing:.08em;max-width:170px}.navigation-band{display:flex;align-items:center;justify-content:space-between;gap:24px}.primary-navigation{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.primary-navigation ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:26px;flex-wrap:wrap}.primary-navigation a{display:block;padding:14px 0;font-size:12px;font-weight:700}.primary-navigation li{position:relative}.primary-navigation .sub-menu,.primary-navigation .children{display:none;position:absolute;top:100%;left:0;min-width:200px;padding:12px;background:var(--surface);border:1px solid var(--line);z-index:20;box-shadow:0 12px 30px #0001}.primary-navigation .sub-menu a,.primary-navigation .children a{padding:8px}.primary-navigation li:hover>ul,.primary-navigation li:focus-within>ul{display:block}.primary-navigation li li>ul{left:100%;top:0}.menu-toggle{display:none}.search-form{display:flex;gap:6px;align-items:stretch;max-width:100%;width:100%}.search-field{width:100%;min-width:0}.search-submit{font-size:12px;flex-shrink:0}.header-search{width:260px;flex-shrink:0}.header-search .search-field{font-size:12px}.header-search-line{padding:15px 0;display:flex;justify-content:flex-end}.site-main{padding-bottom:64px;min-height:42vh}.page-heading:empty{display:none}.page-heading h1:not(.screen-reader-text){font-size:42px;margin-bottom:32px}.archive-description{max-width:70ch;color:var(--muted)}.content-shell{display:grid;grid-template-columns:minmax(0,1fr);gap:44px;align-items:start}.has-sidebar .content-shell{grid-template-columns:minmax(0,1fr) 250px}.feed-column,.post-feed,.post-card,.post-copy{min-width:0}.post-feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap);counter-reset:stories}.post-card{position:relative;counter-increment:stories;background:var(--surface);border:var(--card-border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}.post-copy{padding:var(--card-padding);display:flex;flex-direction:column;flex:1}.post-card .post-title{font-size:var(--title-size);margin:11px 0 12px;font-weight:var(--weight)}.post-title a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.category-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-weight:700;display:inline-block;align-self:flex-start}.post-meta{font-size:10px;color:var(--muted);margin:0 0 13px;line-height:1.6}.post-meta span[aria-hidden]{margin:0 5px}.post-excerpt{font-size:13px;line-height:1.8;color:var(--muted);margin:0 0 20px}.read-link{font-size:11px;font-weight:700;letter-spacing:.02em;display:inline-block;align-self:flex-start;margin-top:auto}.post-media{display:block;overflow:hidden;background:var(--tint);flex-shrink:0}.post-media img{display:block;width:100%;height:100%;aspect-ratio:var(--ratio);object-fit:cover;transition:transform .3s}.post-media:hover img{transform:scale(1.025)}.post-card.sticky{outline:2px solid var(--accent);outline-offset:3px}.sidebar{font-size:13px}.widget{border-top:2px solid var(--ink);padding:20px 0 24px;margin-bottom:20px}.widget-title{font-size:17px;margin-bottom:20px}.widget ul{list-style:none;padding:0;margin:0}.widget li{padding:9px 0;border-bottom:1px solid var(--line)}.widget li ul{margin-left:15px}.widget select{width:100%}.widget .wp-block-heading{font-size:18px}.pagination{margin-top:44px}.nav-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;padding:6px 11px;border:1px solid var(--line);font-size:13px}.page-numbers.current{background:var(--ink);color:var(--bg)}.site-footer{border-top:2px solid var(--ink);padding:38px 0 18px}.footer-top{display:flex;gap:30px;justify-content:space-between;align-items:center}.footer-brand>a{font-family:var(--heading-font);font-size:28px;font-weight:700;line-height:1.1}.footer-brand p{font-size:12px;color:var(--muted);margin:9px 0 0}.footer-bottom{display:flex;justify-content:space-between;gap:24px;font-size:10px;color:var(--muted);margin-top:38px;padding-top:17px;border-top:1px solid var(--line)}.footer-widgets{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:35px;margin-top:35px}.footer-widgets .widget{border:0;margin:0;padding:0}.footer-navigation ul{display:flex;flex-wrap:wrap;gap:20px;list-style:none;margin:25px 0 0;padding:0;font-size:12px}.telegram-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;font:600 12px Arial,sans-serif;background:#1379a3;color:#fff;border-radius:999px;padding:13px 19px;line-height:1.2}.telegram-button:hover{background:#0c5b7c;color:#fff}.telegram-floating{position:fixed;right:22px;bottom:22px;width:54px;height:54px;padding:14px;z-index:99;box-shadow:0 6px 22px #0003}.telegram-floating span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.full-article{max-width:100%;margin-bottom:32px}.article-heading{margin-bottom:32px}.article-heading .entry-title{font-size:clamp(34px,4.4vw,64px);margin:18px 0 23px;line-height:1.03}.article-heading .post-meta{font-size:12px}.article-cover{margin:0 0 32px}.article-cover img{width:100%;max-height:560px;object-fit:cover;border-radius:var(--radius)}.entry-content{max-width:var(--reading-width);margin:auto;overflow-wrap:anywhere;font-size:17px;line-height:1.85;display:flow-root}.entry-content h2{font-size:32px;margin-top:44px}.entry-content h3{font-size:24px;margin-top:32px}.entry-content p,.entry-content ul,.entry-content ol{margin-bottom:25px}.entry-content blockquote{margin:30px 0;border-left:3px solid var(--accent);padding:9px 25px;font:italic 24px/1.5 var(--heading-font)}.entry-content table{border-collapse:collapse;width:100%;display:block;overflow-x:auto}.entry-content td,.entry-content th{padding:12px;border:1px solid var(--line)}.entry-content iframe,.entry-content video{max-width:100%}.entry-content pre{overflow:auto;background:var(--tint);padding:20px}.entry-content .alignwide{width:100%;max-width:100%}.entry-content .alignfull{max-width:100%;width:100%;margin-left:0;margin-right:0}.alignleft{float:left;margin:0 25px 20px 0}.alignright{float:right;margin:0 0 20px 25px}.aligncenter{display:block;margin-left:auto;margin-right:auto}.wp-caption{max-width:100%}.wp-caption-text,.gallery-caption,figcaption{font-size:12px;color:var(--muted);margin-top:8px}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.gallery-item{margin:0}.bypostauthor{border-left:2px solid var(--accent);padding-left:15px}.article-footer{padding-top:25px}.post-tags{display:flex;gap:10px;flex-wrap:wrap}.post-tags a{font-size:12px;border:1px solid var(--line);padding:5px 12px;border-radius:var(--radius)}.post-navigation{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;margin:35px 0}.post-navigation .nav-links>div{flex:1;max-width:48%}.post-navigation a{font-family:var(--heading-font);font-weight:bold}.nav-label{display:block;font:10px/2 var(--body-font);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.nav-next{text-align:right}.page-container{max-width:850px;margin:auto}.comments-area{padding:30px 0}.comment-list{list-style:none;padding:0}.comment-list .children{list-style:none;padding-left:22px}.comment-body{padding:22px 0;border-bottom:1px solid var(--line)}.comment-author .avatar{border-radius:50%;margin-right:8px}.comment-metadata{font-size:11px;color:var(--muted)}.comment-form input:not([type=checkbox]):not([type=submit]){width:100%}.comment-form label{display:block;font-size:13px;margin-bottom:7px}.comment-form-cookies-consent label{display:inline}.empty-state{max-width:700px;padding:65px 0;min-height:35vh}.eyebrow{color:var(--accent);text-transform:uppercase;font-size:12px;letter-spacing:.14em}.empty-state h1{font-size:48px}.entry-content .wp-block-button__link{color:#fff}.wp-block-image img{height:auto}.wp-block-embed__wrapper{max-width:100%}

.site-frame{max-width:1320px;padding:28px 30px}.site-header{padding:0;margin-bottom:26px}.brand-panel{display:flex;justify-content:space-between;align-items:center;padding:32px 36px;background:#fff;border-radius:22px;box-shadow:0 4px 18px #243a5810}.site-title{font-size:39px;letter-spacing:-.035em;max-width:620px}.brand-stamp{font-size:11px;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);padding:15px 18px;border-radius:12px;color:var(--accent)}.menu-panel{margin-top:18px;background:var(--accent);padding:10px 18px;border-radius:16px}.primary-navigation{border:0}.primary-navigation ul{gap:10px}.primary-navigation a{color:white;padding:9px 17px;border:1px solid #ffffff40;border-radius:30px;font-size:12px}.primary-navigation a:hover{background:white;color:var(--accent)}.content-shell{grid-template-columns:minmax(0,1fr) 290px!important;gap:26px}.post-feed{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}.post-card{background:white;border:0;border-radius:18px;box-shadow:0 4px 16px #243a5810}.post-copy{padding:28px}.post-title{font-size:26px!important;line-height:1.25}.category-label{padding:4px 10px;background:var(--tint);border-radius:5px;font-size:9px}.post-meta{margin-top:6px}.post-excerpt{font-size:14px;line-height:1.75}.read-link{color:var(--accent);padding-top:12px}.sidebar{background:white;border-radius:18px;padding:25px}.sidebar .widget{border:0;border-bottom:1px solid var(--line);padding:0 0 22px;margin-bottom:22px}.widget-title{font-size:19px}.sidebar .blogroll-widget{background:var(--tint);padding:20px;border:0;border-radius:12px}.blogroll-links li{border-color:#cad9ea}.sidebar .search-form{display:block}.sidebar .search-submit{margin-top:7px;width:100%}.full-article{background:white;padding:32px;border-radius:18px}.article-heading .entry-title{font-size:45px}.entry-content{font-family:Georgia,serif}.single-main .content-shell{grid-template-columns:minmax(0,1fr) 290px!important}

.no-sidebar .content-shell{display:block!important}.no-sidebar .feed-column{grid-column:auto}.no-sidebar .single-main .feed-column{max-width:none}
.design-4 .site-title{color:#fff}.design-4 .site-title:hover{color:#e4caff}
.site-footer.compact-footer{background:transparent;border:0;border-top:1px solid var(--line);padding:22px 0 18px;margin:10px 0 0;box-shadow:none;border-radius:0;color:var(--ink)}.compact-footer .footer-top{display:flex;justify-content:center;align-items:center;gap:0}.compact-footer .footer-bottom{display:flex;justify-content:center;align-items:center;flex-direction:column;text-align:center;border:0;margin-top:0;padding:0;gap:5px;font:12px/1.6 Arial,sans-serif;color:var(--muted)}.compact-footer .footer-bottom>span:empty{display:none}.compact-footer .footer-widgets{margin:0 0 20px}.telegram-footer{border-radius:999px}.site-main{padding-bottom:24px}.blogroll-admin-note{font-size:12px}.blogroll-links a{overflow-wrap:anywhere}.post-card:not(.has-post-thumbnail) .post-copy{grid-column:1/-1}.header-date{white-space:nowrap}.sidebar ul{overflow-wrap:anywhere}
@media(max-width:1000px) and (min-width:761px){.content-shell{grid-template-columns:minmax(0,1fr) 230px!important;gap:24px!important}.design-3 .content-shell{grid-template-columns:210px minmax(0,1fr)!important}.design-4 .site-frame{grid-template-columns:225px minmax(0,1fr);gap:0 28px}.site-title{overflow-wrap:anywhere}.brand-stamp{display:none}.post-title{font-size:24px!important}}
@media(max-width:760px){.site-frame{display:block!important;padding:0 18px!important}.site-header{padding-top:18px;margin-bottom:24px;min-height:0}.site-title{font-size:31px!important;line-height:1.15}.site-description{font-size:11px!important;letter-spacing:0}.brand-panel{padding:23px}.brand-stamp,.header-search,.header-date,.desk-top{display:none}.menu-panel{padding:0 16px}.clear-masthead,.desk-brand{display:block;padding:20px 0}.paper-brand{padding:23px 0}.paper-top{display:none}.menu-toggle{display:flex;width:100%;justify-content:space-between;align-items:center;padding:14px 0;background:transparent;color:var(--ink);border:0;border-radius:0;font-size:12px}.menu-panel .menu-toggle,.desk-nav .menu-toggle,.design-4 .menu-toggle{color:white}.primary-navigation{display:none}.primary-navigation.is-open{display:block}.primary-navigation ul{display:block!important}.primary-navigation a{padding:10px 0!important;border:0;border-radius:0}.primary-navigation .sub-menu,.primary-navigation .children{position:static;display:block;box-shadow:none;border:0;background:transparent;padding-left:15px}.content-shell{display:flex!important;flex-direction:column!important;gap:28px!important}.feed-column{width:100%;order:0}.sidebar{width:100%;order:1;border-left:0!important;border-right:0!important;padding:20px!important;margin-top:10px}.post-feed{display:block!important}.post-card,.post-card:first-child{display:block!important;grid-column:auto!important;margin-bottom:22px;padding:0}.post-copy{padding:23px!important}.post-card .post-title,.post-card:first-child .post-title{font-size:28px!important;max-width:none}.post-card .post-excerpt{font-size:14px!important}.post-media{padding:0!important;margin:0!important}.post-media img{aspect-ratio:1.6!important;max-height:260px}.full-article{padding:18px!important}.article-heading .entry-title{font-size:35px!important;line-height:1.12}.entry-content{font-size:16px!important}.entry-content h2{font-size:28px}.entry-content h3{font-size:23px}.design-3 .sidebar{border:1px solid var(--line)!important}.design-3 .post-card{padding-top:18px}.design-4 .site-header{padding:25px 20px;margin-left:-18px;margin-right:-18px}.design-4 .site-header .sidebar{display:none}.design-4 .site-main{padding-top:0}.design-4 .post-card{padding-left:35px}.design-4 .post-card:before{font-size:18px}.design-4 .post-copy{padding:0!important}.design-4 .mobile-blogroll{display:block!important;margin-top:28px}.design-4 .mobile-blogroll .widget{background:white;padding:22px;border:1px solid var(--line)}.design-4 .mobile-blogroll .widget-title{color:var(--ink)}.design-4 .mobile-blogroll .blogroll-links{list-style:none;padding:0}.design-4 .mobile-blogroll li{padding:8px 0;border-bottom:1px solid var(--line)}.telegram-floating{right:15px;bottom:15px;width:49px;height:49px}.site-footer.compact-footer{padding:20px 0 16px}.post-navigation .nav-links{display:block}.post-navigation .nav-links>div{max-width:100%}.nav-next{text-align:left}.alignleft,.alignright{float:none;margin:18px auto}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:761px){.mobile-blogroll{display:none}}
