/*
Theme Name: Save Our Shops Gold Coast
Theme URI: https://saveourshops.net
Author: Save Our Shops Gold Coast
Description: A clean, accessible red, white and charcoal block theme for the Save Our Shops Gold Coast community campaign. Pages, posts, navigation and template parts remain editable in WordPress.
Version: 1.0.2
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 8.0
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: save-our-shops
Tags: block-patterns, block-styles, full-site-editing, wide-blocks, custom-colors, custom-logo
*/

@font-face{font-family:Montserrat;src:url('assets/fonts/Montserrat-Variable.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
:root{--sos-red:#e21d2b;--sos-ink:#171717;--sos-grey:#626266;--sos-paper:#f4f3f1;--sos-line:#deddd9;--sos-radius:2px;--sos-wide:1280px}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{margin:0;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
*{box-sizing:border-box}
img{max-width:100%;height:auto}
a{text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
button,input,select,textarea{font:inherit}
button,a,input,summary{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid var(--sos-red);outline-offset:5px}
::selection{background:var(--sos-red);color:#fff}
h1,h2,h3,h4{overflow-wrap:normal;text-wrap:balance}
p{overflow-wrap:break-word}
figure{margin-left:0;margin-right:0}
figcaption{font-size:13px!important;line-height:1.6;color:var(--sos-grey);margin-top:10px}
.wp-site-blocks{padding:0}
.wp-site-blocks>header.wp-block-template-part{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--sos-line)}
.admin-bar .wp-site-blocks>header.wp-block-template-part{top:32px}
.sos-header{min-height:104px;padding-top:20px!important;padding-bottom:20px!important;gap:28px!important}
.sos-header .wp-block-site-logo{flex:0 0 auto;max-width:320px}
.sos-header .wp-block-site-logo img{display:block;width:320px;height:auto;max-height:74px;object-fit:contain;object-position:left center}
.sos-header .wp-block-navigation{margin-left:auto;gap:22px;font-size:14px;font-weight:600}
.sos-header .wp-block-navigation a{text-decoration:none}
.sos-header .wp-block-navigation a:hover{color:var(--sos-red)}
.wp-block-button__link{border-radius:var(--sos-radius);font-weight:700;line-height:1.25;padding:15px 24px;text-decoration:none;box-shadow:none!important;transition:background .16s,color .16s,border-color .16s}
.wp-block-button__link:hover{background:#bd1421;color:#fff}
.is-style-outline>.wp-block-button__link{border:1px solid currentColor;padding:14px 23px}
.is-style-outline>.wp-block-button__link:hover{background:var(--sos-ink);border-color:var(--sos-ink);color:#fff}
.sos-header .wp-block-button__link{font-size:13px;padding:12px 18px;white-space:nowrap}
.sos-content-main{margin-top:0;padding-bottom:80px}
.sos-page-heading{padding-top:76px;padding-bottom:36px;border-bottom:1px solid var(--sos-line);margin-bottom:48px!important}
.sos-page-heading h1{font-size:clamp(42px,5.5vw,72px);max-width:1100px;margin:0}
.sos-post-heading{padding-top:70px;padding-bottom:35px}
.sos-post-heading .wp-block-post-date{color:var(--sos-grey);font-size:14px;margin-top:20px}
.sos-post-heading .wp-block-post-terms{font-size:13px;font-weight:700;color:var(--sos-red)}
.sos-post-heading h1{font-size:clamp(38px,5vw,64px);line-height:1.12;max-width:1060px}
.sos-post-content{padding-top:0}
.sos-post-content>:first-child{margin-top:0}
.sos-post-content p,.sos-post-content li{line-height:1.75}
.sos-post-content h2{margin-top:1.8em}
.sos-post-content>.wp-block-post-featured-image img{border-radius:2px}
.sos-hero{padding-top:76px;padding-bottom:76px}
.sos-hero h1{font-size:clamp(44px,6.1vw,88px);font-weight:900;line-height:1.02;letter-spacing:-.05em;max-width:1180px;margin-top:22px;margin-bottom:28px}
.sos-hero h1 strong,.sos-hero h1 em{color:var(--sos-red);font-style:normal;font-weight:inherit}
.sos-eyebrow{font-size:12px!important;font-weight:800;line-height:1.5!important;letter-spacing:.1em;text-transform:uppercase;color:var(--sos-red);margin-bottom:18px}
.sos-lead{font-size:clamp(19px,2.05vw,24px)!important;line-height:1.55!important;max-width:950px}
.sos-hero .sos-lead{font-size:20px!important;max-width:980px}
.sos-hero .sos-challenge{font-size:25px;line-height:1.4;margin-top:25px}
.sos-hero .sos-challenge strong{color:var(--sos-red)}
.sos-actioncards{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px!important;margin-top:42px!important;align-items:stretch!important}
.sos-actioncards>.wp-block-column{margin:0!important;min-width:0}
.sos-card{padding:28px;border:1px solid var(--sos-line);border-radius:2px;min-height:260px;height:100%;display:flex;flex-direction:column;gap:0}
.sos-card h2,.sos-card h3{font-size:30px;line-height:1.12;letter-spacing:-.035em;margin-top:24px;margin-bottom:14px}
.sos-card p{font-size:15px;line-height:1.6;margin-bottom:20px}
.sos-card .sos-eyebrow{font-size:10px!important;margin:0;opacity:.8;color:inherit}
.sos-card .wp-block-buttons,.sos-card>p:last-child{margin-top:auto}
.sos-card .wp-block-button__link{font-size:13px;text-decoration:underline;text-underline-offset:5px;padding:0;border:0;background:none;color:inherit}
.sos-card .wp-block-button__link:hover{background:none;color:inherit}
.sos-card-red,.sos-card.sos-red,.sos-card.red{background:var(--sos-red);border-color:var(--sos-red);color:#fff}
.sos-card-dark,.sos-card.sos-dark,.sos-card.dark{background:var(--sos-ink);border-color:var(--sos-ink);color:#fff}
.sos-card-light,.sos-card.sos-light,.sos-card.light{background:#fff;border-color:var(--sos-ink);color:var(--sos-ink)}
.sos-card-red a,.sos-card-dark a,.sos-card.red a,.sos-card.dark a{color:#fff}
.sos-card-red :focus-visible,.sos-card-dark :focus-visible,.sos-card.red :focus-visible,.sos-card.dark :focus-visible,.sos-donate-panel :focus-visible{outline-color:#fff}
.sos-card-red .wp-block-button__link,.sos-card-dark .wp-block-button__link,.sos-card.red .wp-block-button__link,.sos-card.dark .wp-block-button__link{color:#fff!important}
.sos-section{padding-top:84px;padding-bottom:84px;margin-top:0!important}
.sos-section+.sos-section{border-top:1px solid var(--sos-line)}
.sos-section h2{font-size:clamp(33px,4.1vw,50px);line-height:1.1;letter-spacing:-.04em;max-width:950px}
.sos-section h3{font-size:25px;line-height:1.2;letter-spacing:-.025em}
.sos-section .wp-block-columns{gap:40px}
.sos-section .wp-block-image img{width:100%;object-fit:cover}
.sos-photo-grid .wp-block-image img{aspect-ratio:4/3;object-fit:cover}
.sos-photo-grid{gap:24px!important}
.sos-photo-grid figcaption strong{display:block;color:var(--sos-ink)}
.sos-approval-image img{object-fit:contain!important;background:var(--sos-paper);padding:12px}
.sos-video-placeholder{position:relative;background:var(--sos-ink);color:#fff;min-height:320px;display:flex;justify-content:center;align-items:center;padding:40px;text-align:center;overflow:hidden}
.sos-video-placeholder .wp-block-image{margin:0}
.sos-video-placeholder .wp-block-image img{opacity:.48;aspect-ratio:16/9;object-fit:cover}
.sos-video-placeholder h3,.sos-video-placeholder p{position:relative;color:#fff}
.sos-video-placeholder .sos-eyebrow{color:#fff}
.sos-video-badge{display:inline-block;padding:9px 14px;background:var(--sos-red);color:#fff;font-size:12px;font-weight:700;letter-spacing:.06em}
.sos-panel{padding:34px;background:var(--sos-paper);border-left:4px solid var(--sos-red)}
.sos-panel h3{margin-top:0}
.sos-panel p{font-size:16px;line-height:1.7}
.is-style-sos-panel{padding:34px;background:var(--sos-paper);border-left:4px solid var(--sos-red)}
.is-style-sos-red-card{padding:30px;background:var(--sos-red);color:#fff;border-radius:2px}
.is-style-sos-red-card a{color:#fff}
.sos-quote-grid{gap:30px!important}
.sos-quote-grid .wp-block-quote{border:0;border-top:4px solid var(--sos-red);padding:26px 0 0;margin:0}
.sos-quote-grid .wp-block-quote>p{font-size:24px;font-weight:700;line-height:1.4;letter-spacing:-.02em}
.sos-quote-grid cite{font-size:13px;font-style:normal;color:var(--sos-grey);line-height:1.6}
.sos-source{font-size:13px!important;line-height:1.65!important;color:var(--sos-grey);margin-top:16px}
.sos-source a{color:inherit}
.sos-stats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px!important;padding-top:30px;padding-bottom:30px;border-top:1px solid var(--sos-line);border-bottom:1px solid var(--sos-line);margin:36px 0!important}
.sos-stats .wp-block-column{margin:0!important}
.sos-stats p{font-size:14px;line-height:1.5;margin-top:8px;margin-bottom:0}
.sos-stats h2,.sos-stats h3,.sos-stats .sos-stat-number{font-size:54px!important;font-weight:800;line-height:1;color:var(--sos-red);margin:0}
.sos-issue-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 40px!important;margin-top:35px!important}
.sos-issue-list h3{font-size:22px}
.sos-issue-list p{font-size:16px}
.sos-donate-panel{background:var(--sos-red);color:#fff;padding:42px;border-radius:2px}
.sos-donate-panel h2,.sos-donate-panel h3,.sos-donate-panel p,.sos-donate-panel a{color:#fff}
.sos-donate-panel .sos-eyebrow{color:#fff!important}
.sos-donate-panel .wp-block-button__link{background:#fff;color:var(--sos-red)}
.sos-donate-panel .wp-block-button__link:hover{background:var(--sos-ink);color:#fff}
.sos-signup-panel{padding:42px;border:1px solid var(--sos-line);border-radius:2px}
.sos-signup-panel h2{margin-top:0}
.sos-faq .wp-block-details,.sos-faq details{padding:23px 0;border:0;border-bottom:1px solid var(--sos-line);margin-top:0}
.sos-faq summary{position:relative;padding-right:35px;font-size:21px;font-weight:700;line-height:1.4;cursor:pointer;list-style:none}
.sos-faq summary::-webkit-details-marker{display:none}
.sos-faq summary::after{content:'+';position:absolute;right:3px;top:0;font-size:27px;font-weight:400;color:var(--sos-red)}
.sos-faq details[open]>summary::after{content:'−'}
.sos-faq details>p{font-size:17px;line-height:1.75;padding-right:35px;margin-top:20px}
.sos-timeline{padding-left:28px;border-left:2px solid var(--sos-line);margin-left:7px}
.sos-timeline>.wp-block-group{position:relative;padding-bottom:32px;margin-top:0!important}
.sos-timeline>.wp-block-group::before{content:'';width:11px;height:11px;position:absolute;left:-35px;top:5px;background:var(--sos-red);border-radius:50%}
.sos-timeline h3{font-size:24px;margin-top:8px;margin-bottom:10px}
.sos-timeline .sos-eyebrow{font-size:11px!important;margin-bottom:0}
.sos-timeline p{font-size:16px;line-height:1.65}
.sos-documents .wp-block-file{display:flex;align-items:center;gap:18px;border-top:1px solid var(--sos-line);padding:24px 0;margin-top:0;font-size:19px;font-weight:700}
.sos-documents .wp-block-file>a:first-child{flex:1}
.sos-documents .wp-block-file__button{background:var(--sos-red);color:#fff;border-radius:2px;font-size:13px;padding:10px 15px}
.sos-documents>.wp-block-group{padding:24px 0;border-top:1px solid var(--sos-line)}
.sos-documents h3{font-size:21px;margin:0 0 8px}
.sos-documents p{font-size:15px;color:var(--sos-grey)}
.sos-news-card{padding-bottom:28px;border-bottom:1px solid var(--sos-line);height:100%}
.sos-news-card .wp-block-post-featured-image{margin-bottom:20px}
.sos-news-card .wp-block-post-featured-image img{aspect-ratio:16/10;object-fit:cover}
.sos-news-card .wp-block-post-title{font-size:25px;line-height:1.2;letter-spacing:-.025em;margin-top:14px}
.sos-news-card .wp-block-post-title a{text-decoration:none}
.sos-news-card .wp-block-post-title a:hover{color:var(--sos-red)}
.sos-news-card .wp-block-post-date{font-size:12px;color:var(--sos-red);font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.sos-news-card .wp-block-post-excerpt{font-size:16px;line-height:1.65}
.sos-news-card .wp-block-post-excerpt__more-link{font-weight:700;color:var(--sos-red)}
.sos-posts-grid{row-gap:38px!important;column-gap:28px!important}
.sos-pagination{margin-top:45px;margin-bottom:20px}
.sos-footer{margin-top:0!important;background:var(--sos-paper);border-top:1px solid var(--sos-line);padding-top:55px;padding-bottom:30px}
.sos-footer .wp-block-site-logo img{width:285px;height:auto;max-height:72px;object-fit:contain;object-position:left center}
.sos-footer h3{font-size:17px;margin-bottom:16px}
.sos-footer p,.sos-footer li{font-size:14px;line-height:1.7}
.sos-footer a{color:var(--sos-ink)}
.sos-footer .wp-block-columns{gap:48px}
.sos-footer-links{list-style:none;padding-left:0}
.sos-footer-links li{margin-bottom:9px}
.sos-footer-bottom{margin-top:36px!important;padding-top:22px;border-top:1px solid var(--sos-line);font-size:12px;color:var(--sos-grey)}
.sos-footer-bottom p{font-size:12px}
.sos-404{min-height:50vh;padding-top:85px;padding-bottom:85px}
.sos-404 h1{font-size:clamp(46px,7vw,80px)}
.sos-404 p{max-width:700px;font-size:21px}
.forminator-ui.forminator-custom-form{font-family:inherit!important}
.forminator-ui .forminator-label{font-family:inherit!important;font-size:14px!important;font-weight:700!important;color:var(--sos-ink)!important}
.forminator-ui input.forminator-input,.forminator-ui textarea.forminator-textarea,.forminator-ui select.forminator-select{font-family:inherit!important;font-size:17px!important;border:1px solid #c8c7c3!important;border-radius:2px!important;background:#fff!important;color:var(--sos-ink)!important;min-height:50px!important;padding:12px 14px!important}
.forminator-ui .forminator-button-submit{font-family:inherit!important;font-size:16px!important;font-weight:700!important;background:var(--sos-red)!important;color:#fff!important;border-radius:2px!important;padding:15px 24px!important;box-shadow:none!important}
.forminator-ui .forminator-button-submit:hover{background:#bd1421!important}
.forminator-ui .forminator-checkbox__label{font-family:inherit!important;font-size:14px!important;line-height:1.6!important}
.forminator-ui .forminator-checkbox-box{border-color:#8c8b87!important}
.forminator-ui .forminator-checkbox input:checked+.forminator-checkbox-box{background:var(--sos-red)!important;border-color:var(--sos-red)!important}
.forminator-ui .forminator-description{font-size:13px!important;line-height:1.6!important}
.forminator-ui .forminator-response-message.forminator-success{border-color:var(--sos-red)!important;background:#f8eded!important;color:var(--sos-ink)!important}
.wp-block-navigation__responsive-container.is-menu-open{background:#fff!important;color:var(--sos-ink)!important;padding:35px 28px}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{align-items:flex-start;gap:20px}
.wp-block-navigation__responsive-container.is-menu-open a{font-size:20px;line-height:1.4}
.wp-block-post-content a:not(.wp-block-button__link):not(.wp-block-file__button){overflow-wrap:anywhere}

@media(min-width:1000px){.sos-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:16px 48px;padding-top:42px;padding-bottom:12px}.sos-hero>.sos-eyebrow{grid-column:1/-1;margin:0 0 8px!important}.sos-hero>h1{grid-column:1;grid-row:2/span 3;font-size:clamp(48px,4.7vw,66px);margin:0;max-width:none}.sos-hero>p:not(.sos-eyebrow){grid-column:2;margin:0!important}.sos-hero>.sos-lead{font-size:18px!important;line-height:1.55!important}.sos-hero>p:last-child{font-size:15px}.sos-actioncards{margin-top:24px!important}}
@media(min-width:782px){.sos-header .wp-block-navigation__responsive-container-open:not(.always-shown){display:none}}
@media(max-width:1100px){.sos-header{gap:20px!important}.sos-header .wp-block-site-logo{max-width:250px}.sos-header .wp-block-site-logo img{width:250px}.sos-header .wp-block-navigation{font-size:13px;gap:15px}.sos-card{padding:24px}.sos-card h2,.sos-card h3{font-size:27px}}
@media(max-width:900px){.sos-header .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}.sos-header .wp-block-navigation__responsive-container-open{display:flex!important}.sos-header{min-height:88px}.sos-header .wp-block-site-logo{max-width:230px}.sos-header .wp-block-site-logo img{width:230px}.sos-header .wp-block-navigation{margin-left:auto}.sos-header .wp-block-buttons{margin-left:0}.sos-section .wp-block-columns{gap:28px}.sos-stats h2,.sos-stats h3,.sos-stats .sos-stat-number{font-size:44px!important}}
@media(max-width:781px){html{scroll-padding-top:110px}.admin-bar .wp-site-blocks>header.wp-block-template-part{top:46px}.sos-header{min-height:82px;padding-top:16px!important;padding-bottom:16px!important;gap:14px!important}.sos-header .wp-block-site-logo{max-width:210px}.sos-header .wp-block-site-logo img{width:210px;max-height:52px}.sos-header .wp-block-button__link{font-size:12px;padding:11px 13px}.sos-header .wp-block-navigation{order:3;margin-left:0}.sos-header .wp-block-buttons{margin-left:auto}.sos-page-heading{padding-top:46px;padding-bottom:27px;margin-bottom:35px!important}.sos-hero{padding-top:44px;padding-bottom:52px}.sos-hero h1{font-size:clamp(42px,8.7vw,66px);line-height:1.04}.sos-hero .sos-lead{font-size:18px!important}.sos-hero .sos-challenge{font-size:22px}.sos-eyebrow{font-size:10px!important}.sos-actioncards{grid-template-columns:1fr;margin-top:30px!important;gap:14px!important}.sos-card{min-height:0;padding:24px}.sos-card h2,.sos-card h3{font-size:29px;margin-top:18px}.sos-card p{font-size:15px}.sos-section{padding-top:58px;padding-bottom:58px}.sos-section h2{font-size:34px}.sos-section h3{font-size:24px}.sos-lead{font-size:20px!important}.sos-section .wp-block-columns{gap:30px}.sos-panel{padding:25px}.sos-panel p{font-size:16px}.sos-quote-grid .wp-block-quote>p{font-size:24px}.sos-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 20px!important}.sos-issue-list{grid-template-columns:1fr;gap:24px!important}.sos-donate-panel,.sos-signup-panel{padding:29px}.sos-faq summary{font-size:19px}.sos-faq details>p{font-size:16px;padding-right:0}.sos-timeline{padding-left:24px}.sos-timeline>.wp-block-group::before{left:-31px}.sos-timeline h3{font-size:23px}.sos-documents .wp-block-file{flex-wrap:wrap;font-size:18px}.sos-footer{padding-top:40px}.sos-footer .wp-block-columns{gap:25px}.sos-footer-bottom{gap:12px!important}.sos-posts-grid{grid-template-columns:1fr!important}.sos-content-main{padding-bottom:55px}.sos-post-heading{padding-top:45px}.sos-post-heading h1{font-size:38px}}
@media(max-width:420px){.sos-header .wp-block-site-logo{max-width:175px}.sos-header .wp-block-site-logo img{width:175px}.sos-header .wp-block-button__link{padding:10px 11px}.sos-header{gap:10px!important}.sos-donate-panel,.sos-signup-panel{padding:24px}.sos-hero h1{font-size:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{.sos-header .wp-block-navigation,.sos-header .wp-block-buttons,.sos-footer,.forminator-ui,.wp-block-query-pagination{display:none!important}.wp-site-blocks>header.wp-block-template-part{position:static}.sos-hero,.sos-section{padding-top:25px;padding-bottom:25px}.sos-card,.sos-panel,.sos-donate-panel,.sos-signup-panel{break-inside:avoid}.sos-hero h1{font-size:42px}a{color:#171717!important}}
