/*
Theme Name: Gyidiman Modern
Theme URI: https://gyidimanfarms.com/
Author: Gyidiman Farms
Description: A modern editorial WordPress theme for Gyidiman Farms.
Version: 1.1.2
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: gyidiman-modern
*/

:root{--forest:#163d2c;--forest-deep:#102c21;--leaf:#628163;--cream:#f5f3ea;--paper:#fffdf7;--orange:#d4894f;--ink:#1f2921;--muted:#68766b;--line:#dce2d7;--radius:24px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.container{width:min(100% - 48px,1240px);margin-inline:auto}.eyebrow{font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;font-weight:800;color:var(--leaf)}.eyebrow.light{color:#c7dfbe}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em;line-height:1.08}h1{font-size:clamp(3.7rem,7vw,7.2rem)}h2{font-size:clamp(2.65rem,4.7vw,5rem)}h3{font-size:clamp(1.6rem,2vw,2.25rem)}p{color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:56px;padding:0 25px;border-radius:100px;border:1px solid transparent;font-size:.84rem;font-weight:800;letter-spacing:.04em;transition:transform .25s,background .25s,color .25s}.btn:hover{transform:translateY(-3px)}.btn svg{width:17px;height:17px}.btn-primary{background:var(--orange);color:#172e22}.btn-primary:hover{background:#e9aa73}.btn-outline{border-color:#aab9a8;color:var(--forest)}.btn-outline:hover{background:#e6ede3}.text-link{display:inline-flex;align-items:center;gap:15px;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:var(--forest);border-bottom:1px solid var(--orange);padding-bottom:8px}.text-link:hover{gap:20px}.site-header{height:90px;background:var(--paper);position:relative;z-index:100;border-bottom:1px solid rgba(22,61,44,.08)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:12px;line-height:1}.brand-mark{display:block;width:44px;height:44px;flex:none}.brand-name{display:flex;flex-direction:column;color:var(--forest);font-family:Georgia,'Times New Roman',serif;font-size:1.52rem;font-weight:bold;letter-spacing:-.05em}.brand-name small{font-family:Arial,Helvetica,sans-serif;font-size:.55rem;font-weight:800;letter-spacing:.33em;text-transform:uppercase;margin-top:5px}.nav-list{display:flex;align-items:center;gap:32px;list-style:none;padding:0;margin:0}.nav-list a{font-size:.82rem;font-weight:700;color:#314d3b;transition:color .2s}.nav-list a:hover,.nav-list .current-menu-item>a{color:var(--orange)}.nav-list .menu-item-has-children{position:relative}.nav-list .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:220px;background:var(--paper);list-style:none;padding:14px;border:1px solid var(--line);box-shadow:0 16px 30px rgba(12,44,27,.12);border-radius:12px}.nav-list .menu-item-has-children:hover>.sub-menu,.nav-list .menu-item-has-children:focus-within>.sub-menu{display:block}.nav-list .sub-menu a{display:block;padding:8px}.header-cta{min-height:43px;padding:0 18px;background:var(--forest);color:#fff;white-space:nowrap}.header-cta:hover{background:#23553e}.menu-toggle{display:none;background:none;border:0;padding:8px;color:var(--forest)}.menu-toggle span{display:block;width:25px;height:2px;background:currentColor;margin:5px 0}.hero{background:var(--forest-deep);color:#fff;min-height:690px;position:relative;overflow:hidden}.hero::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,42,29,.97) 0%,rgba(12,42,29,.87) 38%,rgba(12,42,29,.22) 68%,rgba(12,42,29,.08) 100%);z-index:1}.hero-image{position:absolute;inset:0;background:center/cover no-repeat}.hero-content{position:relative;z-index:2;min-height:690px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-block:85px}.hero h1{max-width:800px;margin:20px 0 24px}.hero h1 em{font-style:italic;color:#e8aa73}.hero p{max-width:490px;color:#e1e9db;font-size:1.08rem;line-height:1.8;margin-bottom:33px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-actions .btn-outline{color:#fff;border-color:rgba(255,255,255,.55)}.hero-actions .btn-outline:hover{background:#ffffff20}.hero-bottom{position:absolute;z-index:2;bottom:0;width:100%;border-top:1px solid rgba(255,255,255,.2)}.hero-bottom-inner{display:flex;align-items:center;justify-content:space-between;min-height:60px;color:#c4d6c9;font-size:.72rem;letter-spacing:.15em;text-transform:uppercase}.hero-bottom-inner span:last-child{display:flex;align-items:center;gap:12px}.hero-bottom-inner span:last-child:before{content:'';height:1px;width:45px;background:var(--orange)}.intro{padding:112px 0 120px;background:var(--paper)}.intro-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:8%;align-items:center}.intro-media{position:relative;padding-right:48px;padding-bottom:47px}.intro-media img{width:100%;height:560px;object-fit:cover;border-radius:220px 220px 20px 20px;display:block}.intro-tag{position:absolute;right:0;bottom:0;width:188px;height:188px;background:var(--orange);border:8px solid var(--paper);border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;color:#183a2a;font-family:Georgia,'Times New Roman',serif;font-size:1.5rem;line-height:1.15}.intro-copy h2{margin:18px 0 25px;color:var(--forest)}.intro-copy p{max-width:550px;font-size:1rem;line-height:1.9}.intro-points{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:33px 0 36px}.intro-point{border-top:1px solid var(--line);padding-top:19px}.intro-point strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:1.2rem;color:var(--forest);margin-bottom:6px}.intro-point span{font-size:.84rem;color:var(--muted)}.numbers{background:#e9ede1;padding:37px 0}.number-grid{display:grid;grid-template-columns:repeat(3,1fr)}.number{padding:12px 38px;border-right:1px solid #c7d2c2}.number:first-child{padding-left:0}.number:last-child{border-right:0}.number strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.1rem,3.3vw,3.4rem);line-height:1.1;color:var(--forest);font-weight:400}.number span{font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:#5c705d;font-weight:800}.services{padding:120px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:42px}.section-head h2{max-width:700px;color:var(--forest);margin:15px 0 0}.section-head p{max-width:340px;margin:0 0 6px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{background:var(--paper);border:1px solid #e6e9e0;border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s}.service-card:hover{transform:translateY(-7px);box-shadow:0 24px 45px rgba(19,54,36,.1)}.service-card img{width:100%;height:275px;object-fit:cover;display:block}.service-body{padding:30px 30px 34px;flex:1;display:flex;flex-direction:column}.service-index{color:var(--orange);font-size:.75rem;font-weight:800;letter-spacing:.18em}.service-body h3{color:var(--forest);margin:13px 0}.service-body p{font-size:.91rem;line-height:1.75;flex:1}.service-body .text-link{align-self:flex-start;margin-top:13px}.story{background:var(--forest);color:#fff;overflow:hidden}.story-grid{display:grid;grid-template-columns:1fr 1fr;min-height:660px}.story-copy{padding:100px clamp(40px,6vw,100px) 100px max(24px,calc((100vw - 1240px)/2));align-self:center}.story-copy h2{margin:22px 0;color:#fff}.story-copy p{color:#d1e0d0;max-width:530px;line-height:1.9}.story-copy .btn{margin-top:20px}.story-photo{position:relative}.story-photo img{position:absolute;width:100%;height:100%;object-fit:cover}.story-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,61,44,.15),transparent)}.quote-mark{font-family:Georgia,serif;font-size:6rem;line-height:1;color:var(--orange);height:65px}.commitment{padding:120px 0;background:var(--paper)}.commitment-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;align-items:center}.commitment h2{color:var(--forest);margin:18px 0 25px}.commitment p{line-height:1.9}.commitment-list{display:grid;gap:15px}.commitment-item{display:flex;gap:24px;border-bottom:1px solid var(--line);padding:23px 0}.commitment-item:first-child{border-top:1px solid var(--line)}.commitment-item b{color:var(--orange);font-size:.8rem;letter-spacing:.12em}.commitment-item h3{font-size:1.45rem;margin:0 0 8px;color:var(--forest)}.commitment-item p{margin:0;font-size:.88rem}.contact-band{background:#dbe5d3;padding:75px 0}.contact-band-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.contact-band h2{font-size:clamp(2.4rem,4vw,4rem);color:var(--forest);margin:10px 0 0}.site-footer{background:var(--forest-deep);color:#fff;padding:76px 0 25px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:8%;padding-bottom:70px}.footer-brand .brand-name{color:#fff}.footer-brand p{max-width:330px;color:#b8cbbc;margin:25px 0 0;font-size:.93rem}.footer-title{font-size:.73rem;letter-spacing:.18em;text-transform:uppercase;color:#b7d1b7;font-weight:800;margin:6px 0 24px}.footer-links{list-style:none;margin:0;padding:0}.footer-links li{margin-bottom:12px}.footer-links a,.footer-contact a,.footer-contact span{color:#e2e9df;font-size:.92rem}.footer-links a:hover,.footer-contact a:hover{color:var(--orange)}.footer-contact{display:grid;gap:12px}.footer-bottom{border-top:1px solid rgba(255,255,255,.16);padding-top:24px;display:flex;justify-content:space-between;gap:20px;color:#a8b9ab;font-size:.78rem}.page-hero{background:var(--forest);color:#fff;padding:95px 0 85px}.page-hero h1{font-size:clamp(3.2rem,6vw,6rem);margin:16px 0 0;max-width:900px}.page-hero p{color:#d4e2d4;max-width:640px;font-size:1.08rem;margin:20px 0 0}.page-content{padding:80px 0 120px;min-height:300px}.entry-content{background:var(--paper);padding:clamp(22px,5vw,70px);border-radius:22px}.entry-content h2,.entry-content h3{color:var(--forest);margin-top:1.2em}.entry-content p,.entry-content li{line-height:1.85}.entry-content img{border-radius:12px}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.post-card{background:#fff;border-radius:20px;overflow:hidden}.post-card img{width:100%;height:230px;object-fit:cover}.post-card-body{padding:25px}.post-card h2{font-size:1.5rem;color:var(--forest)}.post-card time{font-size:.75rem;letter-spacing:.1em;color:var(--leaf)}.pagination{margin-top:35px}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1050px){.nav-list{gap:17px}.header-cta{display:none}.intro-grid{gap:5%}.intro-media img{height:480px}.story-grid{min-height:570px}.story-copy{padding:60px 35px}}
@media(max-width:800px){.site-header{height:74px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--paper);padding:15px 24px 28px;box-shadow:0 16px 20px #102c211c}.site-nav.is-open{display:block}.nav-list{display:block}.nav-list>li{border-bottom:1px solid var(--line)}.nav-list>li>a{display:block;padding:12px 0}.nav-list .sub-menu{display:block;position:static;box-shadow:none;border:0;padding:0 0 10px 16px}.hero,.hero-content{min-height:660px}.hero::before{background:linear-gradient(90deg,rgba(12,42,29,.92),rgba(12,42,29,.45))}.intro-grid,.commitment-grid{grid-template-columns:1fr}.intro-media{max-width:600px}.intro-copy{padding-top:25px}.service-grid,.post-grid{grid-template-columns:repeat(2,1fr)}.story-grid{grid-template-columns:1fr}.story-copy{padding:75px 24px}.story-photo{min-height:410px}.story-photo img{position:relative;height:410px}.footer-grid{grid-template-columns:1.3fr 1fr;gap:40px}}
@media(max-width:600px){.container{width:min(100% - 36px,1240px)}.brand-name{font-size:1.27rem}.brand-mark{width:38px;height:38px}.hero,.hero-content{min-height:670px}.hero-content{padding-bottom:110px}.hero h1{font-size:clamp(3.35rem,14vw,5rem)}.hero p{font-size:.99rem}.hero-bottom-inner span:last-child{display:none}.intro,.services,.commitment{padding:78px 0}.intro-media{padding-right:25px;padding-bottom:26px}.intro-media img{height:370px}.intro-tag{width:135px;height:135px;font-size:1.12rem;border-width:6px}.intro-points,.number-grid,.service-grid,.post-grid{grid-template-columns:1fr}.number{padding:20px 0;border-right:0;border-bottom:1px solid #c7d2c2}.number:last-child{border-bottom:0}.section-head,.contact-band-inner{display:block}.section-head p{margin-top:18px}.service-card img{height:240px}.contact-band .btn{margin-top:25px}.footer-grid{grid-template-columns:1fr;gap:35px;padding-bottom:45px}.footer-bottom{display:block}.page-content{padding:40px 0 80px}.page-hero{padding:75px 0}.entry-content{padding:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
.feature-section{padding:110px 0;background:var(--paper)}.feature-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:9%}.feature-image img{display:block;width:100%;height:560px;object-fit:cover;border-radius:24px}.feature-grid h2,.values-section h2,.contact-page h2{color:var(--forest);margin:17px 0 25px}.feature-grid p,.contact-page p{line-height:1.9}.values-section{padding:110px 0}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:42px}.values-grid article{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:34px}.values-grid span{font-size:.72rem;font-weight:800;letter-spacing:.15em;color:var(--orange);text-transform:uppercase}.values-grid h3{color:var(--forest);margin:18px 0}.values-grid p{font-size:.91rem;line-height:1.8;margin:0}.contact-page{padding:120px 0;background:var(--paper)}.contact-page-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%}.contact-details{border-top:1px solid var(--line)}.contact-details>div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:25px 0;border-bottom:1px solid var(--line)}.contact-details span{font-size:.73rem;text-transform:uppercase;font-weight:800;letter-spacing:.14em;color:var(--leaf)}.contact-details a,.contact-details strong{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.25rem,2vw,2rem);font-weight:400;color:var(--forest);overflow-wrap:anywhere}.contact-details a:hover{color:var(--orange)}.contact-photo img{display:block;width:100%;height:430px;object-fit:cover}
@media(max-width:800px){.feature-grid,.contact-page-grid{grid-template-columns:1fr;gap:40px}.feature-image img{height:450px}.values-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.feature-section,.values-section,.contact-page{padding:75px 0}.feature-image img{height:330px}.values-grid{grid-template-columns:1fr}.contact-details>div{grid-template-columns:1fr;gap:7px}.contact-photo img{height:240px}}
.service-detail-list{border-top:1px solid var(--line);margin-top:26px}.service-detail-list>div{padding:18px 0;border-bottom:1px solid var(--line)}.service-detail-list h3{font-size:1.35rem;color:var(--forest);margin:0 0 6px}.service-detail-list p{font-size:.91rem;margin:0;line-height:1.75}
.woocommerce #primary{width:min(100% - 48px,1240px);margin:0 auto;padding:75px 0 115px}.woocommerce #sidebar{display:none}.woocommerce .woocommerce-breadcrumb{font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:var(--leaf);margin:0 0 20px}.woocommerce .woocommerce-breadcrumb a{color:var(--leaf)}.woocommerce .woocommerce-products-header__title{color:var(--forest);font-size:clamp(3rem,5vw,5.5rem);margin:0 0 32px}.woocommerce .woocommerce-result-count{font-size:.88rem;color:var(--muted);margin:0 0 25px}.woocommerce .woocommerce-ordering select{background:var(--paper);border:1px solid var(--line);border-radius:10px;color:var(--forest);padding:10px 15px}.woocommerce ul.products{clear:both;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0;margin:38px 0 45px}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:18px 18px 22px;overflow:hidden;text-align:center}.woocommerce ul.products li.product img{height:245px;object-fit:contain;margin:0 0 20px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:Georgia,'Times New Roman',serif;font-size:1.5rem;color:var(--forest);padding:0 0 8px}.woocommerce ul.products li.product .price{color:var(--forest);font-size:1.05rem;font-weight:700}.woocommerce ul.products li.product .button,.woocommerce div.product .button,.woocommerce a.button{background:var(--forest);color:#fff;border-radius:100px;padding:13px 23px;font-size:.8rem;font-weight:700}.woocommerce ul.products li.product .button:hover,.woocommerce div.product .button:hover,.woocommerce a.button:hover{background:#24583e;color:#fff}.woocommerce span.onsale{background:var(--orange);color:var(--forest-deep);font-size:.7rem}.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:8px}.woocommerce nav.woocommerce-pagination ul li{border:0}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{border-radius:50%;background:var(--paper);color:var(--forest);width:40px;height:40px;line-height:40px;padding:0}.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--forest);color:#fff}.woocommerce div.product .product_title{color:var(--forest)}.woocommerce div.product p.price{color:var(--forest)}.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--forest);color:#fff}
@media(max-width:800px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.woocommerce #primary{width:min(100% - 36px,1240px);padding:55px 0 80px}.woocommerce ul.products{grid-template-columns:1fr}.woocommerce .woocommerce-ordering{float:none}.woocommerce ul.products li.product img{height:220px}}
.brand-logo{display:block;width:170px;height:auto;flex:none}.footer-brand .brand{display:inline-flex;background:var(--paper);padding:12px 16px;border-radius:12px}.footer-brand .brand-logo{width:185px}.hero-media{position:absolute;inset:0;background:center/cover no-repeat;overflow:hidden}.hero-video{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.08)}
@media(max-width:600px){.brand-logo{width:145px}.footer-brand .brand-logo{width:170px}}
.team-founder{background:var(--paper)}.team-founder .feature-grid{direction:rtl}.team-founder .feature-grid>*{direction:ltr}.team-founder .opanin-portrait img{object-position:center 30%}.gallery-section{padding:96px 0 112px}.gallery-intro{max-width:650px;margin-bottom:38px}.farm-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.farm-gallery-item{position:relative;margin:0;overflow:hidden;border-radius:18px;background:var(--forest-deep);aspect-ratio:4/3}.farm-gallery-item:first-child,.farm-gallery-item:nth-child(5){grid-column:span 2;aspect-ratio:2/1}.farm-gallery-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s}.farm-gallery-item:hover img{transform:scale(1.045)}.farm-gallery-item:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(13,32,22,.68));pointer-events:none}.farm-gallery-item figcaption{position:absolute;z-index:1;left:25px;bottom:20px;color:#fff;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}@media(max-width:800px){.farm-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.farm-gallery-item:first-child,.farm-gallery-item:nth-child(5){grid-column:span 2}.gallery-section{padding:72px 0 88px}}@media(max-width:560px){.farm-gallery{grid-template-columns:1fr}.farm-gallery-item,.farm-gallery-item:first-child,.farm-gallery-item:nth-child(5){grid-column:auto;aspect-ratio:4/3}.team-founder .feature-grid{direction:ltr}}
@media(prefers-reduced-motion:reduce){.hero-video{display:none}}
.opanin-portrait{margin:0}.opanin-portrait img{object-position:50% 35%}.opanin-portrait figcaption{margin-top:15px;color:var(--forest);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}

/* Editorial and accessibility refinements. */
:root{--leaf:#426547;--accent-text:#914719;--muted:#56675b}
body{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
h1,h2,h3{letter-spacing:-.035em}
p{max-width:68ch}
.page-hero{padding:64px 0 62px;background:radial-gradient(circle at 88% 20%,#28543b 0,transparent 38%),var(--forest)}
.page-hero h1{font-size:clamp(3rem,5vw,5.3rem);line-height:1.04;max-width:820px}
.page-hero p{font-size:1.02rem;line-height:1.7;max-width:690px}
.intro,.services,.commitment,.feature-section,.values-section,.contact-page{padding-top:90px;padding-bottom:95px}
.section-head h2,.feature-grid h2,.values-section h2,.contact-page h2{line-height:1.12}
.section-head p{max-width:380px}
.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.service-card img{height:295px}
.service-body{padding:30px 34px 32px}
.service-index,.values-grid span,.commitment-item b{color:var(--accent-text)}
.service-body .text-link{white-space:nowrap;letter-spacing:.035em}
.text-link svg{width:17px;height:17px;flex:none}
.service-detail-intro{margin-bottom:22px;color:#405547;font-size:1.02rem}
.feature-image img{height:500px}
.team-roles{background:#edf1e8}
.team-founder{background:var(--paper)}
.gallery-intro p{margin:0;color:var(--muted)}
.contact-band p{margin:12px 0 0;color:#405647;line-height:1.65}
.contact-details small{grid-column:2;color:var(--muted);font-size:.85rem;margin-top:-13px}
.news-empty{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:clamp(30px,5vw,70px);max-width:900px}
.news-empty h2{font-size:clamp(2.4rem,4vw,4rem);color:var(--forest);margin:12px 0 18px}
.news-empty p{font-size:1.02rem;line-height:1.75}
.news-empty-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px}
.nav-list a:hover,.nav-list .current-menu-item>a,.footer-links a:hover,.footer-contact a:hover{color:#a95724}
.site-footer .footer-brand .brand{padding:9px 11px;border-radius:10px}
.site-footer .footer-brand .brand-logo{width:150px}
.footer-brand p{margin-top:20px}
.menu-toggle span{transition:transform .2s,opacity .2s}
.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-7px) rotate(-45deg)}
.btn:focus-visible,.text-link:focus-visible,.nav-list a:focus-visible{outline-color:#a95724}
@media(max-width:800px){
  .site-nav.is-open{max-height:calc(100dvh - 74px);overflow-y:auto;overscroll-behavior:contain}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-card img{height:220px}
  .service-body{padding:25px}
  .feature-image img{height:430px}
}
@media(max-width:600px){
  .page-hero{padding:52px 0 54px}
  .page-hero h1{font-size:clamp(2.75rem,10vw,4rem)}
  .page-hero p{font-size:.97rem;margin-top:18px}
  .intro,.services,.commitment,.feature-section,.values-section,.contact-page{padding-top:68px;padding-bottom:72px}
  .service-grid{grid-template-columns:1fr}
  .service-card img{height:235px}
  .service-body .text-link{white-space:normal}
  .contact-details small{grid-column:1;margin-top:0}
  .news-empty-actions{align-items:flex-start;flex-direction:column}
  .site-footer .footer-brand .brand-logo{width:145px}
  .feature-image img{height:330px}
}

/* Clear, easy-to-scan navigation for the service pages. */
@media (min-width:801px){
  .nav-list>li{display:flex;align-items:center;height:90px}
  .nav-list>li>a{display:inline-flex;align-items:center;height:100%}
  .nav-list>.menu-item-has-children>a::after{content:"";width:6px;height:6px;margin:-3px 0 0 9px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .2s}
  .nav-list>.menu-item-has-children:hover>a::after,.nav-list>.menu-item-has-children:focus-within>a::after{transform:translateY(3px) rotate(225deg)}
  .nav-list .sub-menu{display:block;visibility:hidden;opacity:0;pointer-events:none;top:calc(100% - 1px);left:50%;width:340px;min-width:0;padding:10px;transform:translate(-50%,8px);border-top:3px solid var(--forest);border-radius:0 0 16px 16px;box-shadow:0 22px 40px rgba(12,44,27,.16);transition:opacity .18s,transform .18s,visibility .18s}
  .nav-list .menu-item-has-children:hover>.sub-menu,.nav-list .menu-item-has-children:focus-within>.sub-menu{visibility:visible;opacity:1;pointer-events:auto;transform:translate(-50%,0)}
  .nav-list .sub-menu li+li{border-top:1px solid var(--line)}
  .nav-list .sub-menu a{display:flex;align-items:center;gap:12px;padding:14px 13px;border-radius:8px;color:var(--forest);font-size:.86rem;line-height:1.3;white-space:nowrap}
  .nav-list .sub-menu a::after{content:"↗";margin-left:auto;color:var(--leaf);font-size:1rem}
  .nav-list .sub-menu a:hover,.nav-list .sub-menu a:focus-visible{background:#edf3e9;color:var(--forest)}
}
@media (max-width:800px){
  .nav-list .sub-menu{display:grid;gap:0;position:static;width:auto;min-width:0;margin:0 0 14px 12px;padding:5px 8px;transform:none;background:#edf3e9;border:0;border-left:2px solid var(--leaf);border-radius:0 10px 10px 0;box-shadow:none}
  .nav-list .sub-menu li+li{border-top:1px solid #d9e3d5}
  .nav-list .sub-menu a{display:block;padding:11px 12px;color:var(--forest);line-height:1.4}
  .nav-list .sub-menu a:hover,.nav-list .sub-menu a:focus-visible{background:#dce9d7;border-radius:6px}
}
