﻿/* Service pages: mobile-first */
.btn-wa{background:var(--white);color:var(--aubergine)}
@media (hover:hover){.btn-wa:hover{background:var(--mist)}}
.svc-hero{padding:24px 0 36px;background:var(--mist)}
.svc-hero .wrap{display:flex;flex-direction:column;gap:22px}
.svc-hero-img{width:100%;height:auto;border:var(--line);border-radius:18px;box-shadow:var(--pop)}
.svc-hero h1{font-size:clamp(2.1rem,8vw,3.6rem)}
.svc-ctas,.svc-book{display:flex;flex-direction:column;gap:14px}
.svc-ctas .btn,.svc-book .btn{width:100%;min-height:52px}
.svc-book{margin:36px 0}
.svc-body{padding:36px 0 56px;font-size:17px;line-height:1.75}
.svc-body .wrap>*+*{margin-top:1.4em}
.svc-body h2{font-size:clamp(1.8rem,6vw,2.8rem);margin-top:1.6em}
.svc-body h3{font-size:1.5rem;margin-top:1.4em}
.svc-body h4,.svc-body h5{font-family:var(--serif);font-size:1.3rem;margin-top:1.2em}
.svc-body p+p,.svc-body ul,.svc-body ol{margin-top:1em}
.svc-body ul,.svc-body ol{padding-left:1.3em}
.svc-body li+li{margin-top:.4em}
.svc-body a{color:var(--plum);text-underline-offset:3px;text-decoration-color:var(--gold)}
.svc-body a.btn{color:inherit;text-decoration:none}
.svc-body a.btn-book{color:var(--white)}
@media (hover:hover){.svc-body a.btn-book:hover{color:var(--plum)}}
.svc-body img{border:var(--line);border-radius:14px;box-shadow:var(--pop);margin-right:6px;max-width:calc(100% - 6px)}
.svc-split{display:flex;flex-direction:column;gap:22px;align-items:stretch}
.svc-split>*{min-width:0}
.svc-fig{margin:0}
.svc-fig img{width:100%;height:auto}
.svc-fig figcaption,.svc-gallery figcaption{font-size:14px;color:var(--ink-soft);margin-top:10px}
.svc-offer{background:var(--white);border:var(--line);border-radius:16px;padding:22px 20px;box-shadow:var(--pop);border-top:4px solid var(--gold)}
.svc-offer>*+*{margin-top:.8em}
.svc-gallery{display:grid;grid-template-columns:1fr;gap:20px}
.svc-gallery figure{margin:0}
.svc-gallery img{width:100%;height:auto}
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
.svc-table{border-collapse:collapse;width:100%;min-width:420px;background:var(--white)}
.svc-table th,.svc-table td{border:1px solid rgba(51,9,31,.25);padding:12px 14px;text-align:left;vertical-align:top}
.svc-table th{background:var(--mist);font-weight:700}
.svc-faq{background:var(--white);border:var(--line);border-radius:14px;box-shadow:4px 4px 0 var(--aubergine);margin-right:4px}
.svc-faq+.svc-faq{margin-top:16px}
.svc-faq summary{cursor:pointer;min-height:44px;padding:14px 48px 14px 18px;font-weight:700;list-style:none;position:relative;display:flex;align-items:center}
.svc-faq summary::-webkit-details-marker{display:none}
.svc-faq summary::after{content:"+";position:absolute;right:18px;font-size:22px;color:var(--plum)}
.svc-faq[open] summary::after{content:"\2212";transform:none}
.svc-faq>div{padding:0 18px 18px}
.svc-body iframe,.svc-body video{max-width:100%;border:var(--line);border-radius:14px}
@media (min-width:700px){
  .svc-ctas,.svc-book{flex-direction:row;flex-wrap:wrap}
  .svc-ctas .btn,.svc-book .btn{width:auto}
  .svc-gallery{grid-template-columns:repeat(2,1fr)}
  .svc-split{flex-direction:row;gap:40px;align-items:center}
  .svc-split>.svc-text{flex:1 1 55%}
  .svc-split>.svc-fig{flex:1 1 45%}
  .svc-body{font-size:18px}
}
@media (min-width:1000px){
  .svc-hero{padding:48px 0}
  .svc-hero .wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
  .svc-hero-img{grid-column:2;grid-row:1/span 2}
  .svc-hero h1{grid-column:1;align-self:end}
  .svc-ctas{grid-column:1;align-self:start}
  .svc-gallery{grid-template-columns:repeat(3,1fr)}
}
/* services-1: blocks used by the converted pages */
.svc-body h6{font-family:var(--sans);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--plum);margin-top:1.4em}
.svc-body .eyebrow{margin-bottom:0}
.svc-points,.svc-cards{display:grid;grid-template-columns:1fr;gap:18px;margin-right:6px}
.svc-point{background:var(--white);border:var(--line);border-radius:14px;padding:18px;box-shadow:4px 4px 0 var(--aubergine)}
.svc-point strong{display:block;font-family:var(--serif);font-size:1.35rem;line-height:1.15}
.svc-point p{margin-top:6px;font-size:16px;color:var(--ink-soft)}
.svc-card{background:var(--white);border:var(--line);border-radius:16px;padding:14px 14px 20px;box-shadow:4px 4px 0 var(--aubergine)}
.svc-card>*+*{margin-top:10px}
.svc-card .svc-fig img,.svc-card>img:first-child{margin-right:0;max-width:100%}
.svc-card img{box-shadow:none}
.svc-card>img{width:48px;height:48px}
.svc-card .svc-fig img{width:100%}
.svc-card h6{margin-top:6px}
.svc-card p{font-size:16px;color:var(--ink-soft)}
.svc-card a{font-weight:700;min-height:44px;display:inline-flex;align-items:center}
.svc-feats{list-style:none;padding:0!important;display:flex;flex-wrap:wrap;gap:8px 18px;font-weight:600}
.svc-hours p{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid rgba(51,9,31,.15);margin:0}
.svc-hours span:last-child{font-weight:700}
.svc-booking .btn{height:auto;padding-block:14px;text-align:left;line-height:1.4}
.svc-booking form{display:grid;gap:14px;margin-top:14px}
.svc-field{display:grid;gap:6px}
.svc-field label{font-weight:700;font-size:15px}
.svc-field input,.svc-field select,.svc-field textarea{width:100%;min-height:48px;padding:12px 14px;border:var(--line);border-radius:12px;background:var(--ivory);font:16px var(--sans);color:var(--ink)}
.svc-field textarea{min-height:110px}
.svc-body .svc-split .svc-fig img,.svc-gallery img{margin-right:0;max-width:100%}
.svc-gallery figure{margin-right:6px}
@media (min-width:700px){.svc-points,.svc-cards{grid-template-columns:repeat(2,1fr)}.svc-booking form{grid-template-columns:1fr 1fr}.svc-booking .svc-field:nth-of-type(n+3),.svc-booking button{grid-column:1/-1}}
@media (min-width:1000px){.svc-points,.svc-cards{grid-template-columns:repeat(3,1fr)}}
/* ---- agent additions below ---- */

