/* Public Sans is loaded from each page's Google Fonts link (no @import chain) */
/* Androfill NZ shared chrome styles — finalized nav values.
   Scoped to .ukc- so leftover inline page CSS cannot clash. */
/* ── masthead: white band below the navy nav, large centred navy logo (desktop) ── */
.ukc-mastslot{height:0}.ukc-mast,.ukc-mastslot{box-sizing:border-box}.ukc-mast{background:#fff;display:flex;justify-content:center;align-items:center;padding:0 22px;height:118px}@media(min-width:920px){.ukc-mastslot{height:118px;background:#fff}}
.ukc-mastlink{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none}
.ukc-mastlink img{width:250px;max-width:70vw;height:69px;display:block;object-fit:contain}
.ukc-mastsub{font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:13px;letter-spacing:3.4px;text-transform:uppercase;color:#003266;font-weight:600}
@media(max-width:759px){.ukc-mast{padding:16px 18px 7px}.ukc-mastlink img{width:198px}.ukc-mastsub{font-size:12.5px;letter-spacing:2.6px}}

.ukc-nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:var(--navy);color:#fff}body{padding-top:var(--ukc-navh,84px)}@media(min-width:960px){body{padding-top:var(--ukc-navh,76px)}}html{scroll-padding-top:var(--ukc-navh,84px)}@media(max-width:760px){body{padding-top:var(--ukc-navh,84px)}}
.ukc-bar{max-width:1180px;margin:0 auto;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.ukc-logo{display:flex;text-decoration:none}
.ukc-logo img{height:48px;width:auto;max-width:50vw;object-fit:contain;display:block}
.ukc-menu{display:none;align-items:center;gap:4px;flex-wrap:nowrap;flex:0 0 auto}
.ukc-menu a{color:#cdd9ec;text-decoration:none;font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:15px;letter-spacing:1.3px;text-transform:uppercase;padding:10px 13px;border-radius:6px;white-space:nowrap}
.ukc-menu a:hover{background:rgba(255,255,255,.08);color:#fff}
.ukc-menu a[aria-current=page]{color:#9db9de}
.ukc-menu a.ukc-book{background:var(--green);color:#fff;font-weight:700;white-space:nowrap}

/* desktop dropdowns */
.ukc-dd{position:relative;display:flex}
.ukc-ddb{background:none;border:none;cursor:pointer;color:#cdd9ec;font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:15px;letter-spacing:1.3px;text-transform:uppercase;padding:10px 13px;border-radius:6px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;line-height:1.6}
.ukc-ddb:hover{background:rgba(255,255,255,.08);color:#fff}
.ukc-caret{font-size:12.5px;transition:transform .2s}
.ukc-panel{position:absolute;top:calc(100% + 4px);left:0;min-width:236px;background:#fff;border-radius:10px;box-shadow:0 18px 44px rgba(6,18,38,.3);padding:8px;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .16s,transform .16s,visibility .16s;z-index:90}
.ukc-dd:last-of-type .ukc-panel{left:auto;right:0}
.ukc-dd:hover .ukc-panel,.ukc-dd:focus-within .ukc-panel,.ukc-dd.open .ukc-panel{opacity:1;visibility:visible;transform:none}
.ukc-dd:hover .ukc-caret,.ukc-dd:focus-within .ukc-caret,.ukc-dd.open .ukc-caret{transform:rotate(180deg)}
.ukc-panel a{display:block;color:var(--navy);text-decoration:none;font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:12.5px;letter-spacing:.8px;text-transform:uppercase;padding:10px 12px;border-radius:6px;white-space:nowrap}
.ukc-panel a:hover{background:#f3f6fa;color:var(--navy)}
.ukc-panel a[aria-current=page]{color:var(--steel);background:#eef4fb}
.ukc-burger{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;background:none;border:none;cursor:pointer;padding:0}
.ukc-burger span{display:block;height:2px;width:24px;margin:0 auto;background:#fff;border-radius:2px;transition:.25s}
body.ukc-open .ukc-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
body.ukc-open .ukc-burger span:nth-child(2){opacity:0}
body.ukc-open .ukc-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(min-width:1200px){.ukc-menu{display:flex}.ukc-burger{display:none}}
@media(min-width:1000px) and (max-width:1180px){.ukc-bar{padding:16px 16px}.ukc-logo img{height:40px}.ukc-menu{gap:1px}.ukc-menu a,.ukc-menu .ukc-ddb{font-size:13.5px;letter-spacing:1px;padding:9px 8px}}

.ukc-ov{position:fixed;inset:0;background:rgba(6,18,38,.55);z-index:1190;opacity:0;visibility:hidden;transition:.25s}
.ukc-ov.open{opacity:1;visibility:visible}
.ukc-drawer{position:fixed;top:0;right:0;bottom:0;width:min(86vw,340px);background:var(--navy);color:#fff;z-index:1200;transform:translateX(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);overflow-y:auto;padding:18px 20px 40px}
.ukc-drawer.open{transform:none}
.ukc-dtop{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.ukc-dtop img{height:40px;width:auto}
.ukc-x{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;color:#fff;font-size:28px;line-height:1;cursor:pointer;width:44px;height:44px}
.ukc-acts{display:flex;gap:10px;margin-bottom:18px}
.ukc-acts a{flex:1;text-align:center;text-decoration:none;font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:12.5px;letter-spacing:1.2px;text-transform:uppercase;font-weight:700;padding:13px 10px;border-radius:5px}
.ukc-acts .b{background:var(--green);color:#fff}
.ukc-acts .t{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.5)}
.ukc-grp{font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:12.5px;letter-spacing:2px;text-transform:uppercase;color:#7f9bc4;margin:18px 0 4px}
.ukc-drawer a.ukc-home,.ukc-drawer .ukc-grp+a,.ukc-drawer a[href]{}
.ukc-drawer>a{display:block;color:#e6edf7;text-decoration:none;font-size:16px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.ukc-drawer>a[aria-current=page]{color:#9db9de}

.ukc-sticky{position:fixed;left:0;right:0;bottom:0;z-index:60;background:rgba(10,36,71,.97);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid rgba(255,255,255,.14)}
.ukc-sb{max-width:680px;margin:0 auto;padding:11px 16px;display:flex;gap:10px}
.ukc-sb a{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;border-radius:4px;font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:12.5px;letter-spacing:1.4px;text-transform:uppercase;font-weight:700;padding:15px 12px}
.ukc-sb a.t{flex:0 0 38%;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55)}
.ukc-sb a.b{background:var(--green);color:#fff}
@media(min-width:1000px){.ukc-sticky{display:none}}

.ukc-foot{background:var(--navy);color:#cdd9ec;padding:36px 0 30px;margin-top:20px}
.ukc-finner{max-width:1120px;margin:0 auto;padding:0 22px}
.ukc-frow{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
.ukc-flogo img{height:38px;width:auto;opacity:.95}
.ukc-fcontact{font-size:14px}
.ukc-fsocial{display:flex;gap:10px;align-items:center}
.ukc-fsocial a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.28);color:#cdd9ec;transition:background .18s,color .18s,border-color .18s}
.ukc-fsocial a:hover{background:#fff;color:var(--navy);border-color:#fff}
.ukc-foot a{color:#cdd9ec;text-decoration:none}
.ukc-foot .ukc-fcontact a{color:#fff;font-weight:600}
.ukc-flinks{display:flex;flex-wrap:wrap;gap:8px 22px;margin:20px 0 4px}
.ukc-flinks a{font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#9db9de}
.ukc-flinks a:hover{color:#fff}
.ukc-legal{font-family:"JetBrains Mono",monospace;font-size:9px;letter-spacing:.6px;color:rgba(255,255,255,.5);line-height:1.7;border-top:1px solid rgba(255,255,255,.12);padding-top:16px;margin-top:16px}
/* ── quick-links tabs — matches the homepage .htabs treatment ── */
.ukc-ribwrap{background:var(--cream,#f3f6fa);padding:22px}
.ukc-ribbon{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line,#dbe4f0);border:1px solid var(--line,#dbe4f0);border-radius:12px;overflow:hidden}
.ukc-ribbon a{background:#fff;padding:15px 15px 14px;text-decoration:none;display:flex;flex-direction:column;gap:5px;min-height:44px;transition:background .18s}
.ukc-ribbon a:hover{background:var(--cream,#f3f6fa)}
.ukc-rlab{font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:12.5px;letter-spacing:1.2px;text-transform:uppercase;font-weight:700;color:var(--navy,#0a2447);display:flex;align-items:center;justify-content:space-between;gap:8px}
.ukc-rarrow{color:var(--steel,#3a6dab);transition:transform .2s}
.ukc-ribbon a:hover .ukc-rarrow{transform:translateX(3px)}
.ukc-rd{font-family:var(--sans,Inter,system-ui,sans-serif);font-size:12.5px;letter-spacing:0;text-transform:none;color:var(--slate,#3f5570);line-height:1.45}
/* before & after carries navy weight; booking carries green — as on the homepage */
.ukc-ribbon a.ukc-rnv{background:var(--navy,#0a2447)}
.ukc-ribbon a.ukc-rnv:hover{background:var(--deep,#163763)}
.ukc-ribbon a.ukc-rnv .ukc-rlab,.ukc-ribbon a.ukc-rnv .ukc-rarrow{color:#fff}
.ukc-ribbon a.ukc-rnv .ukc-rd{color:rgba(255,255,255,.85)}
.ukc-ribbon a.ukc-rbk{background:var(--green,#2f8a55)}
.ukc-ribbon a.ukc-rbk:hover{background:#2a7c4c}
.ukc-ribbon a.ukc-rbk .ukc-rlab,.ukc-ribbon a.ukc-rbk .ukc-rarrow{color:#fff}
.ukc-ribbon a.ukc-rbk .ukc-rd{color:rgba(255,255,255,.85)}
.ukc-ribbon a.ukc-ron{pointer-events:none;background:var(--cream,#f3f6fa)}
.ukc-ribbon a.ukc-ron .ukc-rlab{color:var(--steel,#3a6dab)}
/* a tilted tile must paint above its neighbours, not under them */
.ukc-ribbon a.ukb-bend{position:relative;z-index:0}
.ukc-ribbon a.ukb-bend:hover{z-index:2}
@media(min-width:760px){
  .ukc-ribbon{grid-template-columns:repeat(4,minmax(0,1fr))}
  .ukc-ribbon a{padding:17px 20px 16px}
}

body{padding-bottom:76px}
@media(min-width:1000px){body{padding-bottom:0}}

/* ── floating contact button: WhatsApp on mobile, Email on desktop ── */
.ukc-ask{position:fixed;right:18px;bottom:88px;z-index:120;display:flex;flex-direction:column;align-items:flex-end}
@media(min-width:1000px){.ukc-ask{bottom:26px;right:26px}}
.ukc-ask-btn{display:inline-flex;align-items:center;gap:11px;text-decoration:none;padding:9px 16px 9px 9px;border-radius:34px;background:var(--green,#2f8a55);color:#fff;box-shadow:0 8px 24px rgba(6,18,38,.32);transition:transform .2s ease,box-shadow .2s ease}
.ukc-ask-btn.mail{background:var(--steel,#3a6dab)}
.ukc-ask-btn:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(6,18,38,.38);color:#fff}
.ukc-ask-btn .ukc-ask-ic{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.16);flex:0 0 auto}
.ukc-ask-lbl{font-family:var(--body,'Inter',system-ui,sans-serif);font-size:15px;font-weight:600;white-space:nowrap}
/* one button per viewport: WhatsApp below 1000px, Email at and above */
.ukc-ask-btn.mail{display:none}
@media(min-width:1000px){.ukc-ask-btn.wa{display:none}.ukc-ask-btn.mail{display:inline-flex}}
@media(prefers-reduced-motion:reduce){.ukc-ask-btn{transition:none}.ukc-ask-btn:hover{transform:none}}

/* ── breadcrumbs (static HTML, above the hero) ── */
.ukc-crumbs{background:var(--cream,#f3f6fa);border-bottom:1px solid #dbe4f0}
.ukc-crumbs-in{max-width:1180px;margin:0 auto;padding:11px 22px;display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:12.5px;letter-spacing:1px;text-transform:uppercase}
.ukc-crumbs a{color:#3a6dab;text-decoration:none}
.ukc-crumbs a:hover{color:#0a2447;text-decoration:underline}
.ukc-crumbs span[aria-current]{color:#3f5570}
.ukc-crumbs .sep{color:#a9bad2}
@media(max-width:759px){.ukc-crumbs{display:none}}
@media(max-width:759px){.ukc-crumbs{display:none}}

/* ── related reading ── */
.ukc-rel{background:var(--cream,#f3f6fa);border-top:1px solid #dbe4f0;padding:44px 0}
.ukc-rel-in{max-width:1180px;margin:0 auto;padding:0 22px}
.ukc-rel .eb{font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:12.5px;letter-spacing:2px;text-transform:uppercase;color:#3a6dab;margin:0 0 16px}
.ukc-rel-grid{display:grid;gap:12px;grid-template-columns:1fr}
@media(min-width:760px){.ukc-rel-grid{grid-template-columns:repeat(3,1fr)}}
.ukc-rel-card{display:block;background:#fff;border:1px solid #dbe4f0;border-radius:12px;padding:20px 22px;text-decoration:none;transition:border-color .18s,transform .18s}
.ukc-rel-card:hover{border-color:#3a6dab;transform:translateY(-2px)}
.ukc-rel-card .t{font-family:Newsreader,Georgia,serif;font-size:18px;font-weight:500;color:#0a2447;line-height:1.3;display:block}
.ukc-rel-card .d{font-family:Inter,system-ui,sans-serif;font-size:13.5px;color:#3f5570;line-height:1.55;margin-top:7px;display:block}


/* ══ Button effects — shared across every NZ page ══════════════════════════
   ukb-bend  : cursor-driven 3D flex + elastic release (default, everywhere)
   ukb-glass : frosted panel for buttons sitting on navy or photography
   ukb-count : gain figure ticks 0 -> +30% on hover (estimator CTA only)
   JS wiring lives in nz-chrome.js. All respect prefers-reduced-motion. */

.ukb-bend{transform-style:preserve-3d;will-change:transform;transition:transform .62s cubic-bezier(.16,1.44,.34,1),box-shadow .3s}
.ukb-bend>span{display:inline-block;will-change:transform;transition:transform .68s cubic-bezier(.16,1.4,.34,1)}
.ukb-bend:active{transition:transform .1s ease}

.ukb-glass{position:relative;isolation:isolate;overflow:hidden;color:#fff;border:1px solid rgba(255,255,255,.38);background:rgba(255,255,255,.13);-webkit-backdrop-filter:blur(16px) saturate(1.7);backdrop-filter:blur(16px) saturate(1.7);box-shadow:0 10px 30px rgba(6,18,38,.3),inset 0 1px 0 rgba(255,255,255,.55),inset 0 -1px 0 rgba(255,255,255,.14);transition:background .4s ease,border-color .4s ease,box-shadow .4s ease,transform .55s cubic-bezier(.2,1.5,.35,1)}
.ukb-glass>span{position:relative;z-index:3}
.ukb-glass:hover{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.6);-webkit-backdrop-filter:blur(22px) saturate(1.9);backdrop-filter:blur(22px) saturate(1.9);box-shadow:0 18px 42px rgba(6,18,38,.38),inset 0 1px 0 rgba(255,255,255,.7),inset 0 -1px 0 rgba(255,255,255,.18)}
.ukb-glass::before{content:"";position:absolute;z-index:1;inset:-40%;background:radial-gradient(28% 44% at var(--mx,50%) var(--my,50%),rgba(255,255,255,.6),rgba(255,255,255,.15) 42%,transparent 68%);opacity:0;transition:opacity .35s ease;pointer-events:none}
.ukb-glass:hover::before{opacity:1}
.ukb-glass::after{content:"";position:absolute;z-index:2;inset:0;background:linear-gradient(105deg,transparent 34%,rgba(255,255,255,.36) 48%,transparent 60%);transform:translateX(-130%);transition:transform .85s cubic-bezier(.3,.9,.2,1);pointer-events:none}
.ukb-glass:hover::after{transform:translateX(130%)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.ukb-glass{background:rgba(10,36,71,.74)}.ukb-glass:hover{background:rgba(10,36,71,.84)}}

/* count: the gain figure ticks 0 -> +30% over ~1s on hover. Tabular numerals so
   the digits never shift the button. Click navigates immediately — no delay. */
.ukb-count{position:relative}
.ukb-num{font-family:"Public Sans",Inter,system-ui,sans-serif;font-weight:700;font-variant-numeric:tabular-nums;opacity:.78;transition:opacity .3s ease}
.ukb-count:hover .ukb-num,.ukb-count:focus-visible .ukb-num{opacity:1}
@media (prefers-reduced-motion:reduce){.ukb-num{transition:none}}

/* sticky-bar Text Us reads as glass on the translucent navy bar */
.ukc-sticky .t.ukb-glass{background:rgba(255,255,255,.15);color:#fff}
.ukc-sticky .t.ukb-glass:hover{background:rgba(255,255,255,.24)}

@media (prefers-reduced-motion:reduce){
 .ukb-bend,.ukb-bend>span,.ukb-glass,.ukb-glass::before,.ukb-glass::after,.ukb-num{transition-duration:.01ms!important}
 .ukb-glass:hover{transform:none}
}
/* glass overrides — must out-specify page-level hero / overlay rules.
   ONLY navy contexts: .hero-sm is navy; .uk-hero (homepage) is LIGHT — never glass there. */
.hero-sm .btn.ghost.ukb-glass{background:rgba(255,255,255,.13);color:#fff;border:1px solid rgba(255,255,255,.38)}
.hero-sm .btn.ghost.ukb-glass:hover{background:rgba(255,255,255,.22);color:#fff;border-color:rgba(255,255,255,.6)}
.ba .ov .go.ukb-glass{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.45)}
.ba .ov .go.ukb-glass:hover{background:rgba(255,255,255,.26);border-color:rgba(255,255,255,.7)}
/* ── camera flash: before/after CTAs. Shutter dip, white bloom, then navigate. ── */
.ukb-flash{position:relative;isolation:isolate;overflow:hidden}
.ukb-flashing{animation:ukbShutter 700ms cubic-bezier(.2,.7,.3,1) both}
@keyframes ukbShutter{0%{filter:brightness(1)}9%{filter:brightness(.35)}16%{filter:brightness(3.2) saturate(.25)}40%{filter:brightness(2.4) saturate(.5)}70%{filter:brightness(1.1)}100%{filter:brightness(1)}}
.ukb-bulb{position:absolute;z-index:5;inset:0;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(circle at 50% 50%,#fff 0%,rgba(255,255,255,.97) 42%,rgba(255,255,255,.82) 68%,rgba(255,255,255,.55) 100%);animation:ukbBulb 700ms cubic-bezier(.2,.7,.3,1) both}
@keyframes ukbBulb{0%{opacity:0}8%{opacity:1}30%{opacity:1}48%{opacity:.85}72%{opacity:.3}100%{opacity:0}}
.ukb-veil{position:fixed;inset:0;z-index:9999;pointer-events:none;background:#fff;opacity:0;animation:ukbVeil 700ms cubic-bezier(.2,.7,.3,1) both}
@keyframes ukbVeil{0%{opacity:0}8%{opacity:.72}26%{opacity:.5}52%{opacity:.16}100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.ukb-veil{animation:none!important;display:none}}
@media (prefers-reduced-motion:reduce){.ukb-flashing,.ukb-bulb{animation:none!important}}
/* ── before/after CTAs: steel blue, so the camera flash actually reads
      (a white bloom over a white button is invisible) ── */
.btn.ukb-blue{background:var(--steel,#3a6dab);color:#fff;border:1px solid transparent;box-shadow:0 8px 20px rgba(58,109,171,.32)}
.btn.ukb-blue:hover{background:#33619a;color:#fff}
.uk-hero .btn.ukb-blue,.hero-sm .btn.ukb-blue{background:var(--steel,#3a6dab);color:#fff;border:1px solid transparent}
.cta .cta-actions a.sec.ukb-blue{background:var(--steel,#3a6dab);border-color:transparent;box-shadow:0 8px 20px rgba(58,109,171,.3)}
.cta .cta-actions a.sec.ukb-blue:hover{background:#4479b8;border-color:transparent}
/* ── "lights": the cursor-tracked specular bloom + sheen sweep from .ukb-glass,
      without the translucent white fill (which is invisible on light backgrounds).
      Lets a solid button carry exactly the same highlights as the glass ones. ── */
.ukb-lights{position:relative;isolation:isolate;overflow:hidden}
.ukb-lights>span{position:relative;z-index:3}
.ukb-lights::before{content:"";position:absolute;z-index:1;inset:-40%;pointer-events:none;background:radial-gradient(28% 44% at var(--mx,50%) var(--my,50%),rgba(255,255,255,.55),rgba(255,255,255,.14) 42%,transparent 68%);opacity:0;transition:opacity .35s ease}
.ukb-lights:hover::before{opacity:1}
.ukb-lights::after{content:"";position:absolute;z-index:2;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 34%,rgba(255,255,255,.34) 48%,transparent 60%);transform:translateX(-130%);transition:transform .85s cubic-bezier(.3,.9,.2,1)}
.ukb-lights:hover::after{transform:translateX(130%)}
@media (prefers-reduced-motion:reduce){.ukb-lights::before,.ukb-lights::after{transition-duration:.01ms!important}}

@media(max-width:919px){.ukc-mast{display:none!important}}
/* ── booking overlay ── */
.ukc-book{background:var(--green);color:#fff;font-weight:700;white-space:nowrap}
.ukc-bookwrap{position:fixed;inset:0;z-index:200;display:none}
.ukc-bookwrap.open{display:block}
.ukc-bookback{position:absolute;inset:0;background:rgba(6,18,38,.62);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:ukcBookFade .22s ease both}
@keyframes ukcBookFade{from{opacity:0}to{opacity:1}}
.ukc-booksheet{position:absolute;left:0;right:0;bottom:0;top:auto;display:flex;flex-direction:column;background:#fff;border-radius:16px 16px 0 0;box-shadow:0 -12px 40px rgba(6,18,38,.4);height:92vh;max-height:92vh;animation:ukcBookUp .3s cubic-bezier(.2,.9,.3,1) both}
@keyframes ukcBookUp{from{transform:translateY(100%)}to{transform:none}}
.ukc-bookbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line,#dbe4f0);flex:0 0 auto}
.ukc-bookttl{font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:15px;letter-spacing:1.2px;text-transform:uppercase;font-weight:700;color:var(--navy,#0a2447)}
.ukc-bookx{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 auto;background:none;border:0;border-radius:8px;color:var(--navy,#0a2447);cursor:pointer}
.ukc-bookx:hover{background:var(--cream,#f3f6fa)}
.ukc-bookbody{position:relative;flex:1 1 auto;min-height:0;background:var(--cream,#f3f6fa)}
.ukc-bookbody iframe{position:absolute;inset:0;width:100%;height:100%;border:0;opacity:0;transition:opacity .3s ease}
.ukc-bookwrap.loaded .ukc-bookbody iframe{opacity:1}
.ukc-bookload{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;margin:0;font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:14px;letter-spacing:1.2px;text-transform:uppercase;color:var(--slate,#3f5570)}
.ukc-bookwrap.loaded .ukc-bookload{display:none}
.ukc-booknew{flex:0 0 auto;padding:12px 16px;min-height:44px;display:flex;align-items:center;justify-content:center;border-top:1px solid var(--line,#dbe4f0);font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:14px;letter-spacing:1px;text-transform:uppercase;font-weight:700;color:var(--steel,#3a6dab);text-decoration:none;background:#fff}
.ukc-booknew:hover{background:var(--cream,#f3f6fa);color:var(--navy,#0a2447)}
.ukc-booksheet{left:50%;bottom:auto;top:50%;transform:translate(-50%,-50%);width:min(560px,94vw);height:min(760px,88vh);border-radius:14px;animation:ukcBookIn .26s cubic-bezier(.2,.9,.3,1) both}
@keyframes ukcBookIn{from{opacity:0;transform:translate(-50%,-46%) scale(.98)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
.ukc-bookback,.ukc-booksheet{animation:none}
.ukc-noscroll{overflow:hidden}

/* desktop: fixed header (sticky is defeated by the pages' overflow-x:hidden on html/body);
   body padding reserves its height so the masthead below is never covered */
@media(min-width:761px){.ukc-nav{box-shadow:0 2px 14px rgba(6,18,38,.25)}}

.ukfin-disc{font-size:12px;line-height:1.6;color:#8fa3bd;max-width:900px;margin:18px auto 0;text-align:center}.ukfin-disc a{color:#9db9de}

/* ── ukfp: standard footer pack (press · regulatory · flags) — homepage template ── */
.ukfp{padding:6px 0 30px}
.ukfp .inner{max-width:1080px;margin:0 auto;padding:0 22px}
.ukfp-card{border-radius:12px;padding:22px 20px 26px;margin-top:22px}
.ukfp-card.press{background:#f7f7f5}
.ukfp-card.reg{background:#f4f7fb}
.ukfp-card.flags{background:#fff;border:1px solid #e6ecf4;padding:26px 28px}
.ukfp-lbl{font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:12.5px;letter-spacing:2px;text-transform:uppercase;font-weight:700;color:#3a6dab;text-align:center;margin:0 0 22px}
.ukfp-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:22px 44px}
.ukfp-row a{display:flex;align-items:center;justify-content:center;line-height:0;flex-shrink:0}
.ukfp-row img{display:block;width:auto;height:34px;max-width:100%;mix-blend-mode:multiply}
.ukfp-row img[src*="Superdrug"]{height:40px}
.ukfp-row img[src*="BBC-Logo"]{height:56px}
.ukfp-row img[src*="The-Sun"]{height:50px}
.ukfp-row img[src*="Daily-Mail"]{height:30px}
.ukfp-row img[src*="BAUS"]{height:90px}
.ukfp-row img[src*="general-medical"]{height:70px}
.ukfp-row img[src*="Top-Doctors"]{height:60px}
.ukfp-row img[src*="CRS_logo"]{height:50px}
.ukfp-row img[src*="untitled.png"]{height:60px}
.ukfp-row img[src*="Phalloboards"]{height:110px}
@media(min-width:1040px){.ukfp-row{flex-wrap:nowrap}}
@media(max-width:699px){
 .ukfp-row{gap:16px 22px}
 .ukfp-row img{height:26px}
 .ukfp-row img[src*="Superdrug"]{height:30px}
 .ukfp-row img[src*="BBC-Logo"],.ukfp-row img[src*="The-Sun"]{height:40px}
 .ukfp-row img[src*="Daily-Mail"]{height:22px}
 .ukfp-row img[src*="BAUS"]{height:64px}
 .ukfp-row img[src*="general-medical"]{height:52px}
 .ukfp-row img[src*="Top-Doctors"]{height:44px}
 .ukfp-row img[src*="CRS_logo"]{height:36px}
 .ukfp-row img[src*="untitled.png"]{height:46px}
 .ukfp-row img[src*="Phalloboards"]{height:80px}
}
.ukfp-flags-h{font-weight:700;font-size:16px;color:#0a2447;margin:0 0 10px}
.ukfp-flags-p{font-size:15.5px;line-height:1.6;color:#3f5570;margin:0 0 22px;max-width:70ch}
.ukfp-flagrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,max-content));justify-content:center;gap:16px 40px}
.ukfp-flagrow a{display:flex;align-items:center;gap:10px;text-decoration:none;color:#2f5fa5;font-size:15px;line-height:1.3;white-space:nowrap}
.ukfp-flagrow img{width:27px;height:18px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px rgba(10,36,71,.12);flex:0 0 auto;display:block}
@media(max-width:699px){
 .ukfp-card.flags{padding:22px 16px}
 .ukfp-flags-h,.ukfp-flags-p{text-align:center;margin-left:auto;margin-right:auto}
 /* flags: 2 tidy columns that can never overflow — beats the homepage's inline grid too */
 .ukfp-flagrow,.ukflagrow{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;justify-content:stretch!important;gap:14px 12px!important;padding:0!important;max-width:100%!important;overflow:hidden}
 .ukfp-flagrow a,.ukflagrow a{min-width:0;white-space:normal!important;font-size:14px!important;gap:8px!important}
 .ukfp-flagrow a span,.ukflagrow a span{min-width:0;overflow-wrap:anywhere}
}

/* ── ukpp: Popular Pages cards (replaces legacy button grids) ── */




@media(max-width:900px){.ukpp-g{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.ukpp-g{grid-template-columns:1fr;gap:12px}.ukpp .inner{padding:0 14px}}





/* ── ed-docs: Website Authors & Editors block (uniform photos, aligned logos) ── */
.ed-docs{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:stretch;margin:0 0 18px}
@media(max-width:700px){.ed-docs{grid-template-columns:1fr}}
.ed-doc{display:flex;flex-direction:column;align-items:center;text-align:center}
.ed-doc>img:not(.lg),.ed-doc img.photo{width:180px!important;height:180px!important;max-width:none!important;object-fit:cover;object-position:center top;border-radius:50%!important;display:block;margin:0 auto 14px!important;border:0}
.ed-doc h3{text-align:center!important;margin:0 0 8px;font-size:20px}
.ed-doc p{text-align:center!important;margin:0 0 14px;max-width:46ch}
.ed-doc a{margin-top:auto;display:block;line-height:0}
.ed-doc a img,.ed-doc img.lg{height:40px!important;width:auto!important;max-width:220px;border-radius:0!important;margin:0!important;display:inline-block;background:transparent}
.ed-doc img.lg-td{height:80px!important}
.ed-docs+h2,.ed-docs+.ac-rev{clear:both}

.ukfin-logo{text-align:center;margin:22px 0 0}.ukfin-logo img{width:150px;height:auto;opacity:.85}

/* ── a11y: contrast + link affordance + tap targets (PageSpeed 4 Sep 2026) ── */
.ukc-book,.ukc-menu a.ukc-book,.ukc-acts .b,.ukc-sticky .b,.ukc-ask-btn.wa,.ukcm-acc,.uked-cta,.ukpc-cta:not(.o),.est-cta,.btn.g,.usb-count,.ukc-cta-b.wa{background:#256f44!important;color:#fff!important}
.ukc-book:hover,.ukc-acts .b:hover,.ukc-sticky .b:hover,.uked-cta:hover,.ukpc-cta:hover,.ukcm-acc:hover{background:#1f5f3a!important}
.ukc-ask-btn.mail{background:#2c5a94!important}
.ukfin-disc a,.ukc-legal a{text-decoration:underline;text-underline-offset:2px}
.ukc-flinks{gap:4px 10px}.ukc-flinks a{display:inline-flex;align-items:center;min-height:44px;padding:0 8px;text-decoration:none}
.ukc-legal{color:rgba(255,255,255,.72);font-size:10px}
.ukfin-disc{color:#a9bbd2}

/* ── WO-01: mega dropdown, drawer accordions, 4-col footer, review block ── */
.ukc-menu{gap:2px}.ukc-menu a,.ukc-menu .ukc-ddb{font-family:"Public Sans",Inter,system-ui,sans-serif;font-weight:600;font-size:14px;letter-spacing:1.3px;text-transform:uppercase;padding:10px 10px}
.ukc-menu a.ukc-book{padding:10px 14px;font-family:"Public Sans",Inter,system-ui,sans-serif;font-weight:700}
.ukc-panel-mega{display:flex;gap:6px;min-width:560px;padding:12px}
.ukc-pcol{flex:1 1 0;min-width:0}
.ukc-phead{font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:12.5px;letter-spacing:1.8px;text-transform:uppercase;color:#3a6dab;font-weight:700;margin:6px 12px 6px;padding-bottom:6px;border-bottom:1px solid #e3ebf5}
.ukc-panel a{white-space:normal;line-height:1.35;text-align:left}.ukc-panel,.ukc-phead{text-align:left}
.ukc-dd-mega .ukc-panel{left:auto;right:0}
.ukc-dd:nth-last-of-type(2) .ukc-panel{left:auto;right:0}
@media(min-width:1000px) and (max-width:1180px){.ukc-menu a.ukc-book{font-size:12.5px;padding:9px 10px}}
.ukc-dgrp{border-bottom:1px solid rgba(255,255,255,.08)}
.ukc-dgrp summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;color:#e6edf7;font-size:16px;padding:13px 0;min-height:44px}
.ukc-dgrp summary::-webkit-details-marker{display:none}
.ukc-dgrp .ukc-caret{font-size:12.5px;color:#7f9bc4;transition:transform .2s}
.ukc-dgrp[open] .ukc-caret{transform:rotate(180deg)}
.ukc-dlinks{padding:0 0 8px 12px}
.ukc-dlinks a{display:block;color:#cdd9ec;text-decoration:none;font-size:15px;padding:11px 0;min-height:44px;box-sizing:border-box}
.ukc-dlinks a[aria-current=page]{color:#9db9de}
.ukc-drawer .ukc-grp{margin-top:8px}
.ukc-dcontact{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.ukc-dcontact a{flex:1 1 30%;text-align:center;font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:12.5px;letter-spacing:1px;text-transform:uppercase;font-weight:700;color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.35);border-radius:5px;padding:12px 6px;min-height:44px;box-sizing:border-box}
.ukc-fgrid{display:grid;grid-template-columns:1fr;gap:26px 28px;margin:30px 0 8px}
@media(min-width:620px){.ukc-fgrid{grid-template-columns:1fr 1fr}}
@media(min-width:960px){.ukc-fgrid{grid-template-columns:1.4fr 1fr 1fr 1fr}}
.ukc-fhead{font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#7f9bc4;font-weight:700;margin:0 0 8px}
.ukc-fcol a{display:block;color:#cdd9ec;text-decoration:none;font-size:14px;line-height:1.4;padding:7px 0;min-height:44px;box-sizing:border-box;display:flex;align-items:center}
.ukc-fcol a:hover{color:#fff}
.ukc-fcountry{border-top:1px solid rgba(255,255,255,.12);margin-top:22px;padding-top:22px}
.ukc-fflags{display:flex;flex-wrap:wrap;gap:6px 18px}
.ukc-fflags a{display:inline-flex;align-items:center;gap:8px;color:#cdd9ec;text-decoration:none;font-size:13.5px;min-height:44px}
.ukc-fflags img{width:27px;height:18px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px rgba(255,255,255,.18)}
.ukc-pending{display:inline-block;background:#fff3bf;color:#5a4300;border-radius:3px;padding:1px 6px;margin-top:6px;letter-spacing:0}
.ukc-review{background:#fff;padding:10px 0 34px}
.ukc-review-in{max-width:1200px;margin:0 auto;padding:22px 24px;border:1px solid #dce5f0;border-radius:4px;box-sizing:border-box}
@media(max-width:760px){.ukc-review-in{margin:0 16px;padding:18px 16px}}
.ukc-rv-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 40px;margin:0 0 18px}@media(max-width:760px){.ukc-rv-people{grid-template-columns:1fr}}.ukc-rv-p{display:flex;gap:16px;align-items:flex-start}.ukc-rv-p img,.ukc-rv-noimg{display:block;width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:center top;flex:0 0 auto;background:#e3ebf5;border:1px solid #dce5f0}.ukc-rv-p .ukc-rv-title{margin:2px 0 0}

.ukc-rv-role{font-family:Inter,system-ui,sans-serif;font-size:14px;letter-spacing:0;text-transform:none;color:#3f5570;font-weight:500;margin:0 0 2px}
.ukc-rv-name{font-family:Archivo,Inter,system-ui,sans-serif;font-size:18px;font-weight:600;color:#0a2447;margin:0 0 2px}
.ukc-rv-name a{color:inherit;text-decoration:none}.ukc-rv-name a:hover{text-decoration:underline}
.ukc-rv-title{font-size:14px;line-height:1.5;color:#3f5570;margin:2px 0 0}.ukc-rv-title a{color:#3a6dab}
.ukc-rv-dates{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:13px;color:#3f5570;margin:16px 0 0;display:flex;flex-wrap:wrap;gap:6px 28px;padding-top:16px;border-top:1px solid #e3ebf5;margin-bottom:0}.ukc-rv-dates span{white-space:nowrap}.ukc-rv-dates b{font-weight:600;color:#0a2447}
.ukc-rv-note{font-size:13px;color:#3f5570;margin:16px 0 0;line-height:1.6}

/* ── shared contact system (conversion brief, 9 Sep 2026) ── */
.ukc-menu a.ukc-hwa{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.12);color:#fff;font-weight:700;white-space:nowrap;border:1px solid rgba(255,255,255,.35);padding:9px 12px;border-radius:4px}
.ukc-menu a.ukc-hwa:hover{background:rgba(255,255,255,.22)}
@media(max-width:1180px){.ukc-menu a.ukc-hwa{display:none}}
.ukc-enq{background:var(--cream,#f3f6fa);border:1px solid var(--line,#dce5f0);border-radius:14px;padding:22px 22px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:18px 28px;align-items:center;margin:0 auto;max-width:1120px}
@media(max-width:860px){.ukc-enq{grid-template-columns:1fr}}
.ukc-enq-h{font-family:Archivo,system-ui,sans-serif;font-weight:600;font-size:clamp(20px,2.2vw,24px);line-height:1.2;color:var(--navy,#0a2447);margin:0 0 8px}
.ukc-enq-s{margin:0;font-size:14.5px;line-height:1.6;color:var(--slate,#3f5570)}
.ukc-enq-a{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-self:center}
.ukc-enq-a a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 14px;border-radius:8px;font-family:var(--sans,Inter,sans-serif);font-weight:600;font-size:14.5px;text-decoration:none;border:1px solid var(--line,#dce5f0);background:#fff;color:var(--navy,#0a2447)}
.ukc-enq-a a.w{background:#1f6f4e;border-color:#1f6f4e;color:#fff;order:1;white-space:nowrap;padding:0 10px}.ukc-enq-a a.w svg{flex:0 0 auto}@media(max-width:400px){.ukc-enq-a a{font-size:14px;padding:0 10px}}.ukc-enq-a a.b{order:2}.ukc-enq-a a.t{order:3}.ukc-enq-a a.m{order:4}.ukc-enq-a a.x{order:5;grid-column:1/-1;background:#f3f6fa;border-color:#c9d8ec;color:#0a2447}
.ukc-enq-a a.b{background:#0a2447;border-color:#0a2447;color:#fff}
.ukc-enq-a a:hover{filter:brightness(1.06)}
@media(max-width:420px){.ukc-enq-a{grid-template-columns:1fr}}


/* footer finance disclaimer: left-aligned, logo on the left */
.ukc-foot .ukfin-logo{text-align:left;margin:22px 0 0}.ukc-foot .ukfin-disc{text-align:left;margin:12px 0 0;max-width:900px}

.ukc-legal+.ukc-legal{margin-top:10px}

/* quick-links ribbon in Popular Pages card style */.ukc-ribwrap{padding:22px 0;background:#f3f6fa;border-bottom:1px solid #dce5f0}.ukpop3-rib{max-width:1240px;margin:0 auto;padding:0 22px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.ukpop3-rib a+a{border-left:0}.ukpop3-rib a:first-child{border-radius:3px 0 0 3px}.ukpop3-rib a:last-child{border-radius:0 3px 3px 0}@media(max-width:900px){.ukpop3-rib{grid-template-columns:1fr 1fr;gap:10px}.ukpop3-rib a+a{border-left:1px solid #dce5f0}.ukpop3-rib a{border-radius:3px!important}}@media(max-width:600px){.ukpop3-rib{grid-template-columns:1fr 1fr;gap:10px;padding:0 14px}}.ukpop3-rib a{display:block;position:relative;overflow:hidden;background:#fff;border:1px solid #dce5f0;border-top:4px solid #46618a;border-radius:3px;padding:18px 16px;text-align:center;text-decoration:none;transition:background .2s;min-height:44px}.ukpop3-rib a::before{content:"";position:absolute;right:-8px;bottom:-14px;width:74px;height:66px;background:url(andro-a-mark.png) center/contain no-repeat;opacity:.13;pointer-events:none;transition:opacity .3s}.ukpop3-rib a:hover::before{opacity:.75}.ukpop3-rib a>*{position:relative;z-index:1}.ukpop3-rib .hd{font-weight:700;font-size:17px;color:#0a2447;margin:0 0 4px}.ukpop3-rib .bd{font-size:13.5px;line-height:1.5;color:#3a6dab}.ukpop3-rib a:nth-child(1){border-top-color:#2e51b0}.ukpop3-rib a:nth-child(1):hover{background:#e8effb}.ukpop3-rib a:nth-child(2){border-top-color:#46618a}.ukpop3-rib a:nth-child(2):hover{background:#eef1f6}.ukpop3-rib a:nth-child(3){border-top-color:#a32626}.ukpop3-rib a:nth-child(3):hover{background:#fdeeec}.ukpop3-rib a:nth-child(4){border-top-color:#2f8a55}.ukpop3-rib a:nth-child(4):hover{background:#e9f5ee}@media(max-width:600px){.ukpop3-rib .hd{font-size:15px}.ukpop3-rib .bd{font-size:12.5px}.ukpop3-rib a{padding:14px 10px}}

/* ribbon: override legacy .ukc-ribbon layout so cards touch */.ukc-ribwrap .ukc-ribbon.ukpop3-rib{display:grid;gap:0;column-gap:0;row-gap:0;grid-template-columns:repeat(4,minmax(0,1fr));border:0;background:none;box-shadow:none;border-radius:0}.ukc-ribwrap .ukc-ribbon.ukpop3-rib>a{margin:0;flex:none;border-radius:0}.ukc-ribwrap .ukc-ribbon.ukpop3-rib>a+a{border-left:0;margin-left:-1px}.ukc-ribwrap .ukc-ribbon.ukpop3-rib>a:first-child{border-radius:3px 0 0 3px}.ukc-ribwrap .ukc-ribbon.ukpop3-rib>a:last-child{border-radius:0 3px 3px 0}@media(max-width:900px){.ukc-ribwrap .ukc-ribbon.ukpop3-rib{grid-template-columns:1fr 1fr;gap:10px}.ukc-ribwrap .ukc-ribbon.ukpop3-rib>a{border-radius:3px;border-left:1px solid #dce5f0;margin-left:0}}

.ukc-ribwrap .ukc-ribbon.ukpop3-rib{max-width:none;padding:0}.ukc-ribwrap .ukc-ribbon.ukpop3-rib>a:first-child,.ukc-ribwrap .ukc-ribbon.ukpop3-rib>a:last-child{border-radius:0}.ukc-ribwrap .ukc-ribbon.ukpop3-rib>a:first-child{border-left:0}.ukc-ribwrap .ukc-ribbon.ukpop3-rib>a:last-child{border-right:0}.ukc-ribwrap{padding:0;background:#fff;border-bottom:0}@media(max-width:900px){.ukc-ribwrap{padding:16px 14px}.ukc-ribwrap .ukc-ribbon.ukpop3-rib>a:first-child,.ukc-ribwrap .ukc-ribbon.ukpop3-rib>a:last-child{border-radius:3px;border-left:1px solid #dce5f0;border-right:1px solid #dce5f0}}

@media(min-width:901px){.ukc-ribwrap .ukc-ribbon.ukpop3-rib{width:90%;max-width:none;margin:0 auto;padding:0}.ukc-ribwrap .ukc-ribbon.ukpop3-rib>a:first-child{border-left:1px solid #dce5f0;border-radius:3px 0 0 3px}.ukc-ribwrap .ukc-ribbon.ukpop3-rib>a:last-child{border-right:1px solid #dce5f0;border-radius:0 3px 3px 0}.ukc-ribwrap{padding:18px 0}}

/* touch-friendly range sliders (mobile) */
@media(max-width:900px){
input[type=range]{-webkit-appearance:none;appearance:none;height:44px;background:transparent;margin:0;padding:0;width:100%;touch-action:pan-y;cursor:pointer}
input[type=range]:focus{outline:none}
input[type=range]::-webkit-slider-runnable-track{height:10px;border-radius:5px;background:#c9d8ec}
input[type=range]::-moz-range-track{height:10px;border-radius:5px;background:#c9d8ec}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:34px;height:34px;border-radius:50%;background:#0a2447;border:3px solid #fff;box-shadow:0 2px 8px rgba(10,36,71,.35);margin-top:-12px}
input[type=range]::-moz-range-thumb{width:34px;height:34px;border-radius:50%;background:#0a2447;border:3px solid #fff;box-shadow:0 2px 8px rgba(10,36,71,.35)}
input[type=range]:focus-visible::-webkit-slider-thumb{outline:3px solid #3a6dab;outline-offset:2px}
input[type=range]:active::-webkit-slider-thumb{transform:scale(1.12)}
}

/* Popular Pages — shared style (matches homepage .ukpop3) */
.ukpp{padding:36px 0}
.ukpp .inner{max-width:1100px;margin:0 auto;padding:0 22px}
.ukpp-h{font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:13px;letter-spacing:2.6px;text-transform:uppercase;font-weight:700;color:#3a6dab;text-align:left;margin:0 0 14px}
.ukpp-g{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media(max-width:900px){.ukpp-g{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.ukpp-g{grid-template-columns:1fr}}
.ukpp-g a{display:block;position:relative;overflow:hidden;background:#fff;border:1px solid #dce5f0;border-top:4px solid #46618a;border-radius:3px;padding:18px 16px;text-align:center;text-decoration:none;transition:background .2s}
.ukpp-g a::before{content:"";position:absolute;right:-8px;bottom:-14px;width:74px;height:66px;background:url(andro-a-mark.png) center/contain no-repeat;opacity:.13;pointer-events:none;transition:opacity .3s}
.ukpp-g a:hover::before{opacity:.75}
.ukpp-g a>*{position:relative;z-index:1}
.ukpp-g .hd{font-weight:700;font-size:17px;color:#0a2447;margin:0 0 4px}
.ukpp-g .bd{font-size:13.5px;line-height:1.5;color:#3a6dab}
.ukpp-g a:nth-child(1){border-top-color:#2e51b0}
.ukpp-g a:nth-child(1):hover{background:#e8effb}
.ukpp-g a:nth-child(2){border-top-color:#46618a}
.ukpp-g a:nth-child(2):hover{background:#eef1f6}
.ukpp-g a:nth-child(3){border-top-color:#2f8a55}
.ukpp-g a:nth-child(3):hover{background:#e9f5ee}
.ukpp-g a:nth-child(4){border-top-color:#a32626}
.ukpp-g a:nth-child(4):hover{background:#fdeeec}
.ukpp-g a:nth-child(5){border-top-color:#2f8a55}
.ukpp-g a:nth-child(5):hover{background:#e9f5ee}
.ukpp-g a:nth-child(6){border-top-color:#2e51b0}
.ukpp-g a:nth-child(6):hover{background:#e8effb}
.ukpp .inner{max-width:1100px}

@media(min-width:960px){.ukc-bar{max-width:none;padding-left:28px;padding-right:28px}.ukc-menu{flex:1 1 auto;justify-content:flex-end}.ukc-menu>div,.ukc-menu>a{flex:0 0 auto;text-align:center}.ukc-menu>div>.ukc-ddb{justify-content:center;width:100%}.ukc-menu>a{display:inline-flex;justify-content:center}}

/* uk-heading-system (11 Sep 2026): one scale for all pages. Per-page overrides removed. */
main h1{font-family:Archivo,Inter,system-ui,sans-serif;font-weight:600;letter-spacing:-.01em}
main h2:not(.ukpp-h):not(.ukh2-card):not(.ukpop3-h):not(.ed-logo-h){font-family:Archivo,Inter,system-ui,sans-serif!important;font-weight:600!important;font-size:clamp(26px,3vw,32px)!important;line-height:1.2!important;text-transform:none!important;letter-spacing:-.01em!important;margin:40px 0 20px!important}
main h2.ukh2-card{font-family:Archivo,Inter,system-ui,sans-serif!important;font-weight:600!important;font-size:20px!important;line-height:1.3!important;text-transform:none!important;margin:0 0 10px!important}
main h2.ukpp-h,main h2.ukpop3-h{font-family:Archivo,Inter,system-ui,sans-serif!important;font-weight:700!important;font-size:20px!important;letter-spacing:.06em!important;text-transform:uppercase!important;margin:0 0 20px!important}
main section>.inner>h2:first-child,main .eyebrow+h2,main h2:first-child{margin-top:0!important}
main h3{font-family:Archivo,Inter,system-ui,sans-serif!important;font-weight:600!important;font-size:20px!important;line-height:1.3!important;text-transform:none!important;letter-spacing:0!important;margin:24px 0 10px!important}
main h3:first-child,main h2+h3,main .eyebrow+h3{margin-top:0!important}
main h1[style*="font-size"],main h2[style*="font-size"],main h3[style*="font-size"]{font-size:inherit}

/* ── nav G1 + FIN (11 Sep 2026): full-height tabs, current section filled, steel accent with sheen; Book Now with mint inner edge ── */
@media(min-width:960px){
.ukc-bar{padding-top:0!important;padding-bottom:0!important;min-height:76px;align-items:stretch}
.ukc-logo{display:flex;align-items:center}
.ukc-menu{gap:4px!important;align-items:stretch;margin-left:auto;margin-right:clamp(24px,4vw,64px);justify-content:flex-end;padding-left:0}
.ukc-dd{display:flex;align-items:stretch}
.ukc-menu .ukc-ddb{position:relative;overflow:hidden;border-radius:0!important;padding:0 16px!important;background:transparent;color:#cdd9ec;border-bottom:0;line-height:1}
.ukc-menu .ukc-ddb .ukc-caret{display:none}
.ukc-menu .ukc-ddb::before{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:transparent;transition:background .2s}
.ukc-dd.ukc-on .ukc-ddb{background:var(--navy2,#163763);color:#fff}
.ukc-dd.ukc-on .ukc-ddb::before,.ukc-menu .ukc-ddb:hover::before,.ukc-dd.open .ukc-ddb::before,.ukc-dd:focus-within .ukc-ddb::before{background:#3a6dab}
.ukc-menu .ukc-ddb:hover,.ukc-dd.open .ukc-ddb,.ukc-dd:focus-within .ukc-ddb{background:#0c1d38;color:#fff}
.ukc-menu .ukc-ddb::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:40%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);transform:translateX(-120%);opacity:0;pointer-events:none}
.ukc-menu .ukc-ddb:hover::after{animation:ukcSheen .8s ease-out forwards}
@keyframes ukcSheen{0%{transform:translateX(-120%);opacity:1}100%{transform:translateX(280%);opacity:1}}
.ukc-menu a.ukc-book{align-self:stretch;margin:10px 0 10px 6px;border-radius:0!important;padding:0 20px!important;display:inline-flex;align-items:center;background:#256f44!important;color:#fff!important;font-weight:700;box-shadow:inset 0 0 0 1px #8fe0b4;transition:background .2s,box-shadow .2s;position:relative;overflow:hidden;isolation:isolate}
.ukc-menu a.ukc-book:hover{background:#1f5f3a!important;box-shadow:inset 0 0 0 2px #8fe0b4}
.ukc-menu a.ukc-book::after{content:"";position:absolute;top:-20%;bottom:-20%;left:0;width:45%;background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,.08) 30%,rgba(255,255,255,.42) 50%,rgba(255,255,255,.08) 70%,transparent 100%);transform:translateX(-140%) skewX(-12deg);opacity:0;pointer-events:none;z-index:1}
.ukc-menu a.ukc-book:hover::after{animation:ukcBookSheen .75s cubic-bezier(.3,.6,.3,1) forwards}
@keyframes ukcBookSheen{0%{transform:translateX(-140%) skewX(-12deg);opacity:1}100%{transform:translateX(320%) skewX(-12deg);opacity:1}}
.ukc-menu a.ukc-book>span{position:relative;z-index:2}
.ukc-panel{top:100%!important;margin-top:0!important}
}
@media(prefers-reduced-motion:reduce){.ukc-menu .ukc-ddb::after,.ukc-menu a.ukc-book::after{animation:none!important}}

.ukc-rv-noimg{border-radius:50%;background:#e3ebf5 url(andro-a-mark.png) center/55% no-repeat;flex:0 0 auto}
.ukc-rv-reviewed{font-size:16px;color:#0a2447;margin:18px 0 0;padding-top:16px;border-top:1px solid #e3ebf5}.ukc-rv-reviewed b{font-weight:600}
.ukc-rv-pending{color:#3f5570}.ukc-rv-pending b{color:#0a2447}
.ukc-rv-scope{font-size:14px;color:#3f5570;margin:6px 0 0;line-height:1.55}
.ukc-rv-links{font-size:14px;margin:12px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:4px 22px}.ukc-rv-links li{white-space:nowrap}.ukc-rv-links a{color:#3a6dab;font-weight:600;text-decoration:none;padding:6px 0;display:inline-block}.ukc-rv-links a:hover{text-decoration:underline}.ukc-rv-links a:focus-visible{outline:2px solid #3a6dab;outline-offset:2px}
.ukc-rv-dates{font-size:14px;margin:12px 0 0;padding-top:0;border-top:0}
.ukc-attrib{font-size:14px;line-height:1.6;margin:14px 0 0;color:#3f5570}.ukc-attrib a{color:#0a2447;text-decoration:underline;text-underline-offset:3px}.uk-hero .ukc-attrib,.hero-sm .ukc-attrib{color:#3f5570}.uk-hero .ukc-attrib a,.hero-sm .ukc-attrib a{color:#0a2447}.ps-hero .ukc-attrib,.hero-sm.ps-hero .ukc-attrib{color:rgba(255,255,255,.85)}.ps-hero .ukc-attrib a,.hero-sm.ps-hero .ukc-attrib a{color:#fff}

/* ── 12 Sep 2026: label/eyebrow face → Public Sans (menu-font lab H, eyebrow lab B). Mono stays for buttons/prices. ── */
.eyebrow,.uk-hero .kicker,.ukibx-eb,.ukibD-eb,.ukhb-kick,.ukpc-eb,.ukest-eb,.ukc-rel .eb,.uked-lbl,.ukpop2-lbl,.uk2p-lead,.ukfx .eyebrow,.ukfp-lbl,.ukpp-h,.ukpop3-h,.ukc-phead,.ukc-fhead,.ukc-mastsub,.ukc-grp,.ukc-rlab,.hbalbl,.ukauthdates,.ukibx-tag,.uked-tag,.ukpc-tag,.ed-pc-tag,.ukc-crumbs-in{font-family:"Public Sans",Inter,system-ui,sans-serif!important;font-weight:600!important}
.eyebrow,.uk-hero .kicker,.ukibx-eb,.ukibD-eb,.ukhb-kick,.ukpc-eb,.ukest-eb,.ukc-rel .eb,.uked-lbl,.ukpop2-lbl,.ukfx .eyebrow{font-size:14.5px!important;letter-spacing:1.6px!important;margin-bottom:15px!important}
.ukfp-lbl,.ukc-phead,.ukc-fhead{font-size:12.5px!important;letter-spacing:1.6px!important}.ukpp-h,.ukpop3-h{font-size:13.5px!important;letter-spacing:2px!important}
/* min-font floor (12 Sep 2026): nothing outside the footer renders below 12.5px */
main small,main sub,main sup,.ukc-nav small,.ukc-drawer small{font-size:max(12.5px,.86em)}
/* 12 Sep 2026: buttons → Public Sans (mono now only for prices, numerals and data) */
.btn,.ukest .moreinfo,.uked-cta,.ukmh-btn,.ukpx .pfoot .book,.ukpx .tier .book,.ukpx .finlink,.ukc-acts a,.ukc-sb a,.ukc-dcontact a,.ukvid-skip,.ukest-rl,.ukpx .tabs button .s,.cta-btn,.ukfaq-btns a{font-family:"Public Sans",Inter,system-ui,sans-serif!important}

/* YouTube embeds: fill their column at 16:9 instead of the fixed 600×360 the WP export carried */
.ac-vid iframe{display:block;width:100%;height:auto;aspect-ratio:16/9;border:0;border-radius:10px;background:#000}

/* 14 Sep 2026: eight header tabs — compact between 1200 and 1439px, full size from 1440px */
@media(min-width:1200px) and (max-width:1439px){.ukc-menu .ukc-ddb{padding:0 11px!important;font-size:13.5px;letter-spacing:1px}.ukc-menu a.ukc-book{padding:0 16px!important;font-size:13.5px;letter-spacing:1px}.ukc-menu{gap:2px!important;margin-right:20px}}
@media(min-width:1440px){.ukc-menu{margin-right:clamp(32px,4vw,72px);margin-left:48px}.ukc-bar{justify-content:flex-start}}
@media(min-width:1200px){.ukc-sticky{display:none}}

/* homepage mobile: eyebrow under the logo (moved out of the photo hero) */
.ukc-logo-eb{display:none}@media(max-width:599px){.ukc-logo:has(.ukc-logo-eb){flex-direction:column;align-items:flex-start;gap:5px}.ukc-logo:has(.ukc-logo-eb) img{height:22px}.ukc-logo-eb{display:block;color:#b9c8dd;font-family:"Public Sans",Inter,system-ui,sans-serif;font-size:9.5px;letter-spacing:1.6px;text-transform:uppercase;font-weight:600;white-space:nowrap;line-height:1}}


/* 15 Sep: mobile header actions — Photos + Book beside the burger (all pages); homepage eyebrow fades on scroll */
.ukc-macts{display:none}@media(max-width:1199px){.ukc-bar{gap:10px}.ukc-macts{display:flex;align-items:center;gap:8px;margin-left:14px;margin-right:auto}.ukc-mphotos,.ukc-hbook{display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border-radius:5px;font-family:"Plus Jakarta Sans",Inter,system-ui,sans-serif;font-size:15px;letter-spacing:.4px;text-transform:uppercase;font-weight:800;text-decoration:none;white-space:nowrap;line-height:1}.ukc-mphotos{color:#fff;background:#163763;border:1px solid rgba(255,255,255,.28)}.ukc-mphotos:hover{background:#1f4a80}.ukc-hbook{background:#fff;color:#0a2447}.ukc-hbook:hover{background:#e3ebf5}}@media(max-width:359px){.ukc-mphotos{display:none}}

/* 15 Sep: drawer + overlay must sit above the fixed header, or the header covers the close button */
.ukc-ov{z-index:1190!important}.ukc-drawer{z-index:1200!important}.ukc-x{width:48px;height:48px;font-size:30px;position:relative;z-index:2}

/* 16 Sep: mobile header swap — logo first; after the first scroll the logo fades out and Photos / Book Now fade in (same position) */
@media(max-width:1199px){.ukc-bar{position:relative}.ukc-bar .ukc-logo,.ukc-bar .ukc-macts{transition:opacity .28s ease,transform .28s ease}.ukc-bar .ukc-macts{position:absolute;right:96px;left:auto;top:50%;transform:translateY(calc(-50% + 6px));margin:0;opacity:0;pointer-events:none}body.ukc-scrolled .ukc-bar .ukc-macts,body.ukc-open .ukc-bar .ukc-macts{opacity:1;transform:translateY(-50%);pointer-events:auto}body.ukc-scrolled .ukc-bar .ukc-logo{opacity:0;pointer-events:none}}
@media(prefers-reduced-motion:reduce){.ukc-bar .ukc-logo,.ukc-bar .ukc-macts{transition:none}}

/* 16 Sep: one mobile gutter — every content container sits 20px from the screen edge on phones */
@media(max-width:759px){main .inner,main section>.inner,.ukfp .inner,.ukpp .inner,.ukc-review-in,.ukauthcard,.uk-eeat>.inner{padding-left:20px!important;padding-right:20px!important;box-sizing:border-box}main [class*="inner"][style*="padding"]{padding-left:20px!important;padding-right:20px!important}
.ukprice .ukprice-grid{margin-left:-20px!important;margin-right:-20px!important;padding-left:20px!important;padding-right:20px!important;scroll-padding:0 20px!important}.ukprice .ukprice-grid>.ukpc{flex-basis:calc(100vw - 40px)!important}
.ukhb.ukhb2 .ukhb2-duo,.ukhb3 .ukhb2-stack,.ukhb3 .ukj,.hba-top,.ukibx-card,.ukplla .inner,.ukpf-sec .inner{margin-left:0;margin-right:0}
.ukc-band .inner,.ukc-logos{padding-left:20px!important;padding-right:20px!important}}

@media(max-width:759px){.ukhb.ukhb2{padding-left:20px!important;padding-right:20px!important}.ukhb3 .ukhb2-stack,.ukhb3 .ukj{margin-left:0!important;margin-right:0!important;width:auto!important}.ukibx,.ukibx .inner{padding-left:20px!important;padding-right:20px!important}.ukibx-card{margin-left:0!important;margin-right:0!important}.ukpf-sec .inner,.ukpfO .inner,.ukedsec .inner,.ukintro .inner,.ukest-sec .inner{padding-left:20px!important;padding-right:20px!important}.ukc-review{padding-left:20px!important;padding-right:20px!important}.ukc-review-in{padding-left:0!important;padding-right:0!important}.ukfp,.ukpp{padding-left:0;padding-right:0}.ukfp .inner,.ukpp .inner{padding-left:20px!important;padding-right:20px!important}.ukpp-grid,.ukfp-grid{margin-left:0!important;margin-right:0!important}}

@media(max-width:759px){.ukopen{padding-left:0!important;padding-right:0!important}main .inner .inner{padding-left:0!important;padding-right:0!important}.ukpfO-surgafter{padding-left:0!important;padding-right:0!important}}

/* 16 Sep: small logo alongside the header actions after scroll, only where it fits */
@media(max-width:1199px){body.ukc-scrolled .ukc-bar .ukc-logo{opacity:0;pointer-events:none}}
@media(min-width:400px) and (max-width:1199px){body.ukc-scrolled .ukc-bar .ukc-logo{opacity:1;pointer-events:auto;max-width:calc(100vw - 340px);overflow:hidden}body.ukc-scrolled .ukc-bar .ukc-logo img{height:auto;width:100%;max-width:150px;max-height:30px;object-fit:contain;object-position:left center}body.ukc-scrolled .ukc-bar .ukc-logo .ukc-logo-eb{display:none}}@media(min-width:400px) and (max-width:459px){body.ukc-scrolled .ukc-bar .ukc-logo{opacity:0;pointer-events:none}}
@media(max-width:1199px){.ukc-bar .ukc-macts{flex-wrap:nowrap}.ukc-mphotos,.ukc-hbook{white-space:nowrap}}
/* 20 Sep: sticky footer bar uses the same type as the header buttons */
.ukc-sb a{font-family:"Plus Jakarta Sans",Inter,system-ui,sans-serif!important;font-weight:800!important;font-size:15px!important;letter-spacing:.4px!important;text-transform:uppercase!important}
.ukc-sb a.b::after,.ukc-sb a.b::before{content:none!important;display:none!important}.ukc-sb a.b svg,.ukc-sb a.b .ukc-arrow{display:none!important}

/* 20 Sep: home button in the scrolled mobile header (replaces the small logo) */
.ukc-mhome{display:none}
@media(max-width:1199px){.ukc-mhome{display:inline-flex;align-items:center;justify-content:center;position:absolute;left:16px;top:50%;transform:translateY(calc(-50% + 6px));width:40px;height:40px;border:1px solid rgba(255,255,255,.28);border-radius:5px;color:#fff;opacity:0;pointer-events:none;transition:opacity .28s ease,transform .28s ease}.ukc-mhome svg{width:20px;height:20px}body.ukc-scrolled .ukc-mhome{opacity:1;transform:translateY(-50%);pointer-events:auto}body.ukc-scrolled .ukc-bar .ukc-logo{opacity:0!important;pointer-events:none!important}}
@media(prefers-reduced-motion:reduce){.ukc-mhome{transition:none}}
/* 28 Sep: blank-page watchdog target */
html.uk-forcevis main,html.uk-forcevis main>*,html.uk-forcevis .ukopen,html.uk-forcevis .ukopen *{animation:none!important;opacity:1!important;visibility:visible!important;transform:none!important}

/* CA additions */
.ukc-fflags a span{white-space:nowrap}.ukc-fflags a:hover{color:#fff}
.cac-static{background:#0a2447;color:#cdd9ec;padding:24px 22px;font-family:Inter,system-ui,sans-serif;font-size:13px}.cac-static a{color:#cdd9ec;text-decoration:none;margin-right:14px;line-height:2}.cac-static a:hover{color:#fff}
