/* ============ YEAH design system ============ */
:root { --yeah-navy:#13496b; --yeah-navy-deep:#0d3a57; --yeah-teal:#197a6a; --yeah-sky:#1a81ad; --yeah-leaf:#b6d6a4; --yeah-paper:#f6f8f7; }
body { font-size: 17px; line-height: 1.75; }
h1, h2, h3 { letter-spacing: -0.01em; }
/* Page title bands */
.fancy-header { background-color: var(--yeah-navy) !important; min-height: 200px !important; }
.fancy-header .fancy-title *, .fancy-header h1, .fancy-header .entry-title { color: #ffffff !important; }
/* Colored panels */
.wpb_column[class*="vc_custom_"] { border-radius: 14px; overflow: hidden; box-shadow: 0 4px 16px rgba(19,73,107,0.10); }
.wpb_column[class*="vc_custom_"] .vc_column-inner { padding-left: 24px !important; padding-right: 24px !important; padding-bottom: 18px !important; }
/* Buttons */
.vc_btn3, .ubtn, .dt-btn { border-radius: 999px !important; transition: transform .2s ease, box-shadow .2s ease !important; }
.vc_btn3:hover, .ubtn:hover, .dt-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 18px rgba(0,0,0,0.18); }
/* Nav */
.main-nav > li > a { letter-spacing: 0.05em; transition: color .2s ease; }
/* Imagery */
.wpb_single_image img, .wpb_text_column img { border-radius: 10px; }
.vc_separator .vc_sep_line { border-color: rgba(19,73,107,0.18) !important; }
.footer .wpb_column { line-height: 1.7; }
/* Full-bleed hero photo */
.yeah-hero-photo .vc_column-inner { padding-left: 0 !important; padding-right: 0 !important; }
.yeah-hero-photo .wpb_single_image { margin-bottom: 0; }
.yeah-hero-photo img { border-radius: 0 !important; width: 100%; height: auto; }
.yeah-hero-photo .vc_single_image-wrapper { width: 100%; }
/* Overlapping hero card: translucent, less face coverage */
.yeah-hero-cardrow { margin-top: -100px; position: relative; z-index: 20; }
.yeah-hero-cardrow .vc_column-inner { background: rgba(13,58,87,0.82); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); border-top: 4px solid var(--yeah-teal); max-width: 620px !important; margin-left: 7vw !important; padding: 30px 40px 26px !important; border-radius: 6px; box-shadow: 0 18px 40px rgba(13,58,87,0.30); animation: yeahRise .8s cubic-bezier(.2,.7,.3,1) both; }
.yeah-hero-cardrow h1 { color: #ffffff; font-size: 34px; line-height: 1.18; margin-bottom: 10px; }
.yeah-hero-cardrow p { font-size: 16px; line-height: 1.6; }
.yeah-hero-cardrow .ubtn-ctn-left { animation: yeahRise .8s .25s cubic-bezier(.2,.7,.3,1) both; }
@keyframes yeahRise { from { opacity: 0; transform: translateY(26px); } to { opacity: 1; transform: none; } }
@media (max-width: 900px) { .yeah-hero-cardrow { margin-top: 0; } .yeah-hero-cardrow .vc_column-inner { margin-left: 0 !important; max-width: 100% !important; border-radius: 0; } }
/* Centered narrow content */
.yeah-intro .wpb_content_element { max-width: 860px; margin-left: auto !important; margin-right: auto !important; float: none; }
/* Section rhythm */
.yeah-band { padding-top: 20px; background: var(--yeah-paper); }
.yeah-section { padding-top: 30px; padding-bottom: 30px; }
.yeah-section h2, .yeah-band h2 { font-size: 34px; }
.yeah-cards .vc_btn3 { border: 2px solid #fff !important; }
.dt-css-grid .post-entry-wrapper, article.post { border-radius: 12px; overflow: hidden; }
/* ===== Per-page banner photos (deterministic, overrides theme) ===== */
.fancy-header { background-size: cover !important; background-position: center 45% !important; }
body.page-id-183 .fancy-header { background-image: linear-gradient(rgba(13,58,87,0.58), rgba(13,58,87,0.58)), url('https://yeah-net.org/wp-content/uploads/2022/07/slideshow-1.png') !important; background-size: cover !important; background-position: center 45% !important; background-repeat: no-repeat !important; }
body.page-id-144 .fancy-header { background-image: linear-gradient(rgba(13,58,87,0.58), rgba(13,58,87,0.58)), url('https://yeah-net.org/wp-content/uploads/2022/07/slideshow-1.png') !important; background-size: cover !important; background-position: center 45% !important; background-repeat: no-repeat !important; }
body.page-id-4547 .fancy-header { background-image: linear-gradient(rgba(13,58,87,0.58), rgba(13,58,87,0.58)), url('https://yeah-net.org/wp-content/uploads/2021/09/slideshow-4b.png') !important; background-size: cover !important; background-position: center 45% !important; background-repeat: no-repeat !important; }
body.page-id-126 .fancy-header { background-image: linear-gradient(rgba(13,58,87,0.55), rgba(13,58,87,0.55)), url('https://yeah-net.org/wp-content/uploads/2020/12/slideshow-1.png') !important; background-size: cover !important; background-position: center 42% !important; background-repeat: no-repeat !important; }
body.page-id-179 .fancy-header { background-image: linear-gradient(rgba(13,58,87,0.58), rgba(13,58,87,0.58)), url('https://yeah-net.org/wp-content/uploads/2020/12/slideshow-3b.png') !important; background-size: cover !important; background-position: center 45% !important; background-repeat: no-repeat !important; }
body.page-id-184 .fancy-header { background-image: linear-gradient(rgba(13,58,87,0.58), rgba(13,58,87,0.58)), url('https://yeah-net.org/wp-content/uploads/2020/12/slideshow-5b.png') !important; background-size: cover !important; background-position: center 45% !important; background-repeat: no-repeat !important; }
body.page-id-4022 .fancy-header { background-image: linear-gradient(rgba(13,58,87,0.58), rgba(13,58,87,0.58)), url('https://yeah-net.org/wp-content/uploads/2020/12/slideshow-3b.png') !important; background-size: cover !important; background-position: center 45% !important; background-repeat: no-repeat !important; }
body.page-id-3984 .fancy-header { background-image: linear-gradient(rgba(13,58,87,0.58), rgba(13,58,87,0.58)), url('https://yeah-net.org/wp-content/uploads/2020/12/slideshow-5b.png') !important; background-size: cover !important; background-position: center 45% !important; background-repeat: no-repeat !important; }
body.page-id-4033 .fancy-header { background-image: linear-gradient(rgba(13,58,87,0.58), rgba(13,58,87,0.58)), url('https://yeah-net.org/wp-content/uploads/2023/11/10aIMG_0202-trimmed-2048x844.jpg') !important; background-size: cover !important; background-position: center 45% !important; background-repeat: no-repeat !important; }
body.page-id-326 .fancy-header { background-image: linear-gradient(rgba(13,58,87,0.58), rgba(13,58,87,0.58)), url('https://yeah-net.org/wp-content/uploads/2021/09/slideshow-4b.png') !important; background-size: cover !important; background-position: center 45% !important; background-repeat: no-repeat !important; }
/* ===== Resource tables ===== */
.yeah-table { width: 100%; border-collapse: collapse; margin: 10px 0 20px; font-size: 16px; }
.yeah-table th { background: var(--yeah-navy); color: #fff; text-align: left; padding: 12px 14px; font-weight: 600; }
.yeah-table td { padding: 11px 14px; border-bottom: 1px solid rgba(19,73,107,0.14); vertical-align: top; }
.yeah-table tbody tr:nth-child(even) { background: var(--yeah-paper); }
.yeah-table a { font-weight: 600; }
/* ===== Card polish ===== */
.yeah-cards h3 { margin-bottom: 8px; }
.yeah-intro ul { padding-left: 20px; }
.yeah-intro li { margin-bottom: 8px; }
/* ===== Card colour utilities (applied via el_class) ===== */
.card-navy, .card-sky, .card-teal, .card-deep, .card-aqua, .card-leaf { border-radius: 14px; overflow: hidden; box-shadow: 0 6px 20px rgba(19,73,107,0.13); transition: transform .25s ease, box-shadow .25s ease; }
.card-navy:hover, .card-sky:hover, .card-teal:hover, .card-deep:hover, .card-aqua:hover, .card-leaf:hover { transform: translateY(-4px); box-shadow: 0 12px 28px rgba(19,73,107,0.20); }
.card-navy { background: #13496b; }
.card-sky { background: #1a81ad; }
.card-teal { background: #197a6a; }
.card-deep { background: #0d3a57; }
.card-aqua { background: #32a8a4; }
.card-leaf { background: #6f9e57; }
.card-navy .vc_column-inner, .card-sky .vc_column-inner, .card-teal .vc_column-inner, .card-deep .vc_column-inner, .card-aqua .vc_column-inner, .card-leaf .vc_column-inner { padding: 26px 26px 22px !important; }
.card-navy h2, .card-navy h3, .card-navy p, .card-navy span, .card-sky h2, .card-sky h3, .card-sky p, .card-sky span, .card-teal h2, .card-teal h3, .card-teal p, .card-teal span, .card-deep h2, .card-deep h3, .card-deep p, .card-deep span, .card-aqua h2, .card-aqua h3, .card-aqua p, .card-aqua span, .card-leaf h2, .card-leaf h3, .card-leaf p, .card-leaf span { color: #ffffff !important; }
.card-navy .vc_btn3, .card-sky .vc_btn3, .card-teal .vc_btn3, .card-deep .vc_btn3, .card-aqua .vc_btn3, .card-leaf .vc_btn3 { color: #ffffff !important; border: 2px solid rgba(255,255,255,0.85) !important; background: transparent !important; }
.card-navy .vc_btn3:hover, .card-sky .vc_btn3:hover, .card-teal .vc_btn3:hover, .card-deep .vc_btn3:hover, .card-aqua .vc_btn3:hover, .card-leaf .vc_btn3:hover { background: rgba(255,255,255,0.14) !important; }
/* ===== Hero: navy block stacked above photo ===== */
.yeah-hero-block { background: linear-gradient(135deg, #13496b 0%, #0d3a57 100%); border-bottom: 5px solid var(--yeah-teal); }
.yeah-hero-block > .vc_column_container > .vc_column-inner { max-width: 1100px; margin: 0 auto !important; padding: 52px 40px 46px !important; }
.yeah-hero-block h1 { color: #ffffff !important; font-size: 44px; line-height: 1.16; margin: 0 0 14px; max-width: 900px; }
.yeah-hero-block p { color: #dfeaf1 !important; font-size: 18px; line-height: 1.65; max-width: 780px; margin-bottom: 22px; }
.yeah-hero-block .ubtn-ctn-left { margin-top: 4px; }
@media (max-width: 767px) { .yeah-hero-block h1 { font-size: 31px; } .yeah-hero-block > .vc_column_container > .vc_column-inner { padding: 34px 22px 30px !important; } }
/* Newsletter band */
.yeah-newsletter { background: var(--yeah-paper); border-top: 1px solid rgba(19,73,107,0.12); border-bottom: 1px solid rgba(19,73,107,0.12); }
.yeah-newsletter h2 { font-size: 30px; margin-bottom: 6px; }
.yeah-newsletter p { color: #56666f; }
/* ===== Hero alignment + softened navy ===== */
.yeah-hero-block { background: linear-gradient(135deg, rgba(19,73,107,0.93) 0%, rgba(13,58,87,0.93) 100%) !important; }
.yeah-hero-block > .vc_column_container > .vc_column-inner { max-width: 100% !important; padding: 44px 34px 40px !important; }
.yeah-hero-photo .vc_column_container, .yeah-hero-photo .vc_column-inner, .yeah-hero-photo .wpb_wrapper, .yeah-hero-photo .wpb_single_image, .yeah-hero-photo .vc_single_image-wrapper, .yeah-hero-photo figure { width: 100% !important; max-width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
.yeah-hero-photo img { width: 100% !important; height: auto !important; display: block; border-radius: 0 !important; }
@media (max-width: 767px) { .yeah-hero-block > .vc_column_container > .vc_column-inner { padding: 30px 20px 26px !important; } }
/* ===== Hero: both rectangles share the content width, edges aligned ===== */
.yeah-hero-block, .yeah-hero-photo { margin-left: 0 !important; margin-right: 0 !important; left: auto !important; right: auto !important; width: 100% !important; max-width: 100% !important; }
.yeah-hero-block > .vc_column_container > .vc_column-inner { padding: 40px 38px 36px !important; }
.yeah-hero-photo { margin-top: 0 !important; }
@media (max-width: 767px) { .yeah-hero-block > .vc_column_container > .vc_column-inner { padding: 28px 20px 24px !important; } }
/* Hero photo fills the same width as the navy block */
.yeah-hero-photo .wpb_single_image, .yeah-hero-photo figure, .yeah-hero-photo .vc_single_image-wrapper, .yeah-hero-photo .vc_figure { display: block !important; width: 100% !important; max-width: 100% !important; text-align: left !important; }
.yeah-hero-photo img { width: 100% !important; max-width: none !important; height: auto !important; display: block !important; }
/* Photo row: remove stretch padding so image edges match the navy block */
.yeah-hero-photo { padding-left: 0 !important; padding-right: 0 !important; }
/* Solid white buttons inside coloured cards keep dark label text */
.card-navy .ubtn, .card-navy .ubtn span, .card-sky .ubtn, .card-sky .ubtn span, .card-teal .ubtn, .card-teal .ubtn span, .card-deep .ubtn, .card-deep .ubtn span, .card-aqua .ubtn, .card-aqua .ubtn span, .card-leaf .ubtn, .card-leaf .ubtn span { color: #13496b !important; }