/*
Theme Name: R2Fix Research Support
Theme URI: https://r2fix.com/
Author: R2Fix
Description: Sample-led, responsive academic research-support theme with city/service directories, blog layouts and SEO metadata.
Version: 4.1.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: r2fix
*/
:root{--forest:#092f22;--forest-2:#123d2d;--forest-3:#194a37;--gold:#b58a46;--gold-2:#c9a15c;--gold-pale:#ead9b8;--cream:#f8f5ed;--cream-2:#f1eadc;--paper:#fffdf8;--white:#fff;--ink:#152720;--muted:#59655e;--line:#e5dece;--soft:#f2eee5;--radius:10px;--shadow:0 10px 28px rgba(9,47,34,.08);--max:1320px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}img{display:block;max-width:100%;height:auto}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,h4{font-family:Georgia,'Times New Roman',serif;color:var(--forest);font-weight:700;line-height:1.14;letter-spacing:-.035em;margin:.2em 0 .5em}h1{font-size:clamp(2.2rem,4vw,3.45rem)}h2{font-size:clamp(1.65rem,2.7vw,2.45rem)}h3{font-size:1.1rem;letter-spacing:-.015em}p{margin:.65em 0 1em}ul,ol{padding-left:1.35rem}li{margin:.28em 0}.container{width:min(var(--max),calc(100% - 52px));margin-inline:auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.screen-reader-text:focus{clip:auto!important;width:auto;height:auto;padding:12px;background:#fff;z-index:999}
/* Header: slim green utility bar + calm white navigation, as in the supplied samples */
.topbar{background:var(--forest);color:#f9f5e9;font-size:.7rem}.topbar-inner{min-height:29px;display:flex;align-items:center;justify-content:space-between;gap:14px}.topbar-inner>div{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.topbar a{color:#f9f5e9}.site-header{position:sticky;top:0;z-index:80;background:rgba(255,253,248,.97);border-bottom:1px solid var(--line);box-shadow:0 3px 12px rgba(9,47,34,.035);backdrop-filter:blur(12px)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:69px}.brand{display:inline-flex;align-items:baseline;gap:0;flex-shrink:0;font-family:Georgia,'Times New Roman',serif;font-weight:800;font-size:1.75rem;letter-spacing:-.075em;color:var(--forest);white-space:nowrap;line-height:1}.brand span{color:var(--gold);margin:0 1px}.brand small{display:block;font:700 .42rem/1.6 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-left:2px}.main-nav{display:flex;align-items:center;justify-content:center;gap:clamp(11px,1.7vw,25px);flex:1}.main-nav>a,.nav-dropdown-toggle{font-size:.78rem;font-weight:650;color:var(--ink);white-space:nowrap}.nav-dropdown{position:relative}.nav-dropdown-toggle{background:transparent;border:0;padding:26px 0;display:flex;align-items:center;gap:6px}.nav-dropdown-toggle span{color:var(--gold);font-size:1rem}.nav-dropdown-panel{display:none;position:absolute;top:100%;left:50%;transform:translateX(-50%);width:min(920px,94vw);grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--gold);padding:22px;box-shadow:0 20px 44px rgba(9,47,34,.16);border-radius:0 0 10px 10px;max-height:75vh;overflow:auto}.nav-dropdown:hover .nav-dropdown-panel,.nav-dropdown:focus-within .nav-dropdown-panel,.nav-dropdown.is-open .nav-dropdown-panel{display:grid}.nav-dropdown-panel strong{display:block;font-size:.72rem;color:var(--forest);margin-bottom:7px;padding-bottom:8px;border-bottom:1px solid var(--line)}.nav-dropdown-panel a{display:block;font-size:.81rem;line-height:1.35;padding:6px 0;color:#44554b;white-space:normal}.menu-toggle{display:none;background:var(--paper);color:var(--forest);border:1px solid var(--line);border-radius:5px;width:40px;height:40px;font-size:1.05rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:11px 17px;border:1px solid var(--gold);border-radius:5px;background:var(--gold);color:#fffdf8;font-size:.8rem;font-weight:750;line-height:1.25;transition:transform .18s,background .18s,border-color .18s}.btn:hover{transform:translateY(-1px);background:#9e7333;border-color:#9e7333;color:#fff;text-decoration:none}.btn-outline{background:transparent;color:var(--forest);border-color:var(--forest)}.btn-outline:hover{background:var(--forest);border-color:var(--forest);color:#fff}.header-cta{font-size:.74rem;padding:10px 13px;white-space:nowrap}
/* Main page hero */
.hero{padding:0;background:linear-gradient(100deg,var(--cream) 0%,var(--paper) 48%,#e8dfcb 100%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(25px,4vw,58px);align-items:center;padding-top:30px;padding-bottom:30px}.hero-copy{padding:12px 0}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#9a702d;font-size:.68rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.eyebrow:before{content:"";display:inline-block;width:19px;height:2px;background:var(--gold)}.hero h1{max-width:690px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.45rem,4.2vw,3.7rem);line-height:1.03;letter-spacing:-.045em;margin:14px 0 13px;text-transform:none;text-wrap:balance}.hero h1 em{font-style:normal;color:var(--gold)}.hero-lead{max-width:600px;font-size:.98rem;color:#45534a;line-height:1.7}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin:19px 0}.hero-proof{display:flex;flex-wrap:wrap;gap:9px 16px;margin-top:18px;font-size:.75rem;color:#4b5b50}.hero-proof b{color:var(--gold);margin-right:5px}.hero-visual{position:relative;align-self:stretch;min-height:345px;border-radius:0 0 0 75px;overflow:hidden;background:var(--cream-2)}.hero-visual img{width:100%;height:100%;min-height:345px;max-height:435px;object-fit:cover}.image-caption{position:absolute;z-index:2;bottom:13px;left:13px;right:13px;background:rgba(255,253,248,.94);padding:10px 12px;display:flex;justify-content:space-between;gap:12px;font-size:.65rem;letter-spacing:.055em;text-transform:uppercase;color:var(--forest)}.hero-ribbon{background:var(--forest);color:#fff;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(0,0,0,.08)}.hero-ribbon .container{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;padding:12px 0;gap:0}.hero-ribbon .container>span{display:flex;align-items:center;justify-content:center;gap:10px;min-height:54px;text-align:center;border-right:1px solid rgba(238,221,181,.32);font-size:.77rem;line-height:1.35}.hero-ribbon .container>span:last-child{border-right:0}.hero-ribbon i{font-style:normal;color:var(--gold-2);font-size:1.35rem}.hero-ribbon b{display:block;color:var(--gold-2);font:700 1.22rem Georgia,serif}.hero-ribbon small{display:block;color:#eee8db;font-size:.7rem}
/* Shared page hero and structured sections */
.landing-hero{background:linear-gradient(102deg,var(--cream) 0%,var(--paper) 45%,#e8dfcc 100%);border-bottom:1px solid var(--line);overflow:hidden}.landing-hero-grid{display:grid;grid-template-columns:1fr 1.03fr;gap:clamp(24px,3.3vw,44px);align-items:center;min-height:330px;padding-top:24px;padding-bottom:24px}.landing-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.25rem,4vw,3.35rem);line-height:1.04;letter-spacing:-.04em;color:var(--forest);margin:11px 0 13px;max-width:690px;text-wrap:balance}.landing-hero p{font-size:.96rem;line-height:1.68;max-width:610px;color:#46544b}.landing-hero-photo{width:100%;height:330px;max-height:370px;object-fit:cover;border-radius:8px;background:var(--cream-2)}.city-hero-photo{height:350px;max-height:380px}.trust-points{display:flex;flex-wrap:wrap;gap:0;margin:16px 0;color:var(--forest);font-size:.75rem}.trust-points span{padding:7px 10px;background:rgba(255,255,255,.72);border-right:1px solid var(--line)}.trust-points span:first-child{border-radius:5px 0 0 5px}.trust-points span:last-child{border:0;border-radius:0 5px 5px 0}.breadcrumb{font-size:.76rem;color:#68736a;margin:0 0 12px}.breadcrumb a{color:#91692c}.sample-page{padding-bottom:30px}.sample-section{padding:30px 0}.section-heading,.section-head{max-width:880px;margin:0 auto 23px;text-align:center}.section-heading h2,.section-head h2,.content-feature h2,.closing-cta h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.6rem,2.7vw,2.35rem);line-height:1.12;letter-spacing:-.03em;color:var(--forest);margin:7px 0 9px}.section-heading p,.section-head p{color:var(--muted);font-size:.91rem;line-height:1.65;margin:0 auto;max-width:760px}.section-head-row{max-width:none;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;text-align:left}.section-head-row p{margin-left:0}.section-head-row .text-link{white-space:nowrap}.section,.section-soft{padding:42px 0}.section-soft{background:var(--cream)}.section-dark,.dark-panel{background:var(--forest);color:#fff}.section-dark{padding:34px 0}.section-dark h2,.dark-panel h2,.dark-panel h3{color:#fff}.section-dark p,.dark-panel p{color:#e7e9e3}.section-dark .eyebrow,.dark-panel .eyebrow{color:var(--gold-pale)}
/* Service grids: controlled columns, equal cards and consistent image ratios */
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.card{background:var(--white);border:1px solid var(--line);border-radius:8px;padding:19px;box-shadow:0 3px 12px rgba(9,47,34,.035);min-width:0}.card:hover{box-shadow:var(--shadow);border-color:#d2bd94}.card h3{color:var(--forest);margin:10px 0 7px}.card p{font-size:.86rem;color:var(--muted);line-height:1.58}.card-number{display:inline-block;color:#9b702c;background:#f7efdf;border:1px solid #efdfc0;padding:4px 7px;border-radius:4px;font-size:.65rem;font-weight:800;letter-spacing:.06em}.service-directory-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;align-items:stretch}.service-directory-card{background:#fff;border:1px solid var(--line);border-radius:7px;overflow:hidden;box-shadow:0 2px 10px rgba(9,47,34,.035);min-width:0;transition:transform .18s,box-shadow .18s;display:flex;flex-direction:column}.service-directory-card:hover{transform:translateY(-2px);box-shadow:0 9px 22px rgba(9,47,34,.1)}.service-directory-card>a{display:flex;flex:1;flex-direction:column;color:inherit;text-decoration:none;min-width:0}.service-directory-card img{width:100%;height:auto;aspect-ratio:1.9/1;object-fit:cover;background:var(--cream-2)}.service-directory-copy{display:flex;flex:1;flex-direction:column;padding:12px}.service-directory-copy h3{font-family:Arial,Helvetica,sans-serif;font-size:.88rem;font-weight:750;line-height:1.35;margin:0 0 6px;color:var(--forest);letter-spacing:-.015em}.service-directory-copy p{font-size:.77rem;line-height:1.45;color:var(--muted);margin:0 0 10px}.service-directory-copy .text-link{margin-top:auto;font-size:.77rem;color:#956b2a;font-weight:750}.service-card-image{width:100%;aspect-ratio:1.8/1;overflow:hidden;background:var(--cream-2)}.service-card-image img{width:100%;height:100%;object-fit:cover}.service-hero-art{width:100%;max-height:360px;object-fit:cover;aspect-ratio:16/7;border-radius:7px;margin:20px 0;background:var(--cream-2)}.service-specific-photo{aspect-ratio:16/8}.content-feature{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line)}.content-feature>img{width:100%;height:300px;object-fit:cover;border-radius:8px;background:var(--cream-2)}.content-feature p{line-height:1.68;color:#4f5b52;font-size:.91rem}.checks{padding-left:0;list-style:none}.checks li{padding:6px 0 6px 25px;position:relative;font-size:.9rem}.checks li:before{content:"✓";position:absolute;left:0;color:var(--gold);font-weight:900}.benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.benefit-grid article{background:#fff;color:var(--ink);padding:16px;border-radius:7px;border:1px solid #e7decc;min-width:0}.benefit-grid b{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;border-radius:50%;background:#f4e6cd;color:#8f6528;font-size:.76rem}.benefit-grid h3{font-family:Arial,Helvetica,sans-serif;font-size:.9rem;font-weight:750;margin:10px 0 5px;color:var(--forest);letter-spacing:0}.benefit-grid p{font-size:.78rem;line-height:1.5;color:var(--muted);margin:0}.impact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.impact-grid>div{background:var(--cream);border:1px solid var(--line);border-radius:7px;padding:17px;text-align:center;display:flex;flex-direction:column;gap:6px;min-width:0}.impact-grid strong{font:700 1.65rem Georgia,serif;color:var(--gold)}.impact-grid span{font-size:.8rem;color:var(--forest)}.faq-list{background:#fff;border:1px solid var(--line);border-radius:7px;padding:0 16px}.faq-list details{padding:13px 0;border-bottom:1px solid var(--line)}.faq-list details:last-child{border-bottom:0}.faq-list summary{font-size:.88rem;font-weight:700;cursor:pointer;list-style:none;position:relative;padding-right:30px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";position:absolute;right:5px;top:-3px;font-size:1.35rem;font-weight:400;color:var(--gold)}.faq-list details[open] summary:after{content:"−"}.faq-list details p{font-size:.86rem;line-height:1.65;color:var(--muted);margin-bottom:0}.closing-cta{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:24px;background:var(--forest);color:#fff;border-radius:8px;margin:22px 0}.closing-cta h2{color:#fff;margin:0 0 7px;font-size:clamp(1.45rem,2.4vw,2rem)}.closing-cta p{margin:0;color:#e1e9e2;font-size:.88rem}.closing-cta .btn{white-space:nowrap}.image-credit{font-size:.72rem;color:var(--muted);padding:0 26px;max-width:var(--max);margin:0 auto}
/* Directories */
.city-directory-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:11px;align-items:stretch}.city-directory-card{background:#fff;border:1px solid var(--line);border-radius:7px;overflow:hidden;box-shadow:0 2px 10px rgba(9,47,34,.035);min-width:0}.city-photo-wrap{position:relative;background:var(--cream-2);aspect-ratio:1.8/1;overflow:hidden}.city-directory-image{width:100%;height:100%;min-height:110px;object-fit:cover;display:block}.city-photo-label{position:absolute;left:8px;bottom:8px;background:rgba(9,47,34,.94);color:#fff;border-radius:3px;padding:4px 7px;font-size:.64rem}.city-card-copy{padding:10px 11px}.city-card-copy h3{margin:0 0 3px;font-family:Arial,sans-serif;font-size:.86rem;font-weight:750;color:var(--forest);letter-spacing:0}.city-card-copy p{margin:0 0 6px;font-size:.72rem;color:var(--muted)}.directory-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 18px;flex-wrap:wrap}.directory-toolbar input{flex:1;min-width:220px;width:min(100%,540px);border:1px solid #d9d0bd;border-radius:5px;padding:11px 13px;background:#fff;font:inherit;font-size:.86rem}.directory-toolbar span{font-size:.78rem;color:var(--muted)}.pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;margin:24px 0}.pagination a,.pagination span{display:inline-flex;min-width:34px;height:34px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--forest);font-size:.81rem}.pagination a.current,.pagination .current{background:var(--gold);color:#fff;border-color:var(--gold)}
/* Blog archive and single article */
.blog-directory-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:22px;align-items:start}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;align-items:stretch}.blog-directory-card{border:1px solid var(--line);background:#fff;border-radius:7px;overflow:hidden;min-width:0;box-shadow:0 2px 9px rgba(9,47,34,.035)}.blog-directory-card>a{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}.blog-directory-card img{width:100%;height:auto;aspect-ratio:1.75/1;object-fit:cover;background:var(--cream-2)}.blog-directory-card> a>div{display:flex;flex:1;flex-direction:column;padding:12px}.blog-directory-card small{color:var(--muted);font-size:.7rem}.blog-directory-card h2{font:700 1.02rem/1.28 Georgia,serif;color:var(--forest);margin:8px 0}.blog-directory-card p{font-size:.8rem;line-height:1.5;color:var(--muted);margin:0 0 11px}.blog-directory-card .text-link{margin-top:auto;font-size:.78rem}.blog-category{display:inline-block;background:#f5ead7;color:#815a20;border:1px solid #e8d6b5;border-radius:3px;padding:3px 6px;font-size:.63rem;font-weight:800;margin-right:6px;text-transform:uppercase}.blog-sidebar{display:flex;flex-direction:column;gap:13px}.sidebar-card{background:#fff;border:1px solid var(--line);border-radius:7px;padding:15px;min-width:0}.sidebar-card h2{font:700 1.16rem Georgia,serif;color:var(--forest);margin:0 0 10px}.topic-link,.recent-post{display:flex;justify-content:space-between;gap:8px;padding:9px 0;border-bottom:1px solid var(--line);font-size:.8rem}.topic-link:last-child,.recent-post:last-child{border-bottom:0}.article-hero{background:linear-gradient(110deg,var(--cream),var(--paper));padding:24px 0 27px}.article-hero h1{font:700 clamp(2rem,3.7vw,3.05rem)/1.08 Georgia,serif;color:var(--forest);letter-spacing:-.04em;max-width:900px;margin:12px 0}.article-deck{font-size:.96rem;line-height:1.65;max-width:860px;color:var(--muted)}.article-meta{display:flex;gap:15px;flex-wrap:wrap;font-size:.75rem;color:var(--muted);margin:14px 0}.article-cover{width:100%;height:auto;aspect-ratio:16/6;object-fit:cover;border-radius:7px;background:var(--cream-2)}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:25px;padding-top:26px;align-items:start}.article-content{min-width:0}.article-content p,.article-content li{line-height:1.75;font-size:.94rem}.article-content h2{font:700 clamp(1.35rem,2.3vw,1.9rem)/1.2 Georgia,serif;color:var(--forest);margin-top:1.35em}.article-content h3{margin-top:1.2em;font-family:Georgia,serif;color:var(--forest)}.article-toc{background:#fff;border:1px solid var(--line);border-radius:7px;padding:15px 19px;margin-bottom:20px}.article-toc strong{font-family:Georgia,serif;color:var(--forest)}.article-toc ol{margin:8px 0 0;padding-left:20px}.article-toc li{font-size:.82rem;margin:5px 0}.article-sidebar{display:flex;flex-direction:column;gap:13px}.article-sidebar .dark-panel{padding:17px;border-radius:7px}.article-sidebar .btn{width:100%;margin-top:7px}.recent-post{display:block}.recent-post small{display:block;margin-top:4px;color:var(--muted)}.article-related{margin-top:30px}.related-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.related-links a{padding:10px;border:1px solid var(--line);border-radius:5px;font-size:.82rem}.blog-grid .blog-directory-card[hidden],.city-directory-card[hidden]{display:none!important}
/* Contact and forms */
.contact-page-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:18px;padding:28px 0}.contact-form-panel,.contact-info-panel{background:#fff;border:1px solid var(--line);border-radius:8px;padding:21px;min-width:0}.contact-form-panel h2,.contact-info-panel h2{font:700 1.55rem Georgia,serif;color:var(--forest)}.contact-info-panel{background:var(--forest);color:#fff}.contact-info-panel h2,.contact-info-panel p{color:#fff}.contact-info-panel>a{display:block;padding:12px;margin:9px 0;border:1px solid rgba(255,255,255,.23);border-radius:5px;color:#fff}.contact-info-panel>a span{display:block;margin-top:3px;color:#e1e7df;font-size:.85rem}.contact-address{padding:12px;border-top:1px solid rgba(255,255,255,.2)}.form-card{margin:16px 0;padding:0;background:transparent;border:0;border-radius:0}.r2-form label{display:block;font-weight:700;font-size:.78rem;margin:12px 0 5px}.r2-form input,.r2-form textarea,.r2-form select{display:block;width:100%;padding:11px 12px;border:1px solid #d9d2c4;border-radius:5px;background:#fff;color:var(--ink);font-size:.86rem;min-width:0}.r2-form textarea{min-height:120px;resize:vertical}.r2-form input:focus,.r2-form textarea:focus,.r2-form select:focus{outline:2px solid var(--gold-pale);outline-offset:1px}.r2-form button{margin-top:15px;width:100%}.contact-columns{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px;align-items:start}.contact-details{background:var(--cream);padding:23px;border-radius:7px}.contact-details p{margin:10px 0}.notice{padding:12px;background:#eaf4ed;border:1px solid #bdd8c4;border-radius:5px}.notice.error{background:#fff0ed;border-color:#e3b5ab}.floating-contact{position:fixed;z-index:90;right:15px;bottom:15px;display:flex;flex-direction:column;gap:7px}.floating-contact a{display:flex;align-items:center;justify-content:center;min-width:112px;padding:10px 13px;border-radius:5px;box-shadow:0 5px 15px rgba(0,0,0,.14);font-size:.74rem;font-weight:800}.float-call{background:#fff;color:var(--forest);border:1px solid var(--line)}.float-wa{background:#0c5034;color:#fff;border:1px solid #0c5034}
/* Footer */
.site-footer{background:var(--forest);color:#f6f3e9;padding:34px 0 16px}.footer-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr 1.1fr;gap:25px}.footer-brand{color:#fff;margin-bottom:10px}.footer-brand span{color:var(--gold-2)}.footer-about p{max-width:330px;color:#d2ddd3;font-size:.8rem;line-height:1.55}.site-footer h3{font:700 1rem Georgia,serif;color:#fff;margin:7px 0 12px}.site-footer .footer-grid>div:not(:first-child) a{display:block;color:#e3e6db;font-size:.78rem;padding:4px 0}.site-footer a:hover{color:var(--gold-pale)}.footer-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.19);margin-top:20px;padding-top:13px;color:#d4dbd1;font-size:.69rem}.page-hero{background:var(--cream);padding:32px 0;border-bottom:1px solid var(--line)}.page-hero .container{max-width:var(--max)}.page-hero .breadcrumb{margin-bottom:10px}.page-hero .eyebrow{color:#966c2b}.page-hero h1{font-size:clamp(2.1rem,3.8vw,3.15rem);margin:8px 0}.page-hero p{max-width:800px;color:var(--muted);font-size:.94rem}.content-wrap{max-width:960px;margin:0 auto;padding:32px 24px 55px}.entry-content h2{margin-top:1.45em}.entry-content h3{margin-top:1.2em}.entry-content img{width:100%;max-height:440px;object-fit:cover;border-radius:7px;margin:20px 0}.entry-content li{margin:.4em 0}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.directory-card{background:#fff;border:1px solid var(--line);border-radius:7px;overflow:hidden;min-width:0}.directory-card img{width:100%;height:auto;aspect-ratio:1.8/1;object-fit:cover}.directory-card .pad{padding:14px}.directory-card h3{margin:0 0 6px}.directory-card p{font-size:.82rem;color:var(--muted)}.related-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.related-links a{border:1px solid var(--line);padding:11px;border-radius:5px}.contact-columns{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px}.contact-details{background:var(--cream);padding:22px;border-radius:7px}
@media(max-width:1180px){.container{width:calc(100% - 40px)}.nav-wrap{gap:14px}.main-nav{gap:12px}.main-nav>a,.nav-dropdown-toggle{font-size:.73rem}.header-cta{display:none}.service-directory-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.city-directory-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.topbar-inner>div:last-child{display:none}.nav-wrap{min-height:64px}.menu-toggle{display:block;margin-left:auto}.main-nav{display:none;order:3;flex-basis:100%;align-items:stretch;flex-direction:column;gap:0;padding:7px 0 12px}.main-nav.is-open{display:flex}.main-nav>a{padding:10px 0;border-top:1px solid var(--line);font-size:.82rem}.nav-dropdown{border-top:1px solid var(--line)}.nav-dropdown-toggle{width:100%;justify-content:space-between;padding:11px 0;font-size:.82rem}.nav-dropdown-panel{position:static;transform:none;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px;border-radius:6px;box-shadow:none;max-height:50vh}.hero-grid,.landing-hero-grid{grid-template-columns:1fr 1fr;gap:22px}.hero-visual,.hero-visual img{min-height:290px;height:290px}.hero h1{font-size:clamp(2.2rem,5vw,3.1rem)}.landing-hero h1{font-size:clamp(2.05rem,4.5vw,2.8rem)}.landing-hero-photo,.city-hero-photo{height:290px}.service-directory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.city-directory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.blog-directory-layout,.article-layout{grid-template-columns:minmax(0,1fr) 220px;gap:16px}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-page-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1.3fr 1fr 1fr;gap:18px}.footer-grid>div:first-child{grid-column:span 3}.section,.section-soft{padding:32px 0}}
@media(max-width:650px){.container{width:calc(100% - 28px)}.topbar-inner{padding:6px 0}.topbar-inner>div{gap:8px;font-size:.65rem}.hero-grid,.landing-hero-grid,.content-feature,.contact-page-grid,.contact-columns{grid-template-columns:1fr}.hero-grid{padding-top:20px;padding-bottom:20px}.hero-visual{border-radius:8px;min-height:0}.hero-visual img{height:240px;min-height:240px}.hero h1{font-size:clamp(2.1rem,9vw,2.8rem)}.hero-lead{font-size:.9rem}.hero-actions{gap:8px}.hero-actions .btn{flex:1}.hero-ribbon .container{grid-template-columns:repeat(2,minmax(0,1fr));padding:6px 0}.hero-ribbon .container>span{min-height:53px;font-size:.73rem}.hero-ribbon .container>span:nth-child(2){border-right:0}.landing-hero-grid{padding-top:17px;padding-bottom:18px}.landing-hero h1{font-size:clamp(2.05rem,9vw,2.75rem)}.landing-hero-photo,.city-hero-photo{height:230px;max-height:none}.trust-points span{font-size:.69rem;padding:6px 7px}.sample-section{padding:22px 0}.service-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.service-directory-card img{aspect-ratio:1.65/1}.service-directory-copy{padding:10px}.service-directory-copy h3{font-size:.82rem}.service-directory-copy p{font-size:.73rem}.city-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.city-photo-wrap{aspect-ratio:1.65/1}.city-directory-image{min-height:95px}.city-card-copy{padding:9px}.city-card-copy h3{font-size:.82rem}.city-card-copy p{font-size:.68rem}.section-heading,.section-head{margin-bottom:17px}.section-heading h2,.section-head h2,.content-feature h2,.closing-cta h2{font-size:1.65rem}.cards,.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card{padding:13px}.benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.benefit-grid article{padding:12px}.impact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.impact-grid>div{padding:13px}.content-feature{padding:19px 0;gap:18px}.content-feature>img{height:230px}.closing-cta{align-items:flex-start;flex-direction:column;gap:13px;padding:18px}.closing-cta .btn{width:100%;text-align:center}.blog-directory-layout,.article-layout{grid-template-columns:1fr}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.blog-directory-card img{aspect-ratio:1.6/1}.blog-directory-card> a>div{padding:10px}.blog-directory-card h2{font-size:.94rem}.blog-directory-card p{font-size:.74rem}.blog-sidebar,.article-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.article-cover{aspect-ratio:16/8}.article-hero{padding:18px 0}.article-meta{gap:9px}.contact-page-grid{padding:22px 0}.contact-form-panel,.contact-info-panel{padding:16px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.footer-grid>div:first-child{grid-column:span 2}.footer-about p{font-size:.75rem}.footer-bottom{font-size:.64rem;flex-direction:column;gap:5px}.floating-contact{right:9px;bottom:9px}.floating-contact a{min-width:98px;padding:9px 10px;font-size:.69rem}.content-wrap{padding:24px 14px 44px}.directory-toolbar{align-items:stretch;flex-direction:column}.directory-toolbar input{width:100%;min-width:0}.article-toc{padding:13px}.image-credit{padding:0 14px}}
@media(max-width:390px){.service-directory-grid,.city-directory-grid,.blog-grid,.cards,.directory-grid{grid-template-columns:1fr}.service-directory-card img,.blog-directory-card img{aspect-ratio:1.9/1}.blog-sidebar,.article-sidebar{grid-template-columns:1fr}.hero-actions{flex-direction:column}.hero-ribbon .container>span{font-size:.68rem}.nav-dropdown-panel{grid-template-columns:1fr}.brand{font-size:1.55rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Homepage-specific components */
.split{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}.feature-img img{width:100%;height:320px;object-fit:cover;border-radius:8px}.intro-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:20px 0}.intro-stats>div{padding:18px 15px;border-right:1px solid var(--line);text-align:center}.intro-stats>div:last-child{border-right:0}.intro-stats strong{display:block;font:700 1.55rem Georgia,serif;color:var(--gold)}.intro-stats span{display:block;font-size:.78rem;color:var(--muted)}.location-band{background:var(--cream)}.location-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:32px;align-items:center}.location-layout h2{font:700 clamp(1.7rem,3vw,2.45rem) Georgia,serif;color:var(--forest)}.location-layout p{font-size:.9rem;color:var(--muted)}.location-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.location-tiles a{position:relative;height:190px;border-radius:7px;overflow:hidden;background:var(--cream-2)}.location-tiles img{width:100%;height:100%;object-fit:cover;transition:transform .2s}.location-tiles a:hover img{transform:scale(1.03)}.location-tiles a:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(9,47,34,.78))}.location-tiles span{position:absolute;z-index:1;left:10px;right:10px;bottom:10px;color:#fff;font-weight:750;font-size:.85rem}.service-card{border:1px solid var(--line);border-radius:7px;background:#fff;padding:0 0 14px;overflow:hidden;min-width:0}.service-card-image{margin-bottom:12px;aspect-ratio:1.6/1;overflow:hidden;background:var(--cream-2)}.service-card-image img{width:100%;height:100%;object-fit:cover}.service-card h3,.service-card p,.service-card .text-link{margin-left:13px;margin-right:13px}.service-card h3{font:700 .96rem/1.35 Arial,sans-serif;color:var(--forest)}.service-card p{font-size:.8rem;line-height:1.5;color:var(--muted)}.blog-card{min-width:0}.blog-thumb{display:block;aspect-ratio:1.6/1;height:auto;overflow:hidden;background:var(--cream-2);border-radius:6px;margin-bottom:10px}.blog-thumb img{width:100%;height:100%;object-fit:cover}.section-end-link{color:var(--gold);font-weight:750}.location-tiles a:focus-visible,.service-directory-card a:focus-visible,.blog-directory-card a:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
@media(max-width:900px){.split,.location-layout{grid-template-columns:1fr}.location-tiles a{height:170px}.intro-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.intro-stats>div:nth-child(2){border-right:0}.intro-stats>div:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:650px){.feature-img img{height:245px}.location-tiles{gap:7px}.location-tiles a{height:145px}.location-tiles span{font-size:.75rem}.intro-stats>div{padding:13px 8px}.hero-proof{gap:7px 10px}}


/* Image attribution and nested-grid safeguards */
.r2fix-image-credit{display:block;font-size:.64rem;line-height:1.35;color:#657168;margin:5px 0 9px;overflow-wrap:anywhere}
.r2fix-image-credit a,.image-credit a{color:#876126;text-decoration:underline;text-underline-offset:2px}
.image-credit{font-size:.68rem;line-height:1.4;color:#66736a;padding:4px 26px 10px;max-width:var(--max);margin:0 auto}
.entry-content .service-directory-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;align-items:stretch}
.entry-content .service-directory-card{margin:0;padding:0;overflow:hidden;max-width:none}
.entry-content .service-directory-card>a{display:flex;flex-direction:column;height:100%;width:100%}
.entry-content .service-directory-card img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:1.75/1;object-fit:cover;border-radius:0;margin:0;background:var(--cream-2)}
.entry-content .service-directory-copy{padding:11px;}
.entry-content .service-directory-card .r2fix-image-credit{margin:0 10px 8px;}
.entry-content .service-hero-art{display:block;width:100%;height:auto;max-height:360px;aspect-ratio:16/7;object-fit:cover;border-radius:7px;margin:18px 0;background:var(--cream-2)}
.entry-content .faq-list{margin:14px 0 20px}
.entry-content .benefit-grid,.entry-content .impact-grid{margin:16px 0 24px}
@media(max-width:1180px){.entry-content .service-directory-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:900px){.entry-content .service-directory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.entry-content .service-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.entry-content .service-directory-card img{aspect-ratio:1.55/1}.entry-content .service-directory-copy{padding:9px}.image-credit{padding:4px 14px 8px}}
@media(max-width:390px){.entry-content .service-directory-grid{grid-template-columns:1fr}.entry-content .service-directory-card img{aspect-ratio:1.9/1}}

/* Final layout integrity pass: keep all raster images inside their intended frames. */
img{max-width:100%;height:auto}
.landing-hero-photo,.city-hero-photo{display:block;width:100%;height:clamp(260px,29vw,410px);object-fit:cover;object-position:center;border-radius:8px;min-width:0}
.service-hero-art{display:block;width:100%;height:auto;aspect-ratio:16/7;object-fit:cover;max-height:340px;margin:18px 0;border-radius:8px}
.city-photo-wrap{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--cream-2)}
.city-directory-image{display:block;width:100%;height:100%;min-height:0;object-fit:cover}
.service-directory-card img,.blog-directory-card img{display:block;width:100%;aspect-ratio:16/9;height:auto;object-fit:cover;background:var(--cream-2)}
.blog-directory-card>a,.service-directory-card>a{display:flex;flex-direction:column;height:100%;min-width:0;overflow:hidden}
.blog-directory-card>a>div{flex:1;min-width:0}
.location-tiles img,.feature-img img,.content-feature>img{object-fit:cover}
.article-cover{display:block;width:100%;aspect-ratio:16/7;height:auto;max-height:440px;object-fit:cover;border-radius:8px}
.article-content img{max-width:100%;height:auto}
@media(max-width:650px){.landing-hero-photo,.city-hero-photo{height:230px}.service-hero-art{aspect-ratio:16/9}.article-cover{aspect-ratio:16/9}}

/* v3.1 fixes: balanced layouts, ribbon labels, pagination and raster image recovery */
.topbar-inner>div:last-child{display:none!important}.topbar-note{margin-left:auto;color:#e8d9b9;font-size:.68rem;letter-spacing:.02em}
.nav-dropdown-toggle span{display:none!important}.nav-dropdown-toggle{gap:0!important}
.hero-ribbon .container{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:0}
.hero-ribbon .container>span{display:flex;align-items:center;justify-content:center;gap:12px;min-width:0;padding:15px 12px;border-right:1px solid rgba(235,215,174,.28);text-align:center;white-space:normal;line-height:1.35}
.hero-ribbon .container>span:last-child{border-right:0}.hero-ribbon .container>span i{display:inline-block;flex:0 0 auto;color:var(--gold);font-style:normal;font-size:1.35rem;line-height:1}
.intro-stats{width:min(100%,960px);margin:24px auto;grid-template-columns:repeat(3,minmax(0,1fr));justify-content:center}
.intro-stats>div{min-width:0}.intro-stats>div:nth-child(3){border-right:0}
.why-choose-global{background:#fffdf8;padding:36px 0 40px;border-top:1px solid var(--line)}
.why-choose-heading{text-align:center;max-width:720px;margin:0 auto 22px}.why-choose-heading h2{font:700 clamp(1.8rem,3vw,2.5rem)/1.15 Georgia,serif;color:var(--forest);margin:8px 0}.why-choose-heading p{color:var(--muted);margin:0 auto;max-width:650px}
.why-choose-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.why-choose-grid article{padding:18px;border:1px solid var(--line);border-radius:8px;background:#fff;min-width:0}.why-choose-grid article>span{color:var(--gold);font:700 1.4rem Georgia,serif}.why-choose-grid h3{font-size:.98rem;color:var(--forest);margin:10px 0 6px}.why-choose-grid p{font-size:.82rem;line-height:1.55;color:var(--muted);margin:0}
.pagination{gap:7px;flex-wrap:wrap}.pagination a.page-prev,.pagination a.page-next{width:auto;min-width:82px;padding:0 12px;border-radius:18px;font-weight:650}.pagination .pagination-ellipsis{border:0;background:transparent;min-width:16px}
.city-directory-image,.landing-hero-photo,.city-hero-photo,.service-directory-card img,.blog-directory-card img,.article-cover{background:#e8e5dd;min-height:120px}.photo-fallback-raster{object-fit:cover;background:#e8e5dd}
@media(max-width:900px){.why-choose-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-ribbon .container{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-ribbon .container>span:nth-child(3){border-right:0}.intro-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.intro-stats>div:nth-child(-n+2){border-bottom:0}.intro-stats>div:nth-child(2){border-right:1px solid var(--line)}}
@media(max-width:650px){.hero-ribbon .container{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-ribbon .container>span{min-height:48px;padding:9px 7px;gap:7px;border-right:1px solid rgba(235,215,174,.28);font-size:.7rem}.hero-ribbon .container>span:nth-child(2n){border-right:0}.hero-ribbon .container>span:last-child{grid-column:1/-1;border-right:0}.intro-stats{grid-template-columns:1fr;width:100%;max-width:480px}.intro-stats>div{border-right:0!important;border-bottom:1px solid var(--line)!important}.intro-stats>div:last-child{border-bottom:0!important}.why-choose-global{padding:27px 0}.why-choose-grid{grid-template-columns:1fr 1fr;gap:8px}.why-choose-grid article{padding:12px}.why-choose-grid h3{font-size:.84rem}.why-choose-grid p{font-size:.73rem}.topbar-note{font-size:.6rem}}


/* v3.2: staging-width, hero-image and blog archive reliability fixes */
html,body{width:100%;max-width:100%;overflow-x:clip}
#page,.site,.wp-site-blocks,#content,.site-main{width:100%;max-width:none;margin-inline:auto}
.site-header,.topbar,.landing-hero,.site-footer{width:100%;max-width:none}
.container{width:min(var(--max),calc(100% - 48px));max-width:var(--max);margin-inline:auto}
.landing-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(22px,3vw,42px)}
.landing-hero-grid>div,.landing-hero-grid>img{min-width:0}
.blog-archive-hero .landing-hero-grid{min-height:290px;padding-block:26px}
.blog-archive-hero .landing-hero-photo{height:280px;max-height:300px;aspect-ratio:4/3}
.blog-directory-layout{grid-template-columns:minmax(0,1fr) 245px}
.blog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.blog-directory-card img{height:190px;aspect-ratio:16/9;object-fit:cover}
.header-cta{flex-shrink:0;white-space:nowrap;padding:12px 14px;font-size:.78rem}
@media(max-width:1150px){.nav-wrap{gap:12px}.main-nav{gap:clamp(8px,1vw,13px)}.header-cta{display:none!important}.brand{font-size:1.6rem}.brand small{font-size:.38rem}}
@media(max-width:900px){.landing-hero-grid{grid-template-columns:1fr 1fr}.blog-directory-layout{grid-template-columns:minmax(0,1fr) 220px}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.container{width:calc(100% - 32px)}.landing-hero-grid{grid-template-columns:1fr;gap:16px}.blog-archive-hero .landing-hero-grid{min-height:0}.blog-archive-hero .landing-hero-photo{height:220px;max-height:240px;aspect-ratio:16/9}.blog-directory-layout{grid-template-columns:1fr}.blog-grid{grid-template-columns:1fr}.blog-directory-card img{height:210px}}

/* v3.3 content-first service/location heroes and stable blog archive */
.text-only-hero .landing-hero-copy,.blog-text-hero .landing-hero-copy{width:min(var(--max),calc(100% - 48px));max-width:var(--max);margin:0 auto;padding:32px 0 36px;min-width:0}
.text-only-hero .landing-hero-copy>p,.blog-text-hero .landing-hero-copy>p{max-width:900px}
.service-text-hero,.city-text-hero,.city-service-text-hero,.blog-text-hero{background:linear-gradient(110deg,var(--cream) 0%,var(--paper) 68%,#e8dfcc 100%)}
.city-context-panel{max-width:960px;margin:18px 0;padding:18px 20px;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:7px;background:rgba(255,255,255,.72)}
.city-context-panel h2{font:700 1.2rem Georgia,serif;color:var(--forest);margin:0 0 8px}.city-context-panel p{font-size:.86rem;margin:7px 0;max-width:none}.city-context-panel.compact{max-width:850px}
.service-overview-panel{margin:22px 0 28px;padding:20px;border:1px solid var(--line);border-radius:8px;background:var(--cream)}
.service-overview-panel h2{margin-top:0!important}.service-overview-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--line);margin-top:15px}.service-overview-points>div{padding:14px 16px;border-right:1px solid var(--line);min-width:0}.service-overview-points>div:first-child{padding-left:0}.service-overview-points>div:last-child{border-right:0}.service-overview-points strong{display:block;font:700 1.35rem Georgia,serif;color:var(--gold)}.service-overview-points span{display:block;color:var(--muted);font-size:.84rem;margin-top:3px}
.blog-topic-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.blog-topic-strip span{padding:8px 12px;border:1px solid var(--line);border-radius:30px;background:#fff;color:var(--forest);font-size:.78rem;font-weight:700}
.blog-archive-page{width:100%;max-width:none}.blog-archive-page .container{width:min(var(--max),calc(100% - 48px));max-width:var(--max);margin-inline:auto}.blog-archive-page .sample-section{padding-top:24px}.blog-archive-page .directory-toolbar{width:100%;box-sizing:border-box}.blog-archive-page .blog-directory-layout{width:100%;min-width:0}.blog-archive-page .blog-grid{min-width:0}.blog-archive-page .blog-directory-card{min-width:0;max-width:none}.blog-archive-page .blog-directory-card img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.blog-archive-page .blog-directory-card>a>div{min-width:0}.blog-archive-page .blog-directory-card h2{overflow-wrap:anywhere}
.article-topic-note{margin:20px 0;padding:18px 20px;border-left:4px solid var(--gold);background:var(--cream);border-radius:6px}.article-topic-note strong{display:block;color:var(--forest);font:700 1.05rem Georgia,serif;margin-bottom:6px}.article-topic-note p{margin:0;color:var(--muted)}
@media(max-width:650px){.text-only-hero .landing-hero-copy,.blog-text-hero .landing-hero-copy{width:calc(100% - 28px);padding:24px 0}.service-overview-points{grid-template-columns:1fr}.service-overview-points>div,.service-overview-points>div:first-child{padding:11px 0;border-right:0;border-bottom:1px solid var(--line)}.service-overview-points>div:last-child{border-bottom:0}.blog-archive-page .container{width:calc(100% - 28px)}.blog-archive-page .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-archive-page .blog-directory-card img{aspect-ratio:1.5/1}}
@media(max-width:390px){.blog-archive-page .blog-grid{grid-template-columns:1fr}}


/* v3.4.0: service hero reuses the directory card image and blog archive is lightweight */
.service-detail-hero .landing-hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(24px,3vw,42px);padding-block:30px;align-items:center}
.service-detail-hero .service-hero-art{display:block;width:100%;height:clamp(260px,28vw,370px);max-height:370px;aspect-ratio:4/3;object-fit:cover;margin:0;border-radius:9px;background:var(--cream-2)}
.service-detail-hero .landing-hero-copy{min-width:0;padding:0}
.blog-archive-page{width:100%;max-width:none;overflow:clip}
.blog-archive-page .container{width:min(var(--max),calc(100% - 48px));max-width:var(--max);margin-inline:auto}
.blog-archive-page .blog-directory-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:24px;align-items:start}
.blog-archive-page .blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;min-width:0}
.blog-archive-page .blog-directory-card{min-width:0;overflow:hidden}
.blog-archive-page .blog-directory-card img{display:block;width:100%;height:175px;aspect-ratio:16/9;object-fit:cover;background:var(--cream-2)}
.blog-archive-page .blog-directory-card>a>div{padding:13px;min-width:0}
.blog-archive-page .blog-directory-card h2{font-size:1.05rem;overflow-wrap:anywhere}
.blog-archive-page .directory-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 22px}
.blog-archive-page .directory-toolbar input{flex:1;min-width:220px}
.blog-archive-page .blog-sidebar{min-width:0}
@media(max-width:900px){.service-detail-hero .landing-hero-grid{grid-template-columns:1fr 1fr}.blog-archive-page .blog-directory-layout{grid-template-columns:minmax(0,1fr) 210px;gap:16px}.blog-archive-page .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.service-detail-hero .landing-hero-grid{grid-template-columns:1fr;gap:18px}.service-detail-hero .service-hero-art{height:230px;aspect-ratio:16/9}.blog-archive-page .container{width:calc(100% - 28px)}.blog-archive-page .blog-directory-layout{grid-template-columns:1fr}.blog-archive-page .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.blog-archive-page .blog-directory-card img{height:auto;aspect-ratio:1.5/1}.blog-archive-page .directory-toolbar{align-items:stretch;flex-direction:column}.blog-archive-page .directory-toolbar input{width:100%;min-width:0}}
@media(max-width:390px){.blog-archive-page .blog-grid{grid-template-columns:1fr}}

/* v3.5: restore matching city landmark photos and split editorial article hero */
.city-photo-hero .landing-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);align-items:center;gap:clamp(24px,3vw,42px);padding-block:30px}
.city-photo-hero .landing-hero-copy{width:100%;max-width:none;padding:0;min-width:0}
.city-hero-media{min-width:0}
.city-photo-hero .city-hero-photo{display:block;width:100%;height:clamp(280px,30vw,420px);aspect-ratio:4/3;object-fit:cover;border-radius:9px;background:var(--cream-2)}
.city-hero-media .image-credit{font-size:.65rem;line-height:1.4;margin:7px 2px 0;color:var(--muted)}
.article-hero-split{padding:30px 0 32px}
.article-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(24px,3.5vw,48px);align-items:center}
.article-hero-copy{min-width:0}
.article-hero-split h1{max-width:760px;font:700 clamp(2rem,3.4vw,3.35rem)/1.08 Georgia,'Times New Roman',serif;color:var(--forest);letter-spacing:-.035em;margin:12px 0 16px;overflow-wrap:anywhere}
.article-hero-split .article-deck{font-size:1rem;line-height:1.75;max-width:760px;margin:0 0 16px;color:var(--muted)}
.article-hero-media{min-width:0}
.article-hero-split .article-cover{display:block;width:100%;height:clamp(270px,30vw,430px);aspect-ratio:4/3;object-fit:cover;border-radius:9px;background:var(--cream-2)}
.article-section-divider{background:var(--paper);padding:0}
.article-section-divider hr{border:0;border-top:1px solid var(--line);margin:0}
.article-layout-organized{padding-top:30px}
.article-layout-organized .article-content{min-width:0}
.article-layout-organized .article-sidebar{position:sticky;top:20px}
@media(max-width:900px){.city-photo-hero .landing-hero-grid,.article-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:20px}.city-photo-hero .city-hero-photo,.article-hero-split .article-cover{height:300px}}
@media(max-width:650px){.city-photo-hero .landing-hero-grid,.article-hero-grid{grid-template-columns:1fr;gap:18px;padding-block:22px}.city-photo-hero .city-hero-photo,.article-hero-split .article-cover{height:230px;aspect-ratio:16/9}.article-hero-split{padding:18px 0 22px}.article-hero-split h1{font-size:clamp(1.9rem,8vw,2.5rem)}.article-layout-organized{padding-top:20px}.article-layout-organized .article-sidebar{position:static}}


/* v3.6: touch-first navigation and consistent mobile service/blog layouts */
.services-nav-link{display:inline-flex;align-items:center;min-height:42px;padding:10px 2px;color:var(--forest);font-weight:750;text-decoration:none;white-space:nowrap}
.services-nav-link:hover,.services-nav-link:focus-visible{color:#946b2c;text-decoration:underline;text-underline-offset:5px}
.nav-dropdown,.nav-dropdown-panel,.nav-dropdown-toggle{display:none!important}
.main-nav{min-width:0}.main-nav>a{white-space:nowrap}
.service-directory-grid,.service-directory-card,.service-directory-card>a,.service-directory-copy,.article-hero-grid,.article-hero-copy,.article-hero-media,.article-content{min-width:0}
.service-directory-card h3,.service-directory-card p,.article-hero h1,.article-deck,.article-content{overflow-wrap:anywhere;word-break:normal}
.service-detail-hero .landing-hero-grid{width:min(var(--max),calc(100% - 40px));margin-inline:auto}
.service-detail-hero .service-hero-art{display:block;min-width:0;max-width:100%;height:clamp(220px,28vw,370px);object-fit:cover}
.article-hero-split .article-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(20px,3vw,42px);align-items:center;width:min(var(--max),calc(100% - 40px));margin-inline:auto}
.article-hero-split .article-hero-copy{min-width:0}.article-hero-split .article-cover{display:block;width:100%;height:clamp(250px,30vw,390px);aspect-ratio:4/3;object-fit:cover}
.article-section-divider hr{border:0;border-top:1px solid var(--line);margin:0}
.article-layout-organized{grid-template-columns:minmax(0,1fr) 250px;gap:clamp(18px,3vw,32px)}
@media(max-width:900px){.nav-wrap{flex-wrap:wrap}.main-nav{gap:clamp(8px,1vw,13px)}.service-detail-hero .landing-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.85fr)}.article-hero-split .article-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.85fr)}.article-layout-organized{grid-template-columns:minmax(0,1fr) 220px}}
@media(max-width:650px){
 .nav-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-block:10px}
 .brand{max-width:calc(100% - 58px);font-size:1.65rem}
 .menu-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;margin-left:auto;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--forest)}
 .main-nav{display:none;order:5;flex:0 0 100%;width:100%;padding:8px 0 12px;gap:0;align-items:stretch;flex-direction:column;background:var(--paper)}
 .main-nav.is-open{display:flex}.main-nav>a{display:flex;align-items:center;min-height:44px;padding:11px 8px;border-top:1px solid var(--line);font-size:.92rem;white-space:normal}
 .header-cta{display:none!important}.services-nav-link{width:100%}
 .service-detail-hero .landing-hero-grid,.article-hero-split .article-hero-grid{width:calc(100% - 28px);grid-template-columns:minmax(0,1fr);gap:16px;padding-block:20px}
 .service-detail-hero .landing-hero-copy{order:1}.service-detail-hero .service-hero-art{order:2;width:100%;height:auto;max-height:none;aspect-ratio:16/9;margin:0}
 .service-detail-hero .landing-hero-copy h1{font-size:clamp(1.8rem,7.5vw,2.35rem);line-height:1.12;overflow-wrap:anywhere}
 .service-detail-hero .trust-points{display:flex;flex-wrap:wrap;gap:7px}.service-detail-hero .hero-actions{display:grid;grid-template-columns:1fr;gap:9px}
 .service-detail-hero .hero-actions .btn{width:100%;min-width:0;text-align:center;white-space:normal}
 .service-directory-grid,.entry-content .service-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .service-directory-card img,.entry-content .service-directory-card img{display:block;width:100%;height:auto;aspect-ratio:1.45/1;object-fit:cover}
 .service-directory-copy,.entry-content .service-directory-copy{padding:10px;min-width:0}.service-directory-copy h3{font-size:.82rem;line-height:1.3;overflow-wrap:anywhere}.service-directory-copy p{font-size:.73rem;overflow-wrap:anywhere}
 .article-hero-split .article-hero-grid{grid-template-columns:minmax(0,1fr);gap:15px}.article-hero-split .article-hero-copy{order:1}.article-hero-split .article-hero-media{order:2}
 .article-hero-split .article-cover{width:100%;height:auto;aspect-ratio:16/9;max-height:none}.article-hero-split h1{font-size:clamp(1.8rem,7.5vw,2.35rem);line-height:1.12}
 .article-layout-organized{grid-template-columns:minmax(0,1fr);gap:18px;padding-top:18px}.article-layout-organized .article-sidebar{display:grid;grid-template-columns:minmax(0,1fr);position:static}
 .article-content p,.article-content li{font-size:.91rem;line-height:1.7;overflow-wrap:anywhere}.article-toc{max-width:100%;overflow-wrap:anywhere}
}
@media(max-width:390px){.service-directory-grid,.entry-content .service-directory-grid{grid-template-columns:minmax(0,1fr)}.service-directory-card img,.entry-content .service-directory-card img{aspect-ratio:1.9/1}.brand small{font-size:.36rem}.article-meta{gap:7px}}

