/* Shared text wordmark and a prominent, accessible call action. */
.brand{gap:0;text-decoration:none}
.brand .brand-wordmark{display:grid;grid-template-columns:max-content;gap:6px;align-items:stretch;width:max-content}
.brand .brand-wordmark strong{display:block;font-size:26px;line-height:1;font-weight:800;letter-spacing:-1px}
.brand .brand-wordmark small{display:flex;flex-direction:row;justify-content:space-between;align-items:center;width:100%;margin:0;font-size:8px;line-height:1;letter-spacing:0}
.brand .brand-wordmark small>span{display:block;flex:none}
.header-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:10px;min-width:0;width:100%}
.header-phone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:50px;padding:7px 10px;border:1px solid #ec7848;border-radius:12px;background:#ef7945;color:#14352e;text-decoration:none;white-space:nowrap;box-shadow:0 4px 14px #8c421222;transition:background .18s,box-shadow .18s;touch-action:manipulation}
.header-phone>span{font-size:9px;line-height:1;letter-spacing:1.7px;text-transform:uppercase;font-weight:700}
.header-phone>strong{font-size:21px;line-height:1.1;letter-spacing:-.35px;font-weight:800;font-variant-numeric:tabular-nums}
.header-actions>.header-cta,.header-actions>.button.small{grid-column:auto;grid-row:auto;display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;width:100%;min-height:50px;padding:10px 9px;font-size:12px;line-height:1.35;border-radius:12px;text-align:center}
.header-phone:focus-visible{outline:3px solid var(--ink,#203c3e);outline-offset:4px;box-shadow:0 0 0 7px var(--paper,#efe5d7)}
/* On phones the number stays immediately to the left of the enquiry button. */
@media(max-width:900px){
  :root{--header-height:calc(148px + var(--safe-top,0px))}
  .site-header{grid-template-columns:1fr;grid-template-rows:46px 56px 46px;gap:0;height:var(--header-height)}
  .site-header>.brand{grid-column:1;grid-row:1;justify-self:center;min-height:40px}
  .site-header>.header-actions{grid-column:1;grid-row:2}
  .site-header>nav{grid-column:1;grid-row:3}
  .site-header .brand-wordmark{gap:4px}
  .site-header .brand-wordmark strong{font-size:24px}
  .site-header .brand-wordmark small{font-size:7px}
}
.service-header{display:grid;grid-template-columns:1fr;gap:12px;padding-block:16px}
.service-header>.brand{justify-self:center}
.service-header>.header-actions{justify-self:stretch}
@media(min-width:600px){
  .service-header{display:flex;gap:24px;padding-block:22px}
  .service-header>.header-actions{width:auto;display:flex;gap:12px}
  .header-actions>.header-phone{min-width:158px}
  .service-header .header-actions>.button.small{width:auto;min-width:145px;padding-inline:18px}
}
@media(min-width:600px) and (max-width:900px){
  :root{--header-height:calc(122px + var(--safe-top,0px))}
  .site-header{grid-template-columns:1fr auto;grid-template-rows:72px 50px;gap:0 20px}
  .site-header>.brand{grid-column:1;grid-row:1;justify-self:start}
  .site-header>.header-actions{grid-column:2;grid-row:1;width:auto;display:flex;gap:12px}
  .site-header>.header-actions>.header-cta{width:auto;min-width:145px;padding-inline:18px}
  .site-header>nav{grid-column:1/-1;grid-row:2}
}
@media(min-width:600px) and (max-width:900px) and (orientation:landscape){
  :root{--header-height:calc(110px + var(--safe-top,0px))}
  .site-header{grid-template-rows:62px 48px}
}
@media(min-width:901px){
  .site-header{gap:clamp(16px,2vw,26px)}
  .site-header>.header-actions{display:flex;align-items:center;gap:12px;width:auto;flex-shrink:0}
  .site-header .brand-wordmark strong{font-size:28px}
  .header-phone{min-height:54px;padding:8px 16px;border-radius:13px}
  .header-phone>strong{font-size:24px;letter-spacing:-.6px}
  .header-actions>.header-cta{width:auto;min-height:54px;padding:13px 18px;border-radius:28px}
}
@media(min-width:901px) and (max-width:1150px){
  .site-header{gap:16px}
  .site-header .brand-wordmark strong{font-size:25px}
  .site-header>nav{gap:13px;font-size:10px}
  .site-header>.header-actions{gap:9px}
  .site-header .header-phone{min-width:145px;padding-inline:11px}
  .site-header .header-phone>strong{font-size:21px}
  .site-header .header-cta{padding-inline:13px;font-size:11px;gap:10px}
}
@media(hover:hover){.header-phone:hover{background:#ff935e;box-shadow:0 5px 20px #8c421238}}
@media(prefers-reduced-motion:reduce){.header-phone{transition:none}}
.page-nav{display:flex;align-items:center;gap:26px;border-bottom:1px solid var(--line,#243f3829);min-height:48px}
.page-nav a{display:inline-flex;align-items:center;min-height:48px;padding-block:12px;font-size:12px;text-decoration:none;position:relative}
.page-nav a[aria-current=page]{font-weight:700}
.page-nav a[aria-current=page]:after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--accent,#9a5334)}
@media(hover:hover){.page-nav a:hover{text-decoration:underline}}
