/*
Theme Name: MASF Blocks — Mutsun–Awaswas Sovereignty Foundation
Theme URI: https://mutsunawaswas.org
Author: MASF Planning Committee
Description: Block-editor version of the MASF theme. Same design as the original code-based theme, with every page's content editable in the WordPress editor. On activation it creates the six site pages, imports the photos into the Media Library, builds the main menu, and sets the homepage.
Version: 1.0.0
Requires at least: 6.6
Tested up to: 7.1
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: masf
*/

/* ==========================================================================
   Design tokens and base
   ========================================================================== */
:root { --cream:#e8ddc4; --paper:#f5efe2; --ink:#302b22; --teal:#244b45; --green:#687054; --burgundy:#713a31; --rust:#a94f2f; --gold:#d49a3e; --ochre:#bb7b2b; --sand:#d8c59e; --charcoal:#2f302a;
  --masf-sans:"Avenir Next",Avenir,"Trebuchet MS",Arial,sans-serif; --masf-serif:Palatino,"Palatino Linotype","Book Antiqua",Georgia,serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background-color:var(--paper); background-image:radial-gradient(rgba(73,57,35,.055) .7px,transparent .7px); background-size:5px 5px; color:var(--ink); font-family:var(--masf-sans); }
a { color:inherit; text-decoration:none; }
h1,h2,blockquote { font-family:var(--masf-serif); font-weight:400; letter-spacing:-.025em; }
h1 { font-size:clamp(48px,6.5vw,92px); line-height:.96; margin:0 0 30px; }
h2 { font-size:clamp(40px,4.2vw,67px); line-height:1.02; margin:0 0 26px; }
.eyebrow { color:var(--rust); text-transform:uppercase; letter-spacing:.16em; font-size:12px; font-weight:800; margin:0 0 20px; }
.eyebrow.light { color:#f0bc63; }
.section { padding:110px clamp(24px,7.5vw,120px); }

/* Block resets inside designed sections */
section .wp-block-image, .wp-block-cover .wp-block-image { margin:0; }
.wp-block-quote { margin:0; }
.wp-block-quote p { margin:0; }
.wp-element-caption { margin:0; }

/* Plain content (pages that don't use the designed sections) */
.wp-block-post-content > :where(:not(.alignfull):not(.alignwide)) { padding-inline:24px; }
.wp-block-post-content > :where(p, ul, ol) { font-size:18px; line-height:1.65; }

/* ==========================================================================
   Header (template part) and navigation
   ========================================================================== */
.wp-site-blocks > header.wp-block-template-part { position:sticky; top:0; z-index:20; }
.admin-bar .wp-site-blocks > header.wp-block-template-part { top:32px; }
@media (max-width:782px) { .admin-bar .wp-site-blocks > header.wp-block-template-part { top:46px; } }
@media (max-width:600px) { .admin-bar .wp-site-blocks > header.wp-block-template-part { top:0; } }

.site-header { height:94px; padding:0 clamp(24px,6vw,96px); display:flex; align-items:center; justify-content:space-between; background:rgba(245,239,226,.98); border-bottom:1px solid rgba(48,43,34,.18); }
.brand { display:flex; align-items:center; gap:12px; line-height:1.05; }
.brand .wp-block-site-logo, .brand .brand-logo { margin:0; }
.brand .wp-block-site-logo img, .brand .brand-logo img { width:82px; height:82px; object-fit:contain; border-radius:4px; display:block; }
.brand-text p { margin:0; }
.brand-name { font-size:16px; font-weight:700; }
.brand .brand-tag { font-size:12px; margin-top:4px; color:#56615b; }

.site-header .wp-block-navigation { font-weight:700; font-size:13px; }
.site-header .wp-block-navigation .wp-block-navigation__container { gap:28px; align-items:center; }
.site-header .wp-block-navigation a:hover { color:var(--rust); }
.site-header .wp-block-navigation .nav-cta > a { border:2px solid var(--rust); padding:10px 17px; color:var(--burgundy); }
.site-header .wp-block-navigation .current-menu-item > a { color:var(--rust); border-bottom:2px solid var(--gold); padding-bottom:5px; }
/* Mobile menu overlay */
.site-header .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open { background-color:var(--paper); color:var(--ink); padding:28px clamp(24px,8vw,48px); }
.site-header .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { align-items:flex-start; padding-top:56px; }
.site-header .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { align-items:flex-start; gap:22px; font-family:var(--masf-serif); font-weight:400; font-size:30px; }
.site-header .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .nav-cta > a { font-family:var(--masf-sans); font-weight:800; font-size:16px; margin-top:12px; padding:10px 17px !important; }

/* Decorative vertical border (printed by functions.php on the front end) */
.heritage-border { position:fixed; left:0; top:94px; bottom:0; width:38px; background-color:#9f251d; background-image:url('assets/masf-border-vertical.png'); background-repeat:repeat-y; background-position:center top; background-size:34px auto; border-right:3px solid var(--gold); z-index:16; pointer-events:none; }
.admin-bar .heritage-border { top:126px; }

/* ==========================================================================
   Buttons (block styles: Primary, Ghost, Pale)
   ========================================================================== */
.wp-block-buttons { gap:12px; }
.wp-block-button .wp-block-button__link { display:inline-block; padding:15px 22px; font-weight:800; font-size:14px; line-height:normal; border-radius:0; text-decoration:none; }
.wp-block-button.is-style-primary .wp-block-button__link { background:var(--rust); color:#fff; border:2px solid #d9874d; }
.wp-block-button.is-style-ghost .wp-block-button__link { background:transparent; color:#fff; border:2px solid rgba(255,244,218,.78); }
.wp-block-button.is-style-pale .wp-block-button__link { background:var(--cream); color:var(--charcoal); border:2px solid var(--gold); }
.actions { display:flex; gap:12px; margin-top:34px; flex-wrap:wrap; }
.text-link { margin:34px 0 0; }
.text-link a { display:inline-block; color:var(--burgundy); font-weight:800; border-bottom:2px solid var(--gold); padding-bottom:5px; }

/* ==========================================================================
   Heroes (Cover blocks)
   ========================================================================== */
.wp-block-cover.hero, .wp-block-cover.page-hero { padding:0; color:#fff; }
.wp-block-cover.hero .wp-block-cover__inner-container, .wp-block-cover.page-hero .wp-block-cover__inner-container { color:#fff; }
.wp-block-cover.hero { min-height:720px; align-items:center; }
.hero-content { position:relative; max-width:780px; padding:90px clamp(24px,7.5vw,120px) 110px; }
.hero-copy { max-width:650px; font-size:20px; line-height:1.55; color:#f3f0e8; }
.wp-block-cover.page-hero { min-height:560px; align-items:flex-end; }
.page-hero-content { position:relative; width:min(900px,86vw); padding:95px clamp(24px,7.5vw,120px) 90px; }
.page-hero-content h1 { font-size:clamp(52px,6vw,86px); }
.page-hero-content > p:last-child { max-width:720px; font-size:20px; line-height:1.55; color:#f3f0e8; }

/* ==========================================================================
   Sections
   ========================================================================== */
.section-heading { display:grid; grid-template-columns:1fr 1.1fr; column-gap:8vw; align-items:start; }
.section-heading .eyebrow, .section-heading h2 { grid-column:1; }
.section-heading > p:last-child { grid-column:2; grid-row:2; font-size:18px; line-height:1.6; margin:4px 0; }
.compact-heading { margin-bottom:54px; }

/* Foreword + quote */
.foreword { display:grid; grid-template-columns:1fr; gap:42px; background:#f4ead5; }
.foreword > div { max-width:850px; }
.foreword-intro { max-width:760px; font-size:18px; line-height:1.65; }
.foreword-quote { margin:0; padding:42px 45px; background:#fff9eb; border-left:9px solid var(--burgundy); box-shadow:12px 12px 0 rgba(187,123,43,.18); }
.foreword-quote p { font-size:clamp(27px,2.3vw,36px); line-height:1.3; margin:0; color:#43382b; max-width:1120px; }
.foreword-quote cite { display:block; margin-top:25px; font-family:var(--masf-sans); font-size:16px; font-style:normal; font-weight:800; color:var(--burgundy); letter-spacing:.04em; }

/* Text + photo */
.home-welcome { display:grid; grid-template-columns:1fr 1fr; gap:8vw; align-items:center; background:#d8c9aa; }
.home-welcome-copy > p { font-size:18px; line-height:1.65; }
.home-welcome .wp-block-image img { display:block; width:100%; height:500px; object-fit:cover; border:3px solid #9f8258; box-shadow:14px 14px 0 rgba(113,58,49,.18); }

/* Explore cards (Cover blocks that link to a page) */
.explore-pages { background:#f5efe2; }
.explore-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.wp-block-cover.explore-card { min-height:315px; padding:36px; align-items:flex-end; justify-content:flex-start; color:#fff; border-bottom:10px solid var(--gold); isolation:isolate; }
.explore-card .wp-block-cover__image-background { z-index:-2; }
.explore-card .wp-block-cover__background { z-index:-1; }
.wp-block-cover.explore-card .wp-block-cover__inner-container { position:static; display:flex; flex-direction:column; width:100%; color:#fff; }
.explore-card p { margin:0; }
.explore-card .explore-label { text-transform:uppercase; letter-spacing:.14em; font-size:11px; font-weight:800; color:#f0bc63; margin-bottom:9px; }
.explore-card .explore-title { font:400 31px/1.15 var(--masf-serif); max-width:500px; }
.explore-card .explore-link { font-weight:800; margin-top:20px; }
.wp-site-blocks .explore-card .explore-link a::after { content:""; position:absolute; inset:0; }
.explore-card:hover .wp-block-cover__background, .explore-card:focus-within .wp-block-cover__background { background:linear-gradient(0deg,rgba(71,48,33,.95),rgba(71,48,33,.34) 74%) !important; }

/* Call-to-action band */
.page-cta { display:grid; grid-template-columns:1fr auto; gap:40px; align-items:center; padding:78px clamp(24px,7.5vw,120px); background:linear-gradient(120deg,#244b45,#1f403b); color:#fff; border-top:10px solid var(--gold); }
.page-cta h2 { font-size:clamp(38px,4vw,58px); margin-bottom:0; max-width:950px; }
.page-cta .wp-block-button__link { white-space:nowrap; }

/* Who we are */
.who-we-are { display:grid; grid-template-columns:.9fr 1.1fr; gap:7vw; align-items:center; background:#e8ddc4; }
.who-photo .wp-block-image img { width:100%; display:block; box-shadow:14px 14px 0 rgba(113,58,49,.18); border:3px solid #9f8258; }
.who-copy p { font-size:16px; line-height:1.65; }
.who-copy h2 { font-size:clamp(38px,4vw,60px); }
.foundation-section { background:#f5efe2; }
.mission-vision { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:52px; }
.mission-vision article { background:#f8f0df; border-top:9px solid var(--burgundy); padding:32px; }
.mission-vision article:nth-child(2) { border-top-color:var(--green); }
.mission-vision h3 { font:400 32px var(--masf-serif); margin:0 0 16px; }
.mission-vision p { font-size:17px; line-height:1.6; margin:0; }
.values-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:42px; }
.value { padding:24px; background:#fff; border-bottom:6px solid var(--ochre); }
.value h3 { font:400 24px var(--masf-serif); margin:0 0 10px; }
.value p { line-height:1.5; margin:0; color:#554d40; }
.governance { display:grid; grid-template-columns:1fr 1fr; gap:9vw; background:#d8c59e; border-top:12px solid var(--burgundy); }
.governance-copy { font-size:18px; line-height:1.65; }
.governance-copy p:last-child { padding:22px; background:#f5efe2; border-left:7px solid var(--teal); }

/* Board members (ready for when bios are confirmed) */
.board-section { background:#f5efe2; }
.board-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:55px; }
.board-member { background:#f8f0df; border-top:8px solid var(--burgundy); padding:0 0 27px; }
.board-member:nth-child(even) { border-top-color:var(--green); }
.board-member .wp-block-image img { display:block; width:100%; aspect-ratio:1/1; object-fit:cover; }
.board-member h3 { font:400 27px var(--masf-serif); margin:22px 27px 6px; }
.board-member .label { margin:0 27px 12px; text-transform:uppercase; letter-spacing:.12em; font-size:11px; font-weight:800; color:var(--rust); }
.board-member p:not(.label) { margin:0 27px; line-height:1.55; color:#554d40; }

/* Our history */
.definition { background-color:var(--charcoal); background-image:linear-gradient(rgba(47,48,42,.94),rgba(47,48,42,.94)),radial-gradient(circle at 10px 10px,var(--gold) 2px,transparent 3px); background-size:auto,24px 24px; color:#fff; text-align:center; padding:95px clamp(24px,12vw,200px); border-top:10px solid var(--ochre); border-bottom:10px solid var(--burgundy); }
.definition .wp-block-quote { font-size:clamp(39px,5vw,70px); line-height:1.08; margin:15px auto 28px; max-width:1050px; color:#f4e5c0; }
.definition > p:last-child { max-width:720px; margin:auto; font-size:18px; line-height:1.6; color:#e7ddc7; }
.territory { display:grid; grid-template-columns:1fr 1fr; gap:8vw; align-items:center; padding:100px clamp(24px,9vw,145px); background:#d9c69f; border-top:12px solid var(--burgundy); border-bottom:12px solid var(--ochre); }
.territory-copy > p { font-size:18px; line-height:1.6; }
.territory-focus { margin:28px 0; padding:20px 24px; background:#f4ead5; border-left:8px solid var(--teal); }
.territory-focus .label { margin:0; font-weight:800; text-transform:uppercase; letter-spacing:.12em; font-size:11px; color:var(--burgundy); }
.territory-focus p { margin:8px 0 0; line-height:1.5; }
.territory .wp-block-image { margin:0; padding:22px; background:#f8f1e2; border:2px solid #9f8258; box-shadow:12px 12px 0 rgba(113,58,49,.18); }
.territory .wp-block-image img { display:block; width:100%; max-height:620px; object-fit:contain; background:#eee1bc; }
.territory figcaption { font-size:11px; color:#675c49; margin-top:13px; line-height:1.4; }
.homelands { display:grid; grid-template-columns:1.12fr .88fr; min-height:650px; border-top:14px solid var(--burgundy); border-bottom:14px solid var(--ochre); }
.homelands .image-panel { margin:0; min-height:550px; }
.homelands .image-panel img { display:block; width:100%; height:100%; min-height:550px; object-fit:cover; }
.text-panel { background-color:#d8c9aa; background-image:radial-gradient(rgba(85,69,42,.11) .8px,transparent .8px); background-size:6px 6px; padding:100px clamp(32px,6vw,95px); display:flex; flex-direction:column; justify-content:center; border-left:10px solid var(--green); }
.text-panel p { font-size:18px; line-height:1.6; }
.family-history-link { display:grid; grid-template-columns:1fr auto; gap:50px; align-items:center; background:#efe2c8; border-top:12px solid var(--burgundy); }
.family-history-link > div { max-width:900px; }
.family-history-link h2 { font-size:clamp(40px,4vw,62px); }
.family-history-link > div > p:last-child { max-width:760px; font-size:18px; line-height:1.65; }
.family-history-link .wp-block-button__link { white-space:nowrap; }
.creation-art { background:#f5efe2; border-top:12px solid var(--teal); }
.creation-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:52px; }
.creation-grid .wp-block-image { margin:0; padding:18px; background:#fff8e9; border:2px solid #b79b70; }
.creation-grid .wp-block-image img { display:block; width:100%; aspect-ratio:1/1; object-fit:contain; background:#fff; }
.art-credit { text-align:center; margin:22px 0 0; font-size:15px; color:var(--burgundy); }
.village-gallery { background:#f4ead5; border-top:12px solid var(--teal); }
.photo-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:18px; margin-top:55px; }
.photo-grid .wp-block-image { margin:0; background:#fff; border-bottom:8px solid var(--ochre); }
.photo-grid .wp-block-image img { display:block; width:100%; height:420px; object-fit:cover; }
.photo-grid .wp-block-image:nth-child(1) img { object-position:center 40%; }
.photo-grid figcaption { margin:0; padding:17px 18px; font-size:13px; line-height:1.45; font-weight:700; text-align:left; }

/* Our work */
.work { background:#e8ddc4; }
.pillar-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:60px; }
.pillar { color:var(--ink); min-height:345px; padding:29px 25px; display:flex; flex-direction:column; background-color:#f8f0df; background-position:center; background-size:cover; background-repeat:no-repeat; border-top:12px solid var(--rust); border-bottom:2px solid var(--sand); box-shadow:0 9px 20px rgba(74,52,29,.09); }
.pillar .pillar-num { font-size:12px; font-weight:800; color:var(--burgundy); margin:0; }
.pillar h3 { font-family:var(--masf-serif); font-weight:400; font-size:27px; line-height:1.06; margin:auto 0 17px; }
.pillar p { line-height:1.5; margin:0; color:#554d40; }
.pillar.green { border-top-color:var(--green); }
.pillar.burgundy { border-top-color:var(--burgundy); }
.pillar.rust { border-top-color:var(--ochre); }
/* A softly faded community photograph gives each sovereignty pillar a distinct visual story. */
.pillar:nth-child(1) { background-image:linear-gradient(rgba(248,240,223,.86),rgba(248,240,223,.93)),url('assets/awaswas-coast.jpg'); }
.pillar:nth-child(2) { background-image:linear-gradient(rgba(248,240,223,.84),rgba(248,240,223,.93)),url('assets/culture-community.jpg'); }
.pillar:nth-child(3) { background-image:linear-gradient(rgba(248,240,223,.86),rgba(248,240,223,.94)),url('assets/young-adult-cultural-practice.png'); }
.pillar:nth-child(4) { background-image:linear-gradient(rgba(248,240,223,.84),rgba(248,240,223,.92)),url('assets/stewardship-cultural-fire.jpg'); }
.pillar:nth-child(5) { background-image:linear-gradient(rgba(248,240,223,.85),rgba(248,240,223,.94)),url('assets/future-generations-stewardship.jpg'); }
.pillar:nth-child(6) { background-image:linear-gradient(rgba(248,240,223,.84),rgba(248,240,223,.93)),url('assets/future-generations-stewardship.jpg'); }
.pillar:nth-child(7) { background-image:linear-gradient(rgba(248,240,223,.86),rgba(248,240,223,.94)),url('assets/awaswas-coast.jpg'); }
.pillar:nth-child(8) { background-image:linear-gradient(rgba(248,240,223,.84),rgba(248,240,223,.93)),url('assets/juristac-advocacy.jpg'); }
.roadmap { background-color:#f5efe2; background-image:radial-gradient(rgba(89,64,35,.07) .7px,transparent .7px); background-size:6px 6px; border-top:12px solid var(--green); }
.roadmap-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:60px; }
.roadmap-grid article { padding:30px 26px; background:#eadfc7; border:1px solid #bca982; border-bottom:8px solid var(--burgundy); }
.roadmap-grid article:nth-child(2) { border-bottom-color:var(--green); }
.roadmap-grid article:nth-child(3) { border-bottom-color:var(--ochre); }
.roadmap-grid article:nth-child(4) { border-bottom-color:var(--teal); }
.roadmap-symbol { color:var(--rust); font-size:25px; margin:0; line-height:1.2; }
.roadmap-grid h3 { font:400 27px var(--masf-serif); margin:15px 0 18px; }
.roadmap-grid ul { margin:0; padding-left:19px; }
.roadmap-grid li { margin:10px 0; line-height:1.4; color:#544b3d; }
.roadmap-note { margin:20px 0 0; padding:23px 27px; background:var(--charcoal); color:#f5e8cb; line-height:1.55; border-left:10px solid var(--gold); }
.future { display:grid; grid-template-columns:1fr 1fr; background:linear-gradient(120deg,#713a31,#63352f); color:#fff; border-top:12px solid var(--gold); }
.future .future-image { margin:0; }
.future-image img { display:block; width:100%; height:100%; min-height:600px; object-fit:cover; border-right:10px solid var(--ochre); }
.future-copy { padding:100px clamp(32px,7vw,110px); display:flex; flex-direction:column; justify-content:center; }
.future-copy p:last-child { font-size:18px; line-height:1.65; color:#f3e4ce; }

/* Advocacy */
.advocacy { background:var(--paper); }
.story-card { display:grid; grid-template-columns:1.1fr .9fr; background:#f5ead3; margin-top:60px; border:3px solid var(--ochre); box-shadow:12px 12px 0 var(--sand); }
.story-card .wp-block-image { margin:0; height:100%; }
.story-card .wp-block-image img { display:block; width:100%; height:100%; min-height:460px; object-fit:cover; border-right:8px solid var(--burgundy); }
.story-copy { padding:70px; display:flex; flex-direction:column; justify-content:center; }
.story-card .label { display:block; text-transform:uppercase; letter-spacing:.12em; font-size:11px; font-weight:800; color:var(--rust); margin:0 0 9px; }
.story-card h3 { font-family:var(--masf-serif); font-size:48px; font-weight:400; margin:0 0 20px; }
.story-card p:not(.label) { font-size:17px; line-height:1.6; }
.advocacy-principles { background:#d8c59e; display:grid; grid-template-columns:.75fr 1.25fr; gap:8vw; }
.principle-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.principle-grid article, .support-grid article { padding:27px; background:#f8f0df; border-top:8px solid var(--burgundy); }
.principle-grid article:nth-child(even), .support-grid article:nth-child(even) { border-top-color:var(--green); }
.principle-grid h3, .support-grid h3 { font:400 27px var(--masf-serif); margin:0 0 12px; }
.principle-grid p, .support-grid p { line-height:1.55; margin:0; color:#554d40; }

/* Connect */
.connect { display:grid; grid-template-columns:1fr 1fr; gap:10vw; padding:100px clamp(24px,7.5vw,120px); background:linear-gradient(120deg,#244b45,#1f403b); color:#fff; border-top:12px solid var(--gold); }
.connect p { font-size:17px; line-height:1.6; }
.connect .wp-block-button { margin-top:20px; }
.contact-links { display:flex; gap:12px; flex-wrap:wrap; }
.contact-links .wp-block-button__link { display:inline-flex; align-items:center; justify-content:center; }
.connect-page { min-height:440px; }
.support-section { background:#f5efe2; }
.support-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:55px; }
.support-note { margin:24px 0 0; padding:22px 25px; background:#e8ddc4; border-left:8px solid var(--ochre); line-height:1.55; }

/* Simple page template */
.standard-page h1 { font-size:clamp(46px,6vw,82px); }
.standard-page .wp-block-post-content > :where(:not(.alignfull):not(.alignwide)) { padding-inline:0; }

/* Footer (template part) */
.site-footer { display:flex; justify-content:space-between; gap:20px; padding:32px clamp(24px,7.5vw,120px); background:#d6c49f; font-size:12px; color:#4c4030; border-bottom:12px solid var(--burgundy); }
.site-footer p { margin:0; }
.site-footer .footer-name { font-weight:700; }

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width:1100px) { .roadmap-grid, .support-grid { grid-template-columns:1fr 1fr; } }
@media (max-width:900px) {
  .brand-text { display:none; }
  .site-header .wp-block-navigation .wp-block-navigation__container { gap:16px; }
  .wp-block-cover.hero { min-height:680px !important; }
  .section-heading, .territory, .homelands, .story-card, .future, .connect, .mission-vision, .foreword, .who-we-are, .governance, .home-welcome, .advocacy-principles, .page-cta, .board-grid { grid-template-columns:1fr; }
  .section-heading > p:last-child { grid-column:1; grid-row:auto; }
  .pillar-grid, .values-grid { grid-template-columns:1fr 1fr; }
  .homelands .image-panel, .homelands .image-panel img { min-height:480px; }
  .story-copy { padding:45px; }
  .future-image img { min-height:480px; }
  .territory .wp-block-image { max-width:620px; margin:auto; }
  .photo-grid { grid-template-columns:1fr 1fr; }
  .photo-grid .wp-block-image:last-child { grid-column:1/-1; }
  .wp-block-cover.page-hero { min-height:500px !important; }
  .page-hero-content { padding-bottom:70px; }
  .home-welcome .wp-block-image img { height:430px; }
  .heritage-border { width:28px; background-size:25px auto; }
  .family-history-link { grid-template-columns:1fr; }
}
@media (max-width:700px) {
  .explore-grid, .principle-grid, .support-grid { grid-template-columns:1fr; }
  .foreword-quote { padding:32px 28px; }
  .wp-block-cover.page-hero { min-height:470px !important; }
  .page-hero-content > p:last-child { font-size:17px; }
}
@media (max-width:600px) {
  .site-header { height:74px; }
  .brand .wp-block-site-logo img, .brand .brand-logo img { width:60px; height:60px; }
  .hero-content { padding-top:70px; }
  .pillar-grid, .roadmap-grid, .values-grid, .photo-grid, .creation-grid { grid-template-columns:1fr; }
  .photo-grid .wp-block-image:last-child { grid-column:auto; }
  .photo-grid .wp-block-image img { height:340px; }
  .pillar { min-height:260px; }
  .section { padding-top:80px; padding-bottom:80px; }
  .connect { padding-top:75px; padding-bottom:75px; }
  .site-footer { flex-direction:column; }
  .heritage-border { top:74px; width:20px; background-size:18px auto; border-right-width:2px; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
