/*
Theme Name: Seele Timber
Description: Lightweight theme for Trewirgie Timber and Orange Farm Sawmill. Brand is selected with the st_brand option (trewirgie | orangefarm).
Version: 1.0.0
Author: Saint ICT
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: seele-timber
*/

:root{
  --c-primary:#1E7F43; --c-primary-dark:#0B5A2E; --c-accent:#6B4423; --c-dark:#2B1B10;
  --c-bg:#FAF8F3; --c-surface:#ffffff; --c-text:#2a2622; --c-muted:#6b635b; --c-line:#e7e1d6;
  --f-head:'Cinzel',Georgia,serif; --f-body:'Source Sans 3',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --head-transform:none; --head-spacing:.02em;
  --radius:6px; --wrap:1180px; --pad:clamp(16px,4vw,32px);
}
body.brand-orangefarm{
  --c-primary:#D2622A; --c-primary-dark:#A8471A; --c-accent:#3B1F14; --c-dark:#24130C;
  --c-bg:#FBF7F2; --f-head:'Oswald','Arial Narrow',sans-serif; --head-transform:uppercase; --head-spacing:.04em;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--c-bg);color:var(--c-text);font:400 1.0625rem/1.65 var(--f-body);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--c-primary-dark)}
a:hover{color:var(--c-primary)}
h1,h2,h3,h4{font-family:var(--f-head);text-transform:var(--head-transform);letter-spacing:var(--head-spacing);color:var(--c-dark);line-height:1.2;margin:0 0 .6em;font-weight:600}
h1{font-size:clamp(2rem,4.5vw,3.2rem)}
h2{font-size:clamp(1.6rem,3vw,2.3rem)}
h3{font-size:clamp(1.2rem,2vw,1.45rem)}
p{margin:0 0 1.1em}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}
.skip-link:focus{position:fixed;top:8px;left:8px;z-index:999;clip:auto;width:auto;height:auto;background:#fff;padding:8px 12px}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid var(--c-line)}
.admin-bar .site-header{top:32px}
.header-inner{max-width:var(--wrap);margin:0 auto;padding:10px var(--pad);display:flex;align-items:center;gap:24px;position:relative}
.site-brand img{height:62px;width:auto}
body.brand-orangefarm .site-brand img{height:70px}
.site-brand .site-title{font-family:var(--f-head);font-size:1.4rem;color:var(--c-dark);text-decoration:none}
.nav-toggle{display:none}
.nav-toggle-label{display:none;margin-left:auto;cursor:pointer;padding:14px 8px}
.nav-toggle-label span,.nav-toggle-label span::before,.nav-toggle-label span::after{display:block;width:24px;height:2px;background:var(--c-dark);position:relative;content:''}
.nav-toggle-label span::before{position:absolute;top:-7px}.nav-toggle-label span::after{position:absolute;top:7px}
.primary-nav{margin-left:auto}
.primary-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px;align-items:center}
.primary-nav a{display:block;padding:10px 14px;text-decoration:none;color:var(--c-dark);font-weight:600;font-size:.98rem;border-radius:var(--radius)}
.primary-nav a:hover,.primary-nav .current-menu-item>a,.primary-nav .current_page_item>a{color:var(--c-primary-dark);background:color-mix(in srgb,var(--c-primary) 10%,transparent)}
.primary-nav .menu-cta>a{background:var(--c-primary);color:#fff;margin-left:6px}
.primary-nav .menu-cta>a:hover{background:var(--c-primary-dark);color:#fff}
@media (max-width:860px){
  .nav-toggle-label{display:block}
  .primary-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--c-line);padding:8px var(--pad) 16px;box-shadow:0 8px 16px rgba(0,0,0,.06)}
  .nav-toggle:checked~.primary-nav{display:block}
  .primary-nav ul{flex-direction:column;align-items:stretch}
  .primary-nav .menu-cta>a{margin:6px 0 0;text-align:center}
  .site-brand img{height:50px}
  body.brand-orangefarm .site-brand img{height:56px}
}
@media (max-width:782px){.admin-bar .site-header{top:46px}}
@media (max-width:600px){.admin-bar .site-header{top:0}}