/* v3.7: consistent service-related section placement and touch-first navigation on every template */
.related-services-after-hero{padding:clamp(26px,4vw,46px) 0 24px;margin:0;background:var(--paper)}
.related-services-after-hero .section-heading{max-width:var(--max);margin:0 auto 22px;padding-inline:0}
.related-services-after-hero .service-directory-grid{margin-top:0}
.main-nav .services-nav-link,.main-nav .services-nav-link:hover,.main-nav .services-nav-link:focus,.main-nav .services-nav-link:focus-visible{cursor:pointer;text-decoration:none}
.main-nav .services-nav-link:hover{color:var(--forest)}
/* Never show a hover/flyout service menu on posts, archives, or static pages. */
.nav-dropdown,.nav-dropdown-panel,.nav-dropdown-toggle,.main-nav .sub-menu,.main-nav .children{display:none!important;visibility:hidden!important;pointer-events:none!important}
@media(max-width:900px){.related-services-after-hero .section-heading{padding-inline:0}.related-services-after-hero .service-directory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.related-services-after-hero{padding:22px 0 16px}.related-services-after-hero .section-heading{margin-bottom:14px}.related-services-after-hero .service-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}
@media(max-width:390px){.related-services-after-hero .service-directory-grid{grid-template-columns:1fr}}

/* v3.9: show the full blog hero description without read-more ellipses or line clipping */
.single-article-page .article-deck{display:block!important;overflow:visible!important;max-height:none!important;height:auto!important;-webkit-line-clamp:unset!important;line-clamp:unset!important;text-overflow:clip!important;white-space:normal!important}
