/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */


/* Wonder Magazine — ported design tokens (Lato, #1268b3) */
:root { --bf-blue:#1268b3; --bf-text:#333; --bf-grey:#566069; }
body { color: var(--bf-text); }
.bf-btn { display:inline-block; font-size:13px; font-weight:600; letter-spacing:1.5px; text-transform:uppercase; padding:13px 28px; text-decoration:none; transition:all .2s; border-radius:0 !important; }
.bf-btn-solid { background:var(--bf-blue); color:#fff !important; border:1px solid var(--bf-blue); }
.bf-btn-solid:hover { background:#0e548f; }
.elementor-widget-button .elementor-button { border-radius:0 !important; }

/* article content */
.wm-teaser em { font-size:22px; line-height:1.5; color:var(--bf-grey); display:block; text-align:center; margin:10px 0 26px; font-weight:300; }
.wm-img { margin:34px 0; text-align:center; }
.wm-img img { max-width:100%; height:auto; }
.wm-quote { border:none; margin:38px auto; max-width:640px; text-align:center; color:var(--bf-blue); font-size:24px; font-weight:300; font-style:italic; line-height:1.4; }
.wm-meta { text-align:center; margin-bottom:24px; }
.wm-kicker { color:var(--bf-blue); text-transform:uppercase; letter-spacing:3px; font-size:14px; font-weight:700; margin:0 0 6px; }
.wm-byline { color:var(--bf-grey); font-style:italic; font-size:15px; margin:0; }
.wm-credits { color:#9aa4ad; font-size:13px; font-style:italic; text-align:center; margin-top:30px; }
.wm-guide-sec { color:var(--bf-blue); text-transform:uppercase; letter-spacing:3px; text-align:center; margin:44px 0 18px; font-size:22px; }

/* archive hero (same as main site) */
.bf-arch-hero { position:relative; min-height:46vh; display:flex; align-items:flex-end; justify-content:center; background-size:cover; background-position:center; }
.bf-arch-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(rgba(0,0,0,.05), rgba(0,0,0,.35)); }
.bf-arch-hero[data-nobg] { min-height:22vh; background:var(--bf-blue); }
.bf-arch-hero-inner { position:relative; text-align:center; padding:60px 20px; }
.bf-arch-hero-inner h1 { color:#fff; font-family:Lato,sans-serif; font-weight:700; text-transform:uppercase; letter-spacing:3px; font-size:50px; margin:0; text-shadow:0 2px 14px rgba(0,0,0,.35); }
.bf-arch-hero-desc { color:#fff; font-size:18px; font-weight:300; max-width:720px; margin:12px auto 0; }
@media (max-width:767px){ .bf-arch-hero-inner h1 { font-size:32px; } }

/* related cards */
.bf-related { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.bf-related .bf-card { display:flex; flex-direction:column; text-decoration:none; color:var(--bf-text); text-align:center; }
.bf-card-img { display:block; aspect-ratio:3/2; background-size:cover; background-position:center; margin-bottom:14px; }
.bf-card-title { font-size:21px; color:var(--bf-blue); margin-bottom:14px; flex-grow:1; }
.bf-card .bf-btn { align-self:center; }
@media (max-width:767px){ .bf-related { grid-template-columns:1fr; } }

/* archive cards (posts widget) */
.elementor-posts-container .elementor-post { text-align:center; }
.elementor-posts-container .elementor-post__title a { color:var(--bf-blue) !important; font-size:24px; font-weight:400; }
.elementor-posts-container .elementor-post__excerpt p { color:var(--bf-grey); font-size:15px; line-height:1.6; }
.elementor-posts-container .elementor-post__read-more { background:var(--bf-blue); color:#fff !important; border:1px solid var(--bf-blue); padding:13px 30px; letter-spacing:2px; font-weight:600; text-transform:uppercase; margin:14px auto 0; display:inline-block; font-size:12px; border-radius:0 !important; }
.elementor-posts-container .elementor-post__read-more:hover { background:#0e548f; }
.elementor-posts-container .elementor-post__thumbnail img { aspect-ratio:3/2; object-fit:cover; }
.elementor-post__meta-data { display:none !important; }

/* footer links */
.bf-flink { text-transform:uppercase; letter-spacing:2px; font-size:13px; line-height:2.4; color:#c9c9c9; margin:0; }
.bf-flink a { color:#c9c9c9 !important; text-decoration:none; }
.bf-flink a:hover { color:#fff !important; }
.bf-flink .bf-fphone { font-size:19px; font-weight:700; color:#fff !important; }

/* header fixes */
[data-elementor-type="header"] .e-con-inner { max-width:100% !important; width:100% !important; padding-left:28px; padding-right:28px; }
[data-elementor-type="header"] .elementor-widget-button { flex:0 0 auto; }
[data-elementor-type="header"] .elementor-button { white-space:nowrap; }
[data-elementor-type="header"] .elementor-widget-nav-menu { min-width:0; }
[data-elementor-type="header"] .bf-header-logo { flex:0 0 210px !important; }
.bf-img-landscape img { aspect-ratio:3/2; object-fit:cover; width:100%; }

/* legacy widgetkit grids -> static two-column cards */
.wm-wkgrid { display:grid; grid-template-columns:1fr 1fr; gap:26px; margin:30px 0; }
.wm-wk-item img { width:100%; aspect-ratio:3/2; object-fit:cover; display:block; }
.wm-wk-caption { text-align:center; padding:14px 8px 0; font-size:15px; color:#566069; }
.wm-wk-caption h3, .wm-wk-caption h4 { color:#1268b3; font-size:19px; margin:6px 0; text-transform:none; }
.wm-wk-caption a { color:#1268b3; }
@media (max-width:767px){ .wm-wkgrid { grid-template-columns:1fr; } }