/* services-2: booking form, hours, USP list, service cards */
.svc-usps{list-style:none;padding-left:0!important;display:grid;gap:12px}
.svc-usps li{background:var(--white);border:var(--line);border-radius:14px;padding:14px 16px;box-shadow:4px 4px 0 var(--aubergine);margin-right:4px}
.svc-usps strong{display:block}
.svc-body .eyebrow{margin-bottom:0}
.svc-hours{min-width:0}
.svc-form{display:grid;gap:16px}
.svc-field{display:grid;gap:6px}
.svc-field label{font-weight:700;font-size:15px}
.svc-field input,.svc-field select,.svc-field textarea{width:100%;min-height:48px;padding:12px 14px;font:inherit;font-size:16px;color:var(--aubergine);background:var(--white);border:var(--line);border-radius:12px}
.svc-field textarea{min-height:110px}
.svc-form .btn{width:100%}
.svc-services figure{background:var(--white);border:var(--line);border-radius:16px;box-shadow:var(--pop);overflow:hidden;margin-right:6px}
.svc-services figure>img{border:0;border-bottom:var(--line);border-radius:0;box-shadow:none;margin:0;max-width:100%;width:100%}
.svc-services figure>div{padding:16px 18px 20px}
.svc-services figure>div>img{width:48px;height:48px;border:0;box-shadow:none;border-radius:0;margin:0 0 8px}
.svc-services h3{margin-top:0}
@media (min-width:700px){.svc-form{grid-template-columns:1fr 1fr}.svc-field:nth-child(n+5):nth-child(-n+8),.svc-field:nth-child(11),.svc-form>.btn{grid-column:1/-1}}

