:root{--page-canvas:#FFFFFF;--page-dot:rgba(26, 26, 26, 0.22);--page-dot-spacing:34px;--primary:#FF0000;--primary-light:#FF2A2A;--accent:#FF0000;--support-blue:#60A5FA;--secondary:#5E4932;--dark:#111111;--text-body:#242424;--text-muted:#3F3F3F;--bg-light:var(--page-canvas);--bg-platinum:var(--page-canvas);--surface:#FFFFFF;--text-base:clamp(1rem, 0.95rem + 0.25vw, 1.125rem);--text-h1:clamp(2.8rem, 5vw + 1rem, 4.5rem);--text-h2:clamp(2rem, 3vw + 0.8rem, 3rem);--text-h3:clamp(1.25rem, 1.5vw + 0.5rem, 1.75rem);--font-primary:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;--font-heading:'DM Sans','Inter',sans-serif;--border-radius:20px;--container-pad:max(1.5rem, 4vw);--shadow-sm:0 1px 3px rgba(0,0,0,0.04),0 1px 2px rgba(0,0,0,0.06);--shadow-md:0 4px 20px rgba(0,0,0,0.06);--shadow-lg:0 20px 50px -12px rgba(0,0,0,0.1);--shadow-xl:0 25px 60px -15px rgba(0,0,0,0.15);--glass-blur:blur(20px) saturate(180%);--transition:all 0.35s cubic-bezier(0.16, 1, 0.3, 1)}*,::after,::before{margin:0;padding:0;box-sizing:border-box}html{background-color:var(--page-canvas)!important;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-overflow-scrolling:touch}body{font-family:var(--font-primary);font-size:var(--text-base);color:var(--text-body);position:relative;isolation:isolate;background:0 0!important;line-height:1.7;overflow-x:hidden;overscroll-behavior-y:none;padding-bottom:90px}body::before{content:"";position:fixed;z-index:-1;inset:0;background-color:var(--page-canvas);background-image:radial-gradient(circle,var(--page-dot) 1px,transparent 1.15px);background-size:var(--page-dot-spacing) var(--page-dot-spacing);background-position:0 0;pointer-events:none}body>section.section:not(.difference-section):not(.section-dark-card){background-color:transparent!important;background-image:none!important}h1,h2,h3{font-family:var(--font-heading);color:var(--dark);font-weight:700;line-height:1.15;letter-spacing:-.02em}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}ul{list-style:none}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 var(--container-pad)}.section{padding:clamp(5rem,10vw,8rem) 0;position:relative}.nav-links{position:relative;display:flex;gap:2px;align-items:center;background:rgba(255,255,255,.6);backdrop-filter:blur(24px) saturate(200%);-webkit-backdrop-filter:blur(24px) saturate(200%);padding:5px;border-radius:50px;border:1px solid rgba(255,255,255,.4);box-shadow:0 8px 40px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.06)}.nav-link{font-family:var(--font-primary);font-weight:500;font-size:.82rem;color:var(--text-body);padding:8px 16px;border-radius:50px;transition:color .25s ease,background .25s ease;position:relative;display:block;z-index:2;white-space:nowrap}.nav-link:hover:not(.active){background:rgba(0,0,0,.04);color:var(--dark)}.nav-link.active{color:#fff;background:0 0}@view-transition{navigation:auto}.tagline{color:var(--secondary);font-weight:700;text-transform:uppercase;letter-spacing:3px;font-size:.75rem;display:block;margin-bottom:.75rem}footer{background:#000;color:rgba(255,255,255,.55);padding:5rem 0 2rem;border-top-left-radius:40px;border-top-right-radius:40px;margin-top:4rem;margin-bottom:-90px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:3rem;margin-bottom:3rem}.footer-heading{color:#fff;font-size:1rem;font-weight:600;margin-bottom:1.25rem}.footer-links li{margin-bottom:.6rem}.footer-links a{transition:var(--transition);font-size:.9rem}.footer-links a:hover{color:var(--secondary);padding-left:4px}.footer-bottom{text-align:center;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.08);font-size:.75rem}@media (max-width:992px){.footer-grid{grid-template-columns:1fr 1fr}.scroll-to-top{bottom:16px!important;height:44px!important}.scroll-to-top{left:24px;transform:translateY(0)!important}.scroll-to-top.visible{transform:translateY(0)!important}}@media (max-width:768px){.footer-grid{grid-template-columns:1fr;gap:2rem}:root{--border-radius:16px}.scroll-to-top{left:16px;height:40px!important;bottom:16px!important}footer{border-top-left-radius:24px;border-top-right-radius:24px;padding:3rem 0 2rem}.section{padding:clamp(3rem,8vw,5rem) 0}.tagline{font-size:.75rem;letter-spacing:2px}}.scroll-to-top{position:fixed;bottom:16px;left:24px;height:48px;padding:0 16px;background:rgba(255,255,255,.7);backdrop-filter:blur(24px) saturate(200%);-webkit-backdrop-filter:blur(24px) saturate(200%);border:1px solid rgba(255,255,255,.4);color:var(--dark);border-radius:50px;display:flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-primary);font-size:.85rem;font-weight:700;letter-spacing:1px;cursor:pointer;box-shadow:0 8px 32px rgba(0,0,0,.12);transition:transform .1s linear,background .3s ease;z-index:1000;opacity:0;pointer-events:none;transform:translateY(calc(-1 * var(--footer-offset,0)))}.scroll-to-top span{margin-top:1px}.scroll-to-top.visible{opacity:1;pointer-events:auto}.scroll-to-top:hover{background:rgba(255,255,255,.9)}@media (min-width:993px){body{padding-bottom:0}.nav-links{gap:2px;padding:5px;background:rgba(245,248,250,.5);backdrop-filter:blur(28px) saturate(185%);-webkit-backdrop-filter:blur(28px) saturate(185%);border:1px solid rgba(255,255,255,.78);box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 16px 38px rgba(34,45,56,.15),0 4px 12px rgba(34,45,56,.08)}.nav-link{padding:9px 15px;font-size:.82rem;line-height:1.25}}@font-face{font-family:"DM Sans";font-style:normal;font-weight:100 1000;font-display:swap;src:url("../assets/fonts/dm-sans-latin-variable.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url("../assets/fonts/inter-latin-variable.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:block;src:url("../assets/fonts/fa-solid-subset.woff2") format("woff2")}:root{--ink:#0d1f24;--ink-soft:#173238;--paper:#ffffff;--cream:#f7f7f6;--cream-deep:#e6e8e7;--accent:#ffffff;--accent-light:#f4f5f4;--accent-dark:#4f5958;--neutral-mark:#a6adab;--gold:var(--accent);--gold-light:var(--accent-light);--gold-dark:var(--accent-dark);--brand-red:#9f2942;--brand-red-dark:#751c30;--green:#2d735f;--amber:#a45e24;--line:rgba(13, 31, 36, 0.14);--line-light:rgba(255, 255, 255, 0.15);--copy:#314044;--muted:#5d6969;--focus:#006e90;--header-height:82px;--primary:var(--brand-red);--primary-light:#be3a54;--secondary:var(--gold);--dark:var(--ink);--text-body:var(--copy);--text-muted:var(--muted);--page-canvas:var(--cream);--bg-light:var(--paper);--bg-platinum:var(--cream);--surface:var(--paper);--border-radius:24px;--container-pad:clamp(1.25rem, 4vw, 3.5rem);--shadow-sm:0 2px 10px rgba(7, 25, 29, 0.06);--shadow-md:0 15px 40px rgba(7, 25, 29, 0.10);--shadow-lg:0 32px 80px rgba(7, 25, 29, 0.17);--transition:180ms ease}html{scroll-padding-top:calc(var(--header-height) + 24px)}body{background:var(--cream)!important;color:var(--copy);padding-bottom:0!important;overscroll-behavior-y:auto}body::before{display:none!important}main{display:block}p{max-width:72ch}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--focus)!important;outline-offset:3px}.skip-link{position:fixed;z-index:5000;top:.75rem;left:.75rem;padding:.8rem 1rem;border-radius:8px;background:#fff;color:var(--ink);font-size:.88rem;font-weight:700;transform:translateY(-160%);transition:transform var(--transition)}.skip-link:focus{transform:translateY(0)}.tagline{display:inline-flex;align-items:center;gap:.55rem;margin-bottom:1rem;color:var(--brand-red);font-size:.75rem;font-weight:800;letter-spacing:.16em;line-height:1.4;text-transform:uppercase}.btn{display:inline-flex;min-height:52px;align-items:center;justify-content:center;gap:.65rem;padding:.78rem 1.35rem;border:1px solid transparent;border-radius:10px;background:var(--brand-red);box-shadow:none;color:#fff;font-family:var(--font-primary);font-size:.88rem;font-weight:750;letter-spacing:.01em;line-height:1.2;text-decoration:none;transition:background-color var(--transition),border-color var(--transition),color var(--transition),transform var(--transition),box-shadow var(--transition)}.btn:hover{background:var(--brand-red-dark);box-shadow:0 12px 28px rgba(116,16,29,.2);color:#fff;transform:translateY(-2px)}.btn--gold{background:var(--gold);color:var(--ink)}.btn--gold:hover{background:#e9ecea;color:var(--ink)}.site-header{position:fixed;z-index:1500;top:0;right:0;left:0;min-height:var(--header-height);border-bottom:1px solid rgba(255,255,255,.1);background:#0b1b20;transition:box-shadow var(--transition),background-color var(--transition)}.site-header.is-scrolled{background:#0b1b20;box-shadow:0 12px 35px rgba(0,0,0,.18)}.site-header__inner{display:grid;min-height:var(--header-height);grid-template-columns:minmax(148px,190px) 1fr auto;align-items:center;gap:clamp(1rem,2.5vw,2.5rem)}.site-brand{display:inline-flex;width:min(190px,24vw);align-items:center}.site-brand img{width:100%;height:auto;filter:none}.site-nav{position:static!important;inset:auto!important;width:auto!important;max-width:none!important;padding:0!important;border:0!important;border-radius:0!important;background:0 0!important;box-shadow:none!important;backdrop-filter:none!important;visibility:visible;opacity:1;transform:none!important}.site-nav .nav-links{display:flex;align-items:center;justify-content:flex-end;gap:clamp(.25rem,1vw,.8rem);padding:0;border:0;border-radius:0;background:0 0;box-shadow:none;backdrop-filter:none}.site-nav .nav-link{position:relative;padding:.55rem .55rem;border-radius:0;color:rgba(255,255,255,.76);font-size:clamp(.73rem, .75vw, .84rem);font-weight:650;letter-spacing:.01em;transition:color var(--transition),background-color var(--transition)}.site-nav .nav-link::after{position:absolute;right:.55rem;bottom:.28rem;left:.55rem;height:1px;background:var(--gold);content:"";opacity:0;transform:scaleX(.25);transition:opacity var(--transition),transform var(--transition)}.site-nav .nav-link.active,.site-nav .nav-link:hover{background:0 0;color:#fff}.site-nav .nav-link.active::after,.site-nav .nav-link:hover::after{opacity:1;transform:scaleX(1)}.site-header__cta{min-height:44px;padding:.7rem 1rem;background:var(--gold);color:var(--ink);white-space:nowrap}.site-header__cta:hover{background:#e9ecea;color:var(--ink)}.menu-toggle,.nav-backdrop,.nav-book-mobile{display:none}.site-footer{margin:0!important;padding:clamp(4rem,7vw,6rem) 0 1.5rem!important;border:0!important;border-radius:0!important;background:#0b1b20!important;color:rgba(255,255,255,.65)}.footer-grid{display:grid;grid-template-columns:minmax(260px,1.4fr) repeat(3,minmax(120px,0.65fr));gap:clamp(2rem,5vw,5rem)}.footer-brand img{width:min(220px,100%);height:auto!important;margin-bottom:1.3rem;filter:brightness(0) invert(1)!important}.footer-brand p{max-width:330px;color:rgba(255,255,255,.59);font-size:.84rem;line-height:1.65}.footer-heading{margin-bottom:1.1rem;color:#fff;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.footer-links li{margin-bottom:.6rem}.footer-links a,.footer-links li{color:rgba(255,255,255,.66);font-size:.82rem;line-height:1.55}.footer-links a:hover{padding-left:0;color:var(--gold-light)}.footer-bottom{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;margin-top:4rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.11)}.footer-bottom p{color:rgba(255,255,255,.48);font-size:.75rem;line-height:1.55}.footer-bottom a{flex:0 0 auto;color:rgba(255,255,255,.58);font-size:.75rem}.footer-legal{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:1rem}.scroll-to-top{right:1rem!important;bottom:1rem!important;left:auto!important;width:54px!important;height:54px!important;padding:0!important;border:1px solid rgba(255,255,255,.34)!important;border-radius:50%!important;background:rgba(11,27,32,.72)!important;-webkit-backdrop-filter:blur(16px) saturate(160%);backdrop-filter:blur(16px) saturate(160%);box-shadow:0 12px 30px rgba(4,14,17,.28),inset 0 1px 0 rgba(255,255,255,.22);color:#fff!important;transform:translateY(20px)!important}.scroll-to-top.visible{transform:translateY(0)!important}.scroll-to-top span{display:flex;flex-direction:column;align-items:center;gap:2px;margin:0;color:#fff;font-size:.75rem;font-weight:750;letter-spacing:.08em;line-height:1;text-transform:uppercase}.scroll-to-top span::before{display:block;content:"^";color:#fff;font-size:.78rem;font-weight:900;letter-spacing:0;line-height:.65}.scroll-to-top:hover{border-color:rgba(255,255,255,.5)!important;background:rgba(11,27,32,.9)!important}.site-scroll-progress{position:absolute;right:0;bottom:-1px;left:0;height:3px;background:var(--green);box-shadow:0 0 12px rgba(45,115,95,.48);pointer-events:none;transform:scaleX(var(--scroll-progress,0));transform-origin:left center;will-change:transform}.motion-reveal{opacity:1!important;filter:none;scale:0.994;translate:0 18px;transition:scale 760ms cubic-bezier(.16, 1, .3, 1) var(--motion-delay, 0ms),translate 760ms cubic-bezier(.16, 1, .3, 1) var(--motion-delay, 0ms);will-change:scale,translate}.motion-reveal.motion-visible{opacity:1!important;filter:none;scale:1;translate:0 0}.motion-reveal.motion-settled{will-change:auto}@view-transition{navigation:auto}::view-transition-old(root){animation:page-dissolve-out 160ms ease both}::view-transition-new(root){animation:page-dissolve-in 360ms cubic-bezier(.16,1,.3,1) both}@keyframes page-dissolve-out{to{transform:scale(.997)}}@keyframes page-dissolve-in{from{transform:translateY(7px) scale(.998)}}@media (max-width:1120px){:root{--header-height:74px}.site-header__inner{grid-template-columns:minmax(140px,175px) 1fr auto}.site-nav .nav-link{padding-inline:0.35rem}.site-nav .nav-link::after{right:.35rem;left:.35rem}}@media (max-width:1120px){.site-header__inner{grid-template-columns:1fr auto}.site-brand{width:170px}.site-header__cta{display:none}.menu-toggle{position:relative;z-index:3;display:inline-grid;width:46px;height:46px;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:0 0;color:#fff;cursor:pointer}.menu-toggle__lines,.menu-toggle__lines::after,.menu-toggle__lines::before{display:block;width:20px;height:1px;background:currentColor;content:"";transition:transform var(--transition),opacity var(--transition)}.menu-toggle__lines{position:relative}.menu-toggle__lines::before{position:absolute;transform:translateY(-6px)}.menu-toggle__lines::after{position:absolute;transform:translateY(6px)}.menu-toggle[aria-expanded=true] .menu-toggle__lines{background:0 0}.menu-toggle[aria-expanded=true] .menu-toggle__lines::before{transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-toggle__lines::after{transform:rotate(-45deg)}.site-nav{position:fixed!important;z-index:2;top:var(--header-height)!important;right:0!important;bottom:auto!important;left:0!important;width:auto!important;max-width:none!important;display:block;visibility:hidden;padding:1.1rem var(--container-pad) 1.5rem!important;border:0!important;border-top:1px solid rgba(255,255,255,.1)!important;border-radius:0!important;background:#0b1b20!important;opacity:0;transform:translateY(-8px)!important;transition:opacity var(--transition),transform var(--transition)}.site-nav.mobile-open{visibility:visible;max-height:calc(100dvh - var(--header-height));overflow-y:auto;overscroll-behavior:contain;opacity:1;transform:translateY(0)!important}.site-nav .nav-links{display:grid;justify-content:stretch;gap:0}.site-nav .nav-link{padding:.9rem .2rem;border-bottom:1px solid rgba(255,255,255,.1);font-size:.95rem}.site-nav .nav-link::after{display:none}.nav-book-mobile{display:flex;width:100%;margin-top:1rem}.nav-backdrop{position:fixed;z-index:1;top:var(--header-height);right:0;bottom:0;left:0;background:rgba(0,0,0,.45);opacity:0}.nav-backdrop.active{display:block;opacity:1}body.nav-open{overflow:hidden}}@media (max-width:992px){.footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.footer-brand{grid-column:1/-1}}@media (max-width:720px){.section{padding:4.5rem 0}.motion-reveal{filter:none;scale:0.996;translate:0 12px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom a{display:inline-block;margin-top:.75rem}.footer-legal{margin-top:.75rem}.footer-legal a{margin-top:0}}@media (max-width:430px){.site-brand{width:148px}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.site-scroll-progress{display:none!important}::view-transition-new(root),::view-transition-old(root){animation:none!important}.motion-reveal{opacity:1!important;filter:none!important;scale:1!important;translate:none!important}*,::after,::before{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:0s!important;animation-iteration-count:1!important}}@media print{.scroll-to-top,.site-header,footer{display:none!important}.site-scroll-progress,.skip-link{display:none!important}body{background:#fff!important;opacity:1!important;animation:none!important}.motion-reveal,.motion-reveal.motion-visible{opacity:1!important;filter:none!important;scale:1!important;translate:none!important;transform:none!important;animation:none!important}}@media screen{.tagline{font-size:.75rem}.footer-links a,.footer-links li,.nav-link{font-size:.875rem}.footer-brand p{font-size:.9rem}.footer-bottom a,.footer-bottom p{font-size:.78rem}}@media screen{.menu-toggle,.site-header .nav-link{font-size:.875rem!important}.scroll-to-top span{font-size:.75rem!important}.footer-bottom a,.footer-bottom p{font-size:.875rem}}@media screen and (max-width:720px){.footer-legal a{display:inline-flex;min-height:46px;align-items:center;padding-block:0.55rem}}.footer-bottom{margin-top:0}.footer-bottom p{text-align:left}.site-footer{padding-top:4rem}.footer-grid{gap:2.5rem;margin-bottom:0;padding-bottom:2.5rem}.footer-brand p{max-width:24rem;font-size:.9rem;line-height:1.8}.footer-links a{text-underline-offset:4px}.footer-links a:hover{text-decoration:underline}.motion-reveal{translate:0 10px;filter:none;transform:none;transition:opacity .4s ease,translate .4s ease}.motion-reveal.motion-settled,.motion-reveal.motion-visible{translate:0 0;filter:none;transform:none}@media (max-width:720px){.footer-grid{gap:2rem 1.25rem}.footer-heading{font-size:.8rem}.footer-links{font-size:.9rem}}.footer-bottom{align-items:flex-start;gap:1.5rem 2.5rem}.footer-bottom>p{flex:1 1 50%}.footer-legal{flex:0 1 28rem;justify-content:flex-end;flex-wrap:wrap;gap:.75rem 1.25rem}@media (min-width:1121px) and (max-width:1200px){.site-header__inner{gap:1rem}.site-nav .nav-links{gap:.45rem}.site-nav .nav-link{font-size:.84rem}}@media (max-width:620px){.footer-legal{justify-content:flex-start}}

/* Fixed-header menu paint stability. */
@media(max-width:1120px){.menu-toggle{transform:translateZ(0)}}

/* Agreement reference readability. */

/* Shared detail-page layout. Brand, navigation and footer come from site.min.css. */
.service-page { background: #fff; }
.service-page main { overflow: clip; }
.service-hero { background: var(--cream, #f7f7f6); padding: calc(var(--header-height, 88px) + 2.2rem) 0 4rem; border-bottom: 1px solid #dfe4e3; }
.service-breadcrumb { margin-bottom: 2.8rem; font-size: .9rem; line-height: 1.5; }
.service-breadcrumb ol { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .8rem; list-style: none; margin: 0; padding: 0; }
.service-breadcrumb li { display: inline-flex; align-items: center; gap: .8rem; color: #596669; }
.service-breadcrumb li + li::before { content: "/"; color: #7a8586; }
.service-breadcrumb a { color: var(--ink, #0d1f24); text-decoration: underline; text-underline-offset: .2em; }
.service-hero__grid { display: grid; grid-template-columns: minmax(0, 1.85fr) minmax(285px, 1fr); gap: clamp(2rem, 5vw, 5rem); align-items: start; }
.service-hero__copy { max-width: 760px; }
.service-page .tagline { font-size: .8rem; letter-spacing: .1em; }
.service-hero h1 { color: var(--ink, #0d1f24); font-size: clamp(2.35rem, 3.7vw, 3.7rem); line-height: 1.1; letter-spacing: -.035em; font-weight: 750; margin: 1rem 0 1.5rem; text-wrap: balance; overflow-wrap: break-word; }
.service-lead { font-size: 1.14rem; line-height: 1.7; color: #526165; max-width: 58ch; margin: 0 0 1.4rem; }
.service-inline-link { display: inline-flex; align-items: baseline; gap: .55rem; color: var(--brand-red-dark, #7c1d35); font-size: .96rem; font-weight: 650; text-decoration: underline; text-underline-offset: .25em; }
.service-inline-link:hover { color: var(--ink, #0d1f24); }
.service-booking { padding: 1.8rem; background: #fff; border: 1px solid #d6ddda; border-top: 4px solid #2b745e; border-radius: 18px; box-shadow: 0 8px 26px #0d1f2406; }
.service-booking__label { font-size: .9rem; font-weight: 650; color: #596669; margin: 0 0 .7rem; }
.service-booking h2 { font-size: clamp(1.65rem, 2.2vw, 2.1rem); font-weight: 750; letter-spacing: -.035em; line-height: 1.2; color: var(--ink, #0d1f24); margin: 0 0 1rem; }
.service-booking > p:not(.service-booking__label) { font-size: .95rem; line-height: 1.65; color: #596669; margin-bottom: 1.4rem; }
.service-booking .btn { width: 100%; min-height: 48px; }
.service-booking__delivery { display: grid; gap: .35rem; margin-top: 1.5rem; padding-top: 1.3rem; border-top: 1px solid #e2e6e4; font-size: .9rem; line-height: 1.6; }
.service-booking__delivery span { color: #596669; }
.service-reading-section { padding: 3.5rem 0; }
.service-section-grid { display: grid; grid-template-columns: 1fr 2fr; gap: 3rem; align-items: start; }
.service-page h2 { line-height: 1.2; letter-spacing: -.025em; }
.service-section-grid h2 { font-size: 1.75rem; max-width: 18ch; margin: 0; }
.service-section-grid > p { margin: 0; color: #526165; line-height: 1.8; font-size: 1.06rem; max-width: 70ch; }
.service-check-section { padding: 3.5rem 0 4rem; background: var(--cream, #f7f7f6); scroll-margin-top: calc(var(--header-height, 88px) + 1rem); }
.service-section-intro { max-width: 680px; margin-bottom: 2rem; }
.service-section-intro h2 { color: var(--ink, #0d1f24); font-size: clamp(1.9rem, 3vw, 2.55rem); margin: .75rem 0 1rem; }
.service-section-intro > p { color: #526165; line-height: 1.75; font-size: 1rem; }
.service-check-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.service-check { display: flex; align-items: flex-start; gap: 1.3rem; padding: 1.7rem; background: #fff; border: 1px solid #dce2df; border-radius: 14px; }
.service-check__number { color: #2b745e; font-size: .84rem; font-weight: 750; padding-top: .2rem; }
.service-check h3, .service-output-list h3, .service-boundary h3 { font-size: 1.12rem; line-height: 1.45; margin: 0 0 .55rem; color: var(--ink, #0d1f24); }
.service-check p { margin: 0; color: #526165; font-size: 1rem; line-height: 1.7; }
.service-output-section { padding: 4rem 0; }
.service-output-grid { display: grid; grid-template-columns: 1fr 1.3fr; gap: 4rem; }
.service-output-list { list-style: none; margin: 0; padding: 0; }
.service-output-list li { padding: 0 0 1.4rem 1.4rem; border-left: 2px solid #2b745e; margin-bottom: 1.5rem; }
.service-output-list li:last-child { margin-bottom: 0; padding-bottom: 0; }
.service-output-list p { color: #526165; line-height: 1.7; margin: 0; font-size: 1rem; }
.service-boundary-section { padding: 0 0 4rem; }
.service-boundary { display: grid; grid-template-columns: 1.25fr 1fr; gap: 3rem; padding: 2.5rem; border: 1px solid #dbe1df; border-radius: 18px; background: #f7f8f7; }
.service-boundary h2 { font-size: 1.8rem; margin: 0 0 1rem; }
.service-boundary p { color: #526165; font-size: .98rem; line-height: 1.75; margin-bottom: 1rem; }
.service-boundary__note { border-left: 1px solid #cfd7d3; padding-left: 2rem; }
.service-boundary__note p:last-child { margin-bottom: 0; }
.service-next { border-top: 1px solid #dbe1df; padding: 3.5rem 0 2rem; }
.service-next__heading { display: flex; gap: 2rem; align-items: center; justify-content: space-between; }
.service-next__heading h2 { font-size: clamp(1.7rem, 2.5vw, 2.4rem); margin: .7rem 0 1rem; }
.service-next__heading p { max-width: 64ch; color: #526165; font-size: 1rem; line-height: 1.7; margin: 0; }
.service-next__heading > .btn { flex: 0 0 auto; min-height: 48px; }
.service-related { display: flex; flex-wrap: wrap; gap: 1rem 2rem; padding-top: 2rem; margin-top: 2rem; border-top: 1px solid #e2e6e4; }
.service-related a { display: inline-flex; gap: .5rem; color: var(--ink, #0d1f24); font-size: .94rem; font-weight: 650; text-decoration: underline; text-underline-offset: .22em; min-height: 44px; align-items: center; }
.service-related a:hover { color: var(--brand-red-dark, #7c1d35); }
@media (max-width: 900px) {
  .service-hero__grid { grid-template-columns: 1fr; gap: 2rem; }
  .service-hero { padding-bottom: 3rem; }
  .service-booking { max-width: 620px; }
  .service-section-grid { grid-template-columns: 1fr; gap: 1.2rem; }
  .service-section-grid h2 { max-width: none; }
  .service-output-grid { grid-template-columns: 1fr; gap: 1rem; }
  .service-boundary { grid-template-columns: 1fr; gap: 1.7rem; }
  .service-boundary__note { border-left: 0; border-top: 1px solid #cfd7d3; padding: 1.7rem 0 0; }
  .service-next__heading { display: block; }
  .service-next__heading > .btn { margin-top: 1.5rem; }
}
@media (max-width: 600px) {
  .service-hero { padding-top: calc(var(--header-height, 80px) + 1.4rem); }
  .service-breadcrumb { margin-bottom: 2rem; font-size: .875rem; }
  .service-breadcrumb li[aria-current="page"] { display: none; }
  .service-hero h1 { font-size: 2.35rem; }
  .service-lead { font-size: 1.05rem; }
  .service-booking { padding: 1.5rem; }
  .service-check-grid { grid-template-columns: 1fr; }
  .service-check { padding: 1.4rem; gap: 1rem; }
  .service-reading-section, .service-check-section, .service-output-section { padding: 2.5rem 0; }
  .service-boundary { padding: 1.5rem; }
  .service-boundary-section { padding-bottom: 2.5rem; }
  .service-next { padding-top: 2.5rem; }
  .service-next__heading > .btn { width: 100%; }
}
@media print {
  .service-booking .btn, .service-next, .service-inline-link { display: none; }
  .service-hero { padding: 1rem 0; }
  .service-hero__grid, .service-section-grid, .service-output-grid, .service-boundary { grid-template-columns: 1fr; gap: 1rem; }
  .service-check, .service-booking, .service-boundary { break-inside: avoid; box-shadow: none; }
}