/* Content */
.site-main{min-height:50vh}
.entry-content>*{max-width:var(--wrap);margin-left:auto;margin-right:auto;padding-left:var(--pad);padding-right:var(--pad)}
.entry-content>.alignfull{max-width:none;padding-left:0;padding-right:0}
.entry-content>p,.entry-content>ul,.entry-content>h2,.entry-content>h3{max-width:820px}
.entry-content>*:first-child{margin-top:0}
.entry-content>*:last-child{margin-bottom:0}
.entry-content>.wp-block-group,.entry-content>.wp-block-cover{margin-top:0;margin-bottom:0}
.page-header{background:var(--c-dark);color:#fff;padding:56px var(--pad) 48px;text-align:center}
.page-header h1{color:#fff;margin:0}

.section{padding:clamp(48px,7vw,88px) var(--pad)!important}
.section>*{max-width:var(--wrap);margin-left:auto!important;margin-right:auto!important}
.section.is-narrow>*{max-width:820px}
.section-alt{background:var(--c-surface)}
.section-dark{background:var(--c-dark);color:#efe9e2}
.section-dark h2,.section-dark h3{color:#fff}
.section-dark a{color:#fff}
.section-brand{background:var(--c-primary-dark);color:#fff}
.section-brand h2,.section-brand h3{color:#fff}
.eyebrow{font-size:.82rem!important;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--c-primary)!important;margin-bottom:.4em!important}
.section-dark .eyebrow,.wp-block-cover .eyebrow{color:color-mix(in srgb,var(--c-primary) 55%,#fff)!important}
.lead{font-size:1.2rem;color:var(--c-muted)}

/* Hero cover */
.wp-block-cover.hero{min-height:min(82vh,720px)!important;padding:var(--pad)}
.wp-block-cover.hero .wp-block-cover__inner-container{max-width:var(--wrap);width:100%;margin:0 auto}
.wp-block-cover.hero h1{color:#fff;max-width:780px;text-shadow:0 2px 18px rgba(0,0,0,.35)}
.wp-block-cover.hero p{font-size:1.2rem;max-width:620px;color:#f3efe9}
.wp-block-cover.banner{min-height:360px!important;padding:var(--pad)}
.wp-block-cover.banner .wp-block-cover__inner-container{max-width:var(--wrap);width:100%;margin:0 auto}
.wp-block-cover.banner h1,.wp-block-cover.banner h2{color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.35)}
.wp-block-cover.banner p{color:#f3efe9;font-size:1.15rem;max-width:640px}

/* Buttons */
.wp-block-buttons{gap:12px}
.wp-block-button__link{background:var(--c-primary);color:#fff;border-radius:var(--radius);padding:.8em 1.5em;font-weight:700;text-decoration:none;transition:background .15s}
.wp-block-button__link:hover{background:var(--c-primary-dark);color:#fff}
.wp-block-button.is-style-outline .wp-block-button__link{background:transparent;border:2px solid currentColor;color:var(--c-primary-dark)}
.wp-block-button.is-style-outline .wp-block-button__link:hover{background:color-mix(in srgb,var(--c-primary) 10%,transparent)}
.section-dark .is-style-outline .wp-block-button__link,.section-brand .is-style-outline .wp-block-button__link,.wp-block-cover .is-style-outline .wp-block-button__link{color:#fff}
.section-dark .is-style-outline .wp-block-button__link:hover,.wp-block-cover .is-style-outline .wp-block-button__link:hover{background:rgba(255,255,255,.12)}

/* Stats */
.stats{gap:0!important;margin-bottom:0!important}
.stats .wp-block-column{text-align:center;padding:28px 12px;border-right:1px solid rgba(255,255,255,.18)}
.stats .wp-block-column:last-child{border-right:0}
.stats .stat-num{font-family:var(--f-head);font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:700;color:#fff;margin:0;line-height:1.1}
.stats .stat-label{margin:.3em 0 0;color:rgba(255,255,255,.85);font-size:.95rem}
@media (max-width:781px){.stats .wp-block-column{border-right:0;border-bottom:1px solid rgba(255,255,255,.18)}.stats .wp-block-column:last-child{border-bottom:0}}

/* Cards */
.cards{gap:24px!important}
.card{background:var(--c-surface);border:1px solid var(--c-line);border-radius:10px;padding:28px!important;box-shadow:0 1px 2px rgba(0,0,0,.04);overflow:hidden}
.section-alt .card{background:var(--c-bg)}
.card h3{margin-top:0}
.card>.wp-block-image:first-child{margin:-28px -28px 20px}
.card>.wp-block-image:first-child img{aspect-ratio:3/2;object-fit:cover;width:100%}
.card-accent{border-top:4px solid var(--c-primary)}
.card p:last-child{margin-bottom:0}

/* Images */
.wp-block-image.rounded img{border-radius:10px}
.wp-block-image figcaption{font-size:.88rem;color:var(--c-muted);text-align:left;margin-top:.5em}
.section-dark .wp-block-image figcaption{color:#b9ada1}
.media-split img{border-radius:10px;aspect-ratio:4/3;object-fit:cover;width:100%}
.wp-block-columns{gap:clamp(24px,4vw,48px)}

/* Quote */
.wp-block-quote.pull{border-left:4px solid var(--c-primary);margin:0;padding:6px 0 6px 24px;font-family:var(--f-head);font-size:1.35rem;line-height:1.45;color:var(--c-dark)}
.wp-block-quote.pull p{text-transform:none}
.section-dark .wp-block-quote.pull{color:#fff}
.wp-block-quote.pull cite{display:block;margin-top:.6em;font-family:var(--f-body);font-size:.95rem;font-style:normal;color:var(--c-muted);text-transform:none}

/* Lists */
.ticks{list-style:none;padding-left:0!important}
.ticks li{position:relative;padding-left:30px;margin:.5em 0}
.ticks li::before{content:'';position:absolute;left:2px;top:.45em;width:14px;height:8px;border-left:3px solid var(--c-primary);border-bottom:3px solid var(--c-primary);transform:rotate(-45deg)}
.section-dark .ticks li::before{border-color:color-mix(in srgb,var(--c-primary) 60%,#fff)}

/* Gallery */
.wp-block-gallery.gallery-crop img{aspect-ratio:4/3;object-fit:cover;border-radius:8px}

/* Contact */
.contact-list{list-style:none;padding:0!important}
.contact-list li{padding:12px 0;border-bottom:1px solid var(--c-line)}
.contact-list strong{display:inline-block;min-width:110px;color:var(--c-dark)}
.map-embed iframe{width:100%;min-height:340px;border:0;border-radius:10px}

/* Footer */
.site-footer{background:var(--c-dark);color:#cfc6bc;font-size:.95rem}
.footer-inner{max-width:var(--wrap);margin:0 auto;padding:56px var(--pad) 32px;display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px}
.site-footer h4{color:#fff;font-size:1rem;margin-bottom:.8em}
.site-footer a{color:#fff;text-decoration:none}
.site-footer a:hover{text-decoration:underline}
.site-footer ul{list-style:none;margin:0;padding:0}
.site-footer li{margin:.35em 0}
.footer-logo{background:#fff;display:inline-block;padding:10px 14px;border-radius:8px;margin-bottom:14px}
.footer-logo img{height:54px;width:auto}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);max-width:var(--wrap);margin:0 auto;padding:18px var(--pad);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.85rem;color:#a89d92}
.sister{display:flex;align-items:center;gap:12px}
.sister img{height:52px;width:auto;background:#fff;border-radius:6px;padding:4px 6px}
@media (max-width:860px){.footer-inner{grid-template-columns:1fr;gap:28px}}

/* Generic pages / posts */
.page-body{padding:48px 0 72px}
.post-list{max-width:820px;margin:0 auto;padding:48px var(--pad)}
.post-list article{border-bottom:1px solid var(--c-line);padding:24px 0}

/* tweaks */
.section-dark .wp-block-quote.pull cite{color:#b9ada1}
.wp-block-cover .eyebrow{color:rgba(255,255,255,.9)!important;text-shadow:0 1px 8px rgba(0,0,0,.4)}
.wp-block-cover.hero::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.35),rgba(0,0,0,0) 70%);pointer-events:none;z-index:1}
.wp-block-cover.hero .wp-block-cover__inner-container{z-index:2}
.section-brand .eyebrow{color:rgba(255,255,255,.8)!important}
.section-brand p{color:rgba(255,255,255,.92)}