/* services-3: hero copy wrapper (eyebrow + h1 + intro) */
.svc-hero-copy>*+*{margin-top:.7em}
.svc-hero-copy .eyebrow{margin-bottom:0}
@media (min-width:900px){.svc-hero-copy{grid-column:1;align-self:end}}

/* svc-cats */
.svccat-body{padding:32px 0 56px}
.svccat-desc{margin-bottom:36px;font-size:17px;line-height:1.7;overflow-wrap:anywhere}
.svccat-desc>*+*,.svccat-desc blockquote>*+*{margin-top:1em}
.svccat-desc blockquote{margin:0 0 1em;padding:0;border:0}
.svccat-desc h2{font-size:clamp(1.6rem,6vw,2.4rem)}
.svccat-desc a{color:var(--plum);text-decoration:underline;overflow-wrap:anywhere}
.svccat-offers{display:grid;grid-template-columns:1fr;gap:20px;margin:1.2em 0}
.svccat-offers figure{margin:0;min-width:0}
.svccat-offers img{display:block;width:100%;height:auto;border:var(--line);border-radius:16px;box-shadow:var(--pop)}
@media(min-width:600px){.svccat-offers{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.svccat-offers{grid-template-columns:repeat(3,1fr)}}
.svccat-grid{display:grid;grid-template-columns:1fr;gap:26px}
.svccat-card{display:flex;flex-direction:column;min-width:0;background:var(--white);border:var(--line);border-radius:18px;box-shadow:var(--pop);overflow:hidden}
.svccat-pic{display:block;background:var(--mist);border-bottom:var(--line)}
.svccat-pic img{display:block;width:100%;height:auto;object-fit:contain}
.svccat-text{display:flex;flex-direction:column;gap:10px;padding:18px 20px 22px;flex:1}
.svccat-text h2{font-size:1.35rem;line-height:1.25;margin:0;overflow-wrap:anywhere}
.svccat-text h2 a{color:var(--aubergine);text-decoration:none}
.svccat-text h2 a:hover{color:var(--plum)}
.svccat-text p{font-size:15px;line-height:1.6;color:var(--ink-soft);overflow-wrap:anywhere}
.svccat-more{margin-top:auto;display:inline-flex;align-items:center;min-height:44px;font-weight:700;color:var(--plum);text-decoration:none}
.svccat-more::after{content:"";width:18px;height:1.5px;background:currentColor;margin-left:8px}
.svccat-pager{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;margin:40px 0 28px}
.svccat-pager a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border:var(--line);border-radius:999px;background:var(--white);color:var(--aubergine);font-weight:700;text-decoration:none;box-shadow:3px 3px 0 var(--aubergine)}
.svccat-pager a:hover{background:var(--mist)}
.svccat-pager .svccat-next{margin-left:auto}
.svccat-body .svc-book{margin-top:28px}
@media(min-width:600px){.svccat-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.svccat-grid{grid-template-columns:repeat(3,1fr)}}

/* svc-old-B: older /service/ pages (svcx-*) */
.svc-old{overflow-wrap:anywhere}
.svc-old img{height:auto;display:inline-block;margin:8px 6px 8px 0}
.svc-old video{max-width:100%;height:auto;display:block;margin:12px 0}
.svc-old .svc-book{margin:22px 0}
.svc-next{display:flex;flex-wrap:wrap;gap:8px 14px;margin:28px 0}
.svc-next a{min-height:44px;display:inline-flex;align-items:center}

/* svc-old-A */
.svc-body video{width:100%;height:auto;display:block}
.svc-body blockquote{border-left:4px solid var(--gold);padding-left:14px}
.svc-body figure.svc-fig{margin-right:0}

/* svc-old-C: post prev/next nav and video figures for /service/ pages */
.svc-postnav{display:flex;flex-direction:column;gap:12px;margin-top:2em}
.svc-postnav a{display:block;min-height:44px;padding:12px 16px;border:var(--line);border-radius:14px;text-decoration:none;color:var(--aubergine)}
.svc-postnav a span{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--plum)}
.svc-video video{width:100%;height:auto}
@media(min-width:700px){.svc-postnav{flex-direction:row;justify-content:space-between}.svc-postnav a{flex:1}}

/* safety: nothing wider than a phone */
.svc-body iframe,.svc-body video,.svc-body img,.svc-body table,.svc-body pre{max-width:100%}
.svc-body{overflow-wrap:anywhere}

/* her empty 'Related' heading has no links on a static page */
.svc-related{display:none}
