/* Clear, readable navigation and a smaller set of actions. */
.header{position:relative;display:flex;flex-wrap:nowrap;align-items:center;gap:24px;padding-block:20px}
.header .brand{flex-shrink:0}
.brand-small{font-size:16px;letter-spacing:.13em;line-height:1.2}
.header .main-navigation{display:flex;order:0;width:auto;gap:20px;padding:0;border:0;margin-left:auto}
.header .main-navigation a{font-size:18px;white-space:nowrap}
.header .header-call{font-size:16px;line-height:1.25;display:flex;flex-direction:column;gap:2px;align-items:center;white-space:nowrap;padding:12px 18px;flex-shrink:0}
.header-call span{font-size:16px}
.menu-toggle{display:none;font:600 16px/1.25 "Source Sans 3",sans-serif;color:var(--ink);background:transparent;border:1px solid var(--line);border-radius:10px;padding:12px;min-height:48px;cursor:pointer}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch}
.hero-actions .button{font-size:18px;justify-content:center;line-height:1.3;padding:16px 20px}
.hero-actions .secondary-action{background:transparent;color:var(--accent);border-color:var(--accent);box-shadow:none}
.hero-actions .secondary-action:hover{background:var(--pale)}
.email-preference{font-size:16px;margin-top:14px;margin-bottom:0}
.email-preference a{text-decoration:underline;text-underline-offset:3px}
.sample-plan{margin-top:28px;padding:24px;background:#fff;border-radius:18px;box-shadow:var(--shadow)}
.sample-plan h3{font-size:1.45rem;margin-bottom:14px}
.sample-plan p{font-size:18px;margin-bottom:16px}
.service-area{margin-top:22px;font-size:16px}
.topbar,.eyebrow,.overview-label,.section-name,.number,.post-meta,.photo-note,.image-caption>span,.portrait-label,.portrait-label span,.footer-bottom,.footer-main>a:last-child,.testimonial-more summary,.trust,.post-art>span{font-size:16px}
.eyebrow,.overview-label,.number,.post-meta,.footer-bottom,.testimonial-more summary{color:var(--body)}
.band-deep .eyebrow,.band-deep .overview-label{color:#fff}
.band-deep .client-quote .testimonial-more summary{color:var(--ink)}
.image-caption>span,.photo-note,.portrait-label,.portrait-label span{color:#fff}
.photo-note{background:#23464a;padding:5px 9px}
.image-caption{background:linear-gradient(transparent,rgba(18,60,66,.94));padding-top:55px}
button:focus-visible{outline:3px solid #a15b12;outline-offset:4px}
@media(max-width:1320px){
 .header{gap:14px}
 .header .menu-toggle{display:flex;align-items:center;gap:10px;margin-left:auto}
 .header .main-navigation{display:none;position:absolute;top:calc(100% - 1px);left:0;right:0;z-index:50;background:var(--cream);padding:18px 24px;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);margin:0;width:auto}
 .header .main-navigation.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}
 .header .main-navigation a{padding:12px 0;white-space:nowrap}
}
@media(max-width:760px){
 .header{display:grid;grid-template-columns:auto 1fr;gap:12px;padding-block:14px}
 .header .brand{grid-column:1/-1;justify-self:start;font-size:1.65rem}
 .header .menu-toggle{margin:0;justify-content:center;grid-column:1;grid-row:2}
 .header .header-call{grid-column:2;grid-row:2;justify-self:end;min-width:0;padding:10px 14px;width:100%}
 .brand-small{font-size:16px;letter-spacing:.08em}
 .topbar{font-size:16px;line-height:1.3;letter-spacing:0;padding:8px 16px}
 main>.hero{padding-top:32px}
 .hero-actions{flex-direction:column;align-items:stretch}
 .hero-actions .button{width:100%;text-align:center}
 .sample-plan{padding:22px}
}
@media(min-width:560px) and (max-width:760px){
 .header{grid-template-columns:1fr auto auto}
 .header .brand{grid-column:1;grid-row:1}
 .header .menu-toggle{grid-column:2;grid-row:1}
 .header .header-call{grid-column:3;grid-row:1}
}
.header .main-navigation .nav-check{font-size:16px;text-decoration:underline;text-underline-offset:4px}
/* A single 72px mobile masthead; full contact details remain on desktop. */
.header-call .call-mobile{display:none}
@media(max-width:760px){
 .topbar{display:none}
 .header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;width:calc(100% - 32px);height:72px;padding-block:12px;gap:8px}
 .header .brand{grid-column:1;grid-row:1;gap:7px;font-size:26px;min-width:0;white-space:nowrap}
 .header .brand-logo{width:30px}
 .header .brand-small{display:none}
 .header .menu-toggle{grid-column:2;grid-row:1;margin:0;padding:10px;gap:0;height:48px;min-width:58px}
 .header .menu-toggle>span{display:none}
 .header .header-call{grid-column:3;grid-row:1;width:auto;min-width:52px;height:48px;padding:10px 12px;justify-content:center}
 .header-call .call-desktop{display:none}
 .header-call .call-mobile{display:inline;font-size:16px}
 .header .main-navigation{grid-column:1/-1;top:100%}
}
.article-body a:not(.button){text-decoration:underline;text-underline-offset:4px;font-weight:600}
.post-art.featured-art{position:relative;min-height:240px}
.post-art.featured-art img.fill{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover}
.post-art.post-art-icon{align-items:center;justify-content:center;color:var(--gold)}
/* Illustrative sample plan (homepage and Services). */
.sample-plan-card{margin-top:28px;padding:26px;background:#fff;border-radius:18px;box-shadow:var(--shadow);color:var(--ink)}
.spc-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin-bottom:10px}
.spc-head h3{font-size:1.45rem;margin:0}
.spc-label{font-size:16px;font-weight:600;letter-spacing:.04em;background:var(--pale);color:var(--ink);border-radius:999px;padding:4px 12px}
.spc-table{width:100%;border-collapse:collapse;font-size:18px}
.spc-table th,.spc-table td{text-align:left;vertical-align:top;padding:12px 0;border-top:1px solid var(--line)}
.spc-table thead th{border-top:0;font-size:16px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);padding-top:4px}
.spc-table tbody th{width:34%;padding-right:16px;font-weight:600;color:var(--accent)}
.spc-note{font-size:17px;color:var(--body);margin:14px 0 0}
/* Services page layout */
.svc-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}
.svc-grid .sample-plan-card{margin-top:0}
.svc-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}
.svc-card{background:#fff;border-radius:18px;box-shadow:var(--shadow);padding:24px}
.svc-card h3{font-size:1.35rem;margin:0 0 10px}
.svc-card p{margin:0;color:var(--body)}
.svc-section h2{margin-bottom:18px}
.svc-section>p,.svc-section .svc-text p{max-width:680px}
.svc-cost{font-weight:600;color:var(--ink)}
@media(max-width:1000px){.svc-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.svc-grid,.svc-cards{grid-template-columns:1fr;gap:20px}.spc-table tbody th{width:40%}}
.credential-note{display:inline-block;margin-top:8px;font-size:16px;line-height:1.5;color:var(--body);max-width:420px}
