/* All North agency template. Colours and fonts come from theme.json presets, so a child theme restyles everything
   by changing its palette; the RGB triplets below exist only for the translucent rules and overlays. */
:root{
  --ink:var(--wp--preset--color--ink);
  --page:var(--wp--preset--color--page);
  --alt:var(--wp--preset--color--alt);
  --alt-deep:var(--wp--preset--color--alt-deep);
  --warm:var(--wp--preset--color--warm);
  --warm-deep:var(--wp--preset--color--warm-deep);
  --accent:var(--wp--preset--color--accent);
  --white:var(--wp--preset--color--white);
  --ink-rgb:27,27,30;
  --page-rgb:255,255,255;
  --muted:rgba(var(--ink-rgb),.72);
  --line:rgba(var(--ink-rgb),.14);
  --line-strong:rgba(var(--ink-rgb),.3);
  --on-dark-muted:rgba(var(--page-rgb),.74);
  --line-on-dark:rgba(var(--page-rgb),.16);
  --display:var(--wp--preset--font-family--display);
  --body:var(--wp--preset--font-family--body);
  --gutter:clamp(20px,5vw,72px);
  --section-y:clamp(64px,9vw,128px);
  --ease:cubic-bezier(.2,.7,.1,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
  --swing:cubic-bezier(.7,0,.2,1);
  --header-h:124px;
  --arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 9'%3E%3Cpath d='M0 4.5h15M11 1l3.5 3.5L11 8' fill='none' stroke='%23000'/%3E%3C/svg%3E");
}

/* Base */
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:calc(var(--header-h) + 16px);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--page);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;font-weight:300;letter-spacing:.02em;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:var(--ink);text-decoration-color:var(--accent);text-underline-offset:3px}
/* Links in a paragraph on a dark section; ink on ink would vanish. Buttons and styled links all carry a class. */
.has-ink-background-color a:not([class]),.an-on-dark a:not([class]){color:var(--page)}
a:hover{text-decoration-color:var(--ink)}
::selection{background:var(--accent);color:var(--ink)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
button{font:inherit;color:inherit}
input,select,textarea{font:inherit;color:var(--ink)}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;color:inherit;margin:0;text-wrap:balance}
h1{font-size:clamp(40px,4.6vw,66px);line-height:1.04;letter-spacing:-.02em}
h2{font-size:clamp(28px,2.6vw,38px);line-height:1.1;letter-spacing:-.01em}
h3{font-size:clamp(20px,1.7vw,24px);line-height:1.15;letter-spacing:0}
h4{font-size:19px;line-height:1.2;letter-spacing:0}
p{margin:0;text-wrap:pretty}
.an-main :where(p,h1,h2,h3,h4,figure,ul,ol,blockquote){margin:0}
.an-main :where(ul,ol){padding:0}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

@keyframes anUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes anFade{from{opacity:0}to{opacity:1}}
@keyframes anKen{from{transform:scale(1.12)}to{transform:scale(1)}}
@keyframes anDrawX{to{transform:scaleX(1)}}
@keyframes anDraw{to{stroke-dashoffset:0}}
@keyframes anSpin{to{transform:rotate(360deg)}}

/* Text styles editors pick from the block toolbar */
.is-style-eyebrow,.an-eyebrow{font-family:var(--body);font-size:11px;line-height:1.5;letter-spacing:.26em;text-transform:uppercase}
.has-ink-background-color .is-style-eyebrow,.an-on-dark .is-style-eyebrow{color:var(--warm-deep)}
.is-style-lead{font-size:16px;line-height:1.65;max-width:560px}
.has-ink-background-color .is-style-lead{color:var(--on-dark-muted);line-height:1.7}
.is-style-statement{font-family:var(--display);font-size:clamp(24px,2.5vw,34px);line-height:1.3;letter-spacing:-.01em;max-width:780px}
.is-style-note,.an-note{font-size:12px;line-height:1.5}
.is-style-tag,.an-tag{display:inline-flex;align-items:center;align-self:flex-start;width:max-content;max-width:100%;border:1px dashed var(--line-strong);padding:5px 9px;font-size:10px;font-weight:500;line-height:1.3;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;background:transparent}
.has-ink-background-color .is-style-tag{border-color:rgba(var(--page-rgb),.45)}
h1.is-style-display,h2.is-style-display{font-size:clamp(36px,4vw,58px);line-height:1;letter-spacing:-.02em}
.is-style-accent{color:var(--accent)!important}
h1 em,h2 em{font-style:normal;position:relative;display:inline-block}
h1 em::after{content:"";position:absolute;left:0;right:.2em;bottom:.02em;height:.08em;background:var(--accent);transform-origin:left;transform:scaleX(0);animation:anDrawX 700ms var(--swing) .45s forwards}
.an-k{font-size:10px;letter-spacing:.24em;text-transform:uppercase;line-height:1.4}
.an-small{font-size:13px;line-height:1.6}
.an-muted{color:var(--muted)}

/* Layout */
.an-main{padding-top:var(--header-h)}
.an-sec{padding:var(--section-y) var(--gutter)}
.an-sec.an-sec--tight{padding-top:clamp(40px,5vw,64px);padding-bottom:clamp(40px,5vw,64px)}
.an-page-top{padding-top:48px}
.an-sec--hero,.an-hero-home{padding-bottom:0}
.an-sec--head{padding-bottom:40px}
.an-center-y{align-items:center}
.an-maxw-720{max-width:720px}
.an-on-dark-muted{color:var(--on-dark-muted)}
.an-lucy img{object-position:50% 20%}
.an-home .an-page-top{padding-top:44px}
.an-in{max-width:1240px;margin-left:auto;margin-right:auto;width:100%}
.an-stack,.an-stack-sm,.an-stack-md,.an-stack-lg,.an-stack-xl{display:flex;flex-direction:column;align-items:stretch}
.an-stack{gap:22px}
.an-stack-sm{gap:8px}
.an-stack-md{gap:14px}
.an-stack-lg{gap:36px}
.an-stack-xl{gap:clamp(32px,5vh,56px)}
.an-stack > *,.an-stack-sm > *,.an-stack-md > *,.an-stack-lg > *,.an-stack-xl > *{margin:0!important}
.an-center{display:flex;justify-content:center}
.an-sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px}
.an-sec-head > .wp-block-group{display:flex;flex-direction:column;gap:12px;max-width:640px}
.an-grid2,.an-grid3,.an-grid4{display:grid;column-gap:24px;row-gap:48px;grid-template-columns:minmax(0,1fr)}
@media (min-width:620px){.an-grid3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.an-grid3{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:860px){.an-grid2{grid-template-columns:repeat(2,minmax(0,1fr))}}
.an-grid4{row-gap:0}
@media (min-width:560px){.an-grid4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.an-grid4{grid-template-columns:repeat(4,minmax(0,1fr))}}
.an-grid2.an-depts{row-gap:24px}
.an-split{display:grid;grid-template-columns:minmax(0,1fr)}
@media (min-width:860px){.an-split{grid-template-columns:repeat(2,minmax(0,1fr))}}
.an-split-media{position:relative;overflow:hidden;min-height:clamp(360px,70vh,660px);background:var(--alt)}
.an-split-media.is-short{min-height:clamp(340px,60vh,600px)}
.an-split-panel{padding:clamp(48px,6vw,96px) var(--gutter)!important;display:flex;align-items:center}
.an-split-panel > .wp-block-group{max-width:500px;width:100%}
.an-split-media.is-plan{display:grid;place-items:center;padding:clamp(24px,4vw,56px);background:var(--white)}
.an-split-media.is-plan .wp-block-image{max-height:100%}
.an-split-media.is-plan img{max-height:clamp(280px,52vh,520px);width:auto;object-fit:contain}
.an-cols-statement{display:grid;gap:28px;grid-template-columns:minmax(0,1fr)}
@media (min-width:860px){.an-cols-statement{grid-template-columns:minmax(0,1fr) minmax(0,3fr)}}
.an-cols-statement > .is-style-eyebrow,.an-cols-statement > .wp-block-group:first-child{padding-top:10px}
.an-cols-review{display:grid;gap:clamp(40px,6vw,96px);align-items:center;grid-template-columns:minmax(0,1fr)}
@media (min-width:980px){.an-cols-review{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}}

/* Images inside layout groups fill their box; the class names say which box */
.an-fill{position:absolute!important;inset:0;margin:0!important}
.an-fill img,.an-cover img,.an-ratio-43 img,.an-ratio-32 img,.an-ratio-1610 img,.an-ratio-45 img{width:100%;height:100%;object-fit:cover}
.an-fill.is-parallax{inset:-8% 0}
.an-ratio-43{aspect-ratio:4/3;overflow:hidden;background:var(--alt)}
.an-ratio-32{aspect-ratio:3/2;overflow:hidden;background:var(--alt)}
.an-ratio-1610{aspect-ratio:16/10;overflow:hidden;background:var(--alt);position:relative}
.an-ratio-45{aspect-ratio:4/5;overflow:hidden;background:var(--alt-deep)}
.an-ken img{animation:anKen 9s cubic-bezier(.2,.7,.2,1) both}
@media (max-width:760px){.an-ken img{animation:none}}
.an-img-label{position:absolute!important;top:14px;right:14px;z-index:1;margin:0!important;background:var(--page);padding:6px 10px;font-size:10px;line-height:1.3;letter-spacing:.2em;text-transform:uppercase}
.an-img-label.is-style-tag{padding:5px 9px;background:var(--page)}

/* Buttons. The theme's own and the block editor's share one look: a colour sweep on hover. */
.wp-block-buttons{display:flex;flex-wrap:wrap;gap:10px}
.wp-block-buttons > .wp-block-button{margin:0}
.an-btn,.wp-block-button__link{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:12px;height:46px;padding:0 24px 0 calc(24px + .2em);font-family:var(--body);font-size:11px;font-weight:500;line-height:1;letter-spacing:.2em;text-transform:uppercase;white-space:nowrap;text-decoration:none;border-radius:0;border:1px solid var(--ink);background:var(--ink);color:var(--page);cursor:pointer;transition:color 380ms var(--ease),border-color 300ms}
.an-btn::before,.wp-block-button__link::before{content:"";position:absolute;inset:-1px;z-index:-1;background:var(--accent);transform:scaleX(0);transform-origin:left center;transition:transform 560ms var(--swing)}
.an-btn:hover::before,.wp-block-button__link:hover::before,.an-btn:focus-visible::before,.wp-block-button__link:focus-visible::before{transform:scaleX(1)}
.an-btn:hover,.wp-block-button__link:hover,.an-btn:focus-visible,.wp-block-button__link:focus-visible{color:var(--ink)}
.an-btn--outline,.is-style-outline > .wp-block-button__link{background:transparent;color:var(--ink);border-color:var(--ink)}
.an-btn--outline::before,.is-style-outline > .wp-block-button__link::before{background:var(--ink)}
.an-btn--outline:hover,.is-style-outline > .wp-block-button__link:hover,.an-btn--outline:focus-visible{color:var(--page)}
.an-btn--accent,.is-style-accent > .wp-block-button__link{background:var(--accent);color:var(--ink);border-color:var(--accent)}
.an-btn--accent::before,.is-style-accent > .wp-block-button__link::before{background:var(--ink)}
.an-btn--accent:hover,.is-style-accent > .wp-block-button__link:hover,.an-btn--accent:focus-visible{color:var(--page)}
.an-btn--light,.is-style-light > .wp-block-button__link{background:var(--page);color:var(--ink);border-color:var(--page)}
.an-btn--ghost-light,.is-style-ghost-light > .wp-block-button__link{background:transparent;color:var(--page);border-color:rgba(var(--page-rgb),.5)}
.an-btn--ghost-light::before,.is-style-ghost-light > .wp-block-button__link::before{background:var(--page)}
.an-btn--ghost-light:hover,.is-style-ghost-light > .wp-block-button__link:hover,.an-btn--ghost-light:focus-visible{color:var(--ink)}
.an-btn--sm,.wp-block-button.is-small > .wp-block-button__link{height:38px;padding:0 18px 0 calc(18px + .2em)}
.an-btn--lg{height:54px;padding:0 30px;font-size:12px}
.an-btn--block{width:100%}
.an-btn--arrow::after,.wp-block-button.has-arrow > .wp-block-button__link::after{content:"";width:16px;height:9px;flex:none;background:currentColor;-webkit-mask:var(--arrow) no-repeat center/contain;mask:var(--arrow) no-repeat center/contain;transition:transform 440ms var(--ease)}
.an-btn--arrow:hover::after,.wp-block-button.has-arrow > .wp-block-button__link:hover::after{transform:translateX(4px)}
.an-btn[disabled]{background:transparent;color:var(--muted);border-color:var(--line-strong);cursor:default}
.an-btn[disabled]::before{display:none}
.an-link,.is-style-link > .wp-block-button__link{display:inline-flex;align-items:center;min-height:44px;padding:0;background:none;border:0;cursor:pointer;font-family:var(--body);font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:1px;text-underline-offset:6px;height:auto;transition:text-decoration-color 300ms}
.is-style-link > .wp-block-button__link::before{display:none}
.an-link:hover,.is-style-link > .wp-block-button__link:hover{text-decoration-color:var(--ink);color:var(--ink)}
.an-link--dark{text-decoration-color:var(--ink)}
.an-link--light,.has-ink-background-color .is-style-link > .wp-block-button__link{color:var(--page)}
.has-ink-background-color .is-style-link > .wp-block-button__link:hover{color:var(--page);text-decoration-color:var(--page)}
.an-arrow{position:relative;width:46px;height:46px;flex:none;border:1px solid var(--line-strong);background:transparent;cursor:pointer;color:var(--ink);transition:background 300ms,color 300ms,border-color 300ms,opacity 300ms}
.an-arrow::after{content:"";position:absolute;inset:0;margin:auto;width:16px;height:9px;background:currentColor;-webkit-mask:var(--arrow) no-repeat center/contain;mask:var(--arrow) no-repeat center/contain}
.an-arrow--prev::after{transform:scaleX(-1)}
.an-arrow:hover{background:var(--ink);color:var(--page);border-color:var(--ink)}
.an-arrow[disabled]{opacity:.35;pointer-events:none}
.an-arrow--sm{width:42px;height:42px}
.an-close{position:relative;width:38px;height:38px;flex:none;background:none;border:1px solid var(--line-strong);cursor:pointer;color:var(--ink);padding:0;transition:background 300ms,color 300ms,border-color 300ms}
.an-close span{position:absolute;left:11px;right:11px;top:18px;height:1px;background:currentColor;transform:rotate(45deg)}
.an-close span + span{transform:rotate(-45deg)}
.an-close:hover{background:var(--ink);color:var(--page);border-color:var(--ink)}
.an-close--light{border:0;color:var(--page)}
.an-close--light span{left:8px;right:8px}
.an-close--light:hover{background:none;color:var(--accent)}
.an-tabs{display:flex;gap:24px}
.an-tabs > *{position:relative;background:none;border:0;padding:6px 0;cursor:pointer;font-family:var(--body);font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color 300ms}
.an-tabs > *::after{content:"";position:absolute;left:0;right:.22em;bottom:0;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform 400ms var(--ease)}
.an-tabs > [aria-selected="true"]{color:var(--ink)}
.an-tabs > [aria-selected="true"]::after{transform:scaleX(1)}

/* Header */
.an-header{position:fixed;top:0;left:0;right:0;z-index:50;background:var(--page);transition:box-shadow 400ms}
.an-header.is-scrolled{box-shadow:0 1px 0 var(--line),0 10px 30px -18px rgba(var(--ink-rgb),.35)}
.admin-bar .an-header{top:32px}
@media (max-width:782px){.admin-bar .an-header{top:46px}}
.an-topbar{background:var(--ink);color:var(--page)}
.an-topbar-in{max-width:1240px;margin:0 auto;padding:0 var(--gutter);height:36px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:12px;letter-spacing:.04em}
.an-topbar-dept{display:flex;align-items:center;gap:14px;min-width:0;white-space:nowrap}
.an-topbar-dept .an-k,.an-menu .an-k,.an-footer .an-k{color:var(--warm-deep)}
.an-topbar a{color:var(--page);text-decoration:none}
.an-topbar-mail{display:none;align-items:center;gap:14px}
.an-sep{width:1px;height:12px;background:var(--line-on-dark)}
@media (min-width:900px){.an-topbar-mail{display:flex}}
.an-bar{max-width:1240px;margin:0 auto;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:20px;height:88px;transition:height 400ms var(--ease-out)}
.is-scrolled .an-bar{height:68px}
.an-logo{display:flex;flex:none}
.an-logo img{height:36px;width:auto}
@media (max-width:479px){.an-logo img{height:30px}}
.an-nav{display:none;align-items:center;gap:28px}
@media (min-width:1180px){.an-nav{display:flex}}
.an-nav a{position:relative;padding:8px 0;font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;color:var(--ink)}
.an-nav a::after{content:"";position:absolute;left:0;right:.2em;bottom:2px;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform 400ms var(--ease)}
.an-nav a:hover::after,.an-nav a[aria-current]::after{transform:scaleX(1)}
.an-actions{display:flex;align-items:center;gap:clamp(10px,1.4vw,16px)}
.an-narrow-only{display:none!important}
@media (max-width:639px){.an-wide-only{display:none!important}.an-narrow-only{display:inline-flex!important}span.an-narrow-only{display:inline!important}}
.an-icon-btn{position:relative;width:38px;height:38px;flex:none;border:1px solid var(--ink);color:var(--ink)}
.an-search-ico{position:absolute;left:10px;top:9px;width:13px;height:13px;border:1.5px solid currentColor;border-radius:50%}
.an-search-ico::after{content:"";position:absolute;left:10px;top:11px;width:7px;height:1.5px;background:currentColor;transform:rotate(45deg);transform-origin:left center}
.an-burger{width:38px;height:38px;flex:none;display:flex;flex-direction:column;justify-content:center;align-items:flex-end;gap:6px;background:none;border:0;cursor:pointer;padding:0;color:var(--ink)}
.an-burger span{height:1px;width:26px;background:currentColor}
.an-burger span:last-child{width:16px;transition:width 300ms var(--ease)}
.an-burger:hover span:last-child{width:26px}

/* Menu drawer */
.an-menu{position:fixed;top:0;right:0;bottom:0;z-index:70;width:min(480px,100%);background:var(--ink);color:var(--page);display:flex;flex-direction:column;padding:0 clamp(28px,4vw,52px) clamp(20px,4vh,36px);overflow-y:auto;transform:translateX(100%);transition:transform 700ms var(--swing);scrollbar-width:none}
.an-menu.is-open{transform:none}
.an-menu a:not(.an-btn){color:inherit;text-decoration:none}
.an-menu-top{flex:none;display:flex;justify-content:space-between;align-items:center;gap:16px;height:80px}
.an-menu-note{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--warm-deep)}
.an-menu-nav{flex:none;margin-top:clamp(8px,3vh,32px);display:flex;flex-direction:column;gap:clamp(20px,4vh,36px)}
.an-menu-main{display:flex;flex-direction:column}
.an-menu-main a{display:flex;align-items:center;gap:16px;padding:clamp(3px,.7vh,7px) 0;opacity:0;transform:translateX(24px);transition:opacity 600ms var(--ease-out),transform 600ms var(--ease-out)}
.an-menu.is-open .an-menu-main a{opacity:1;transform:none;transition-delay:calc(160ms + var(--i) * 45ms)}
.an-menu-main span{font-family:var(--display);font-size:clamp(26px,min(3vw,4.6vh),36px);line-height:1.12;transition:color 300ms}
.an-menu-main i{height:1px;width:40px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform 500ms var(--ease)}
.an-menu-main a:hover span{color:var(--accent)}
.an-menu-main a:hover i{transform:scaleX(1)}
.an-menu-more{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 24px;padding-top:clamp(16px,3vh,24px);border-top:1px solid var(--line-on-dark);opacity:0;transition:opacity 700ms var(--ease-out)}
.an-menu.is-open .an-menu-more{opacity:1;transition-delay:480ms}
.an-menu-more a{padding:5px 0;font-size:14px;letter-spacing:.02em;color:var(--on-dark-muted);transition:color 240ms}
.an-menu-more a:hover{color:var(--page)}
.an-menu-social{display:flex;gap:20px;padding-top:clamp(14px,2.5vh,20px);opacity:0;transition:opacity 700ms var(--ease-out)}
.an-menu-social a{display:inline-flex;padding:4px 0;color:var(--on-dark-muted);transition:color 240ms}
.an-menu-social a:hover{color:var(--page)}
.an-menu.is-open .an-menu-social{opacity:1;transition-delay:540ms}
.an-menu-foot{flex:none;margin-top:auto;padding-top:clamp(16px,3vh,28px);display:flex;flex-direction:column;gap:18px;border-top:1px solid var(--line-on-dark)}
.an-menu-contacts{display:flex;flex-direction:column;gap:14px;padding-top:18px}
.an-menu-contacts > div{display:flex;flex-direction:column;gap:5px}
.an-menu-contact{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px}
.an-menu-contact a{font-size:12px;color:var(--on-dark-muted);white-space:nowrap}
.an-menu-contact .an-menu-phone{font-size:15px;color:var(--page)}
.an-menu-ctas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.an-scrim{position:fixed;inset:0;z-index:65;background:rgba(var(--ink-rgb),.6);opacity:0;transition:opacity 600ms var(--ease-out)}
.an-scrim.is-open{opacity:1}
html.an-locked{overflow:hidden}

/* Home hero */
.an-hero-home .an-hero-top{display:grid;gap:28px;align-items:end;grid-template-columns:minmax(0,1fr)}
@media (min-width:860px){.an-hero-home .an-hero-top{grid-template-columns:repeat(2,minmax(0,1fr))}}
.an-hero-home .an-hero-aside{display:flex;flex-direction:column;gap:22px;max-width:400px;animation:anUp 600ms var(--ease-out) .12s both}
@media (min-width:860px){.an-hero-home .an-hero-aside{justify-self:end}}
.an-hero-home .is-style-eyebrow{animation:anFade 500ms var(--ease-out) both}
.an-hero-home h1{animation:anUp 600ms var(--ease-out) both}
.an-hero-media{position:relative;overflow:hidden;height:clamp(300px,62vh,620px);background:var(--alt);animation:anFade 400ms var(--ease-out) both}
.an-hero-media .an-fill img{animation:anKen 10s cubic-bezier(.2,.7,.2,1) both}
.an-hero-badge{position:absolute!important;left:0;bottom:0;background:var(--page);padding:16px 22px!important;display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;animation:anFade 500ms var(--ease-out) .3s both;max-width:calc(100% - 20px)}
.an-hero-badge > p{margin:0!important}
.an-hero-badge .an-badge-big{font-family:var(--display);font-size:22px;line-height:1;padding-right:14px;border-right:1px solid var(--line-strong)}
.an-hero-badge .an-badge-small{font-size:11px;letter-spacing:.18em;text-transform:uppercase}

/* Page hero: words on one side, a photo on the other */
.an-hero{display:grid;gap:clamp(32px,5vw,72px);align-items:end;grid-template-columns:minmax(0,1fr)}
@media (min-width:860px){.an-hero{grid-template-columns:repeat(2,minmax(0,1fr))}}
.an-hero > .wp-block-group:first-child{display:flex;flex-direction:column;gap:22px;padding-bottom:4px;animation:anUp 600ms var(--ease-out) both}
.an-hero > .wp-block-image{animation:anFade 400ms var(--ease-out) both}

/* Cards: services, intents, guides, house types */
.an-intent{display:flex;flex-direction:column;gap:16px}
.an-intent .wp-block-image{aspect-ratio:3/2;overflow:hidden;background:var(--alt);margin:0}
.an-intent .wp-block-image a{display:block;height:100%}
.an-intent .wp-block-image img{width:100%;height:100%;object-fit:cover;transition:transform 1400ms var(--ease)}
.an-intent:hover .wp-block-image img{transform:scale(1.05)}
.an-intent-t{font-family:var(--display);font-size:24px;line-height:1.1}
.an-intent-b{font-size:14px;line-height:1.55;min-height:3.1em}
.an-intent > .an-stack-sm{gap:8px}
.an-rules{display:grid;border-top:1px solid var(--line-strong);grid-template-columns:minmax(0,1fr)}
@media (min-width:620px){.an-rules{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.an-rules{grid-template-columns:repeat(3,minmax(0,1fr))}.an-rules.is-4{grid-template-columns:repeat(4,minmax(0,1fr))}}
.an-rule{padding:24px 28px 26px 0!important;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.an-rule > *{margin:0!important}
.an-rule-n{font-size:11px;letter-spacing:.2em}
.an-rule-t{font-family:var(--display);font-size:20px;line-height:1.2}
.an-rule-b{font-size:14px;line-height:1.6}
.an-stats{display:grid;border-top:1px solid var(--line-strong);grid-template-columns:minmax(0,1fr)}
@media (min-width:560px){.an-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.an-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}
.an-stat{padding:24px 24px 0 0!important;display:flex;flex-direction:column;gap:8px}
.an-stat > *{margin:0!important}
.an-stat-n{font-family:var(--display);font-size:clamp(30px,3vw,44px);line-height:1}
.an-town-stats a.an-stat-n{text-decoration:none;color:var(--ink)}
.an-town-stats a.an-stat-n:hover{text-decoration:underline;text-decoration-color:var(--accent)}
.an-town-stats-note{margin-top:16px!important}
.an-stat-l{font-size:13px;line-height:1.5;color:var(--muted)}
.an-minis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line-strong)}
.an-mini{padding:16px 12px 0 0!important;display:flex;flex-direction:column;gap:4px}
.an-mini > *{margin:0!important}
.an-mini-n{font-family:var(--display);font-size:26px;line-height:1.2}
.an-mini-l{font-size:11px;letter-spacing:.18em;text-transform:uppercase}
.an-pairs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line-on-dark)}
.an-pair{padding:16px 16px 16px 0!important;border-bottom:1px solid var(--line-on-dark);display:flex;flex-direction:column;gap:4px}
.an-pair > *{margin:0!important}
.an-pair-t{font-family:var(--display);font-size:19px;line-height:1.2}
.an-pair-b{font-size:13px;line-height:1.5;color:var(--on-dark-muted)}
.an-rows-dark{display:flex;flex-direction:column;border-top:1px solid var(--line-on-dark)}
.an-rows-dark > .wp-block-group{padding:16px 0!important;border-bottom:1px solid var(--line-on-dark);display:flex;flex-direction:column;gap:4px}
.an-rows-dark > .wp-block-group > *{margin:0!important}
.an-rows-dark .an-pair-t{font-size:20px}
.an-awards{display:flex;flex-direction:column}
.an-awards > .is-style-eyebrow{padding-bottom:14px}
.an-award{display:flex!important;justify-content:space-between;align-items:baseline;gap:16px;padding:16px 0!important;border-top:1px solid var(--line-strong)}
.an-award > *{margin:0!important}
.an-award-t{font-family:var(--display);font-size:22px;line-height:1.1}
.an-award-b{font-size:11px;letter-spacing:.2em;text-transform:uppercase;text-align:right}
.an-feecard,.an-card-white{background:var(--white);display:flex;flex-direction:column}
.an-feecard::before,.an-card-white::before{content:"";height:6px;background:var(--accent)}
.an-feecard.is-cool::before{background:var(--alt-deep)}
.an-feecard-in,.an-card-white > .wp-block-group{padding:clamp(24px,3vw,36px)!important;display:flex;flex-direction:column;gap:18px;flex:1}
.an-feecard-in > *,.an-card-white > .wp-block-group > *{margin:0!important}
.an-depts .an-feecard::before{display:none}
.an-depts .an-feecard-in{gap:14px}
.an-strip--top{height:6px;background:var(--accent);display:block}
.an-dept-phone{font-family:var(--display);font-size:clamp(28px,3vw,40px);line-height:1;text-decoration:none}
.an-dept-mail{font-size:15px;overflow-wrap:anywhere}
.an-depts p{font-size:14px;line-height:1.6}
.an-dept-cta{margin-top:auto!important;padding-top:8px}
.an-kv-list,.an-fee-rows{display:flex;flex-direction:column;border-top:1px solid var(--line-strong)}
.an-kv,.an-fee-row{display:flex!important;justify-content:space-between;gap:16px;padding:14px 0!important;border-bottom:1px solid var(--line)}
.an-kv > *,.an-fee-row > *{margin:0!important}
.an-kv{padding:12px 0!important;font-size:15px}
.an-fee-row > :first-child{font-size:14px}
.an-fee-row > :last-child{font-family:var(--display);font-size:19px;text-align:right}
.an-hours{max-width:420px}
.an-hours .an-kv-list{max-width:420px}
.an-hours-addr{font-family:var(--display);font-size:22px;line-height:1.3;text-decoration:none}

/* Quote */
.an-quote{max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:20px}
.an-quote > *{margin:0!important}
.an-quote::before{content:"“";font-family:var(--display);font-size:88px;line-height:.6;height:36px;color:var(--accent)}
.an-quote-text{font-family:var(--display);font-size:clamp(22px,2.2vw,30px);line-height:1.35}
.an-quote-by{font-size:11px;letter-spacing:.22em;text-transform:uppercase}

/* Bands */
.an-band{padding:clamp(40px,5vw,64px) var(--gutter)}
.an-band--alt{background:var(--alt)}
.an-band--warm{background:var(--warm)}
.an-band-in,.an-band > .an-in{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px}
.an-band-text,.an-band .an-in > .wp-block-group{display:flex;flex-direction:column;gap:8px;max-width:600px}
.an-band-text > *,.an-band .an-in > .wp-block-group > *{margin:0!important}
.an-band p{font-size:15px;line-height:1.6}
.an-mortband{padding:clamp(32px,4vw,48px) var(--gutter)!important}
.an-mortband > .an-in{display:grid;gap:24px 40px;align-items:center;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.an-mortband > .an-in{grid-template-columns:120px minmax(0,1fr) auto}}
.an-mortband .wp-block-image{width:150px;height:170px;align-self:end;margin:0 0 calc(-1 * clamp(32px,4vw,48px))!important}
.an-mortband .wp-block-image img{width:100%;height:100%;object-fit:cover;object-position:50% 100%}
@media (max-width:899px){.an-mortband .wp-block-image{order:3;margin:0!important}}
.an-mortband .an-stack-sm{gap:6px}
.an-mortband-t{font-family:var(--display);font-size:clamp(22px,2vw,28px);line-height:1.2}
.an-offer{background:var(--accent);padding:12px var(--gutter)!important;font-size:14px}
.an-offer > .an-in{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px}
.an-offer > .an-in > *{margin:0!important}
.an-offer .is-style-link > .wp-block-button__link{text-decoration-color:var(--ink)}

/* Ready to move, Welbeck hero: words on a card over a full-bleed photo */
.an-overlay{position:relative;overflow:hidden;display:flex;align-items:center;min-height:clamp(520px,86vh,760px);padding:clamp(48px,8vw,96px) var(--gutter)!important}
.an-overlay.is-bottom{align-items:flex-end;min-height:clamp(560px,92vh,860px);padding-bottom:clamp(32px,5vw,64px)!important}
.an-overlay > .an-in{position:relative;z-index:1}
.an-overlay-card{background:var(--page);padding:clamp(28px,4vw,52px)!important;max-width:660px;display:flex;flex-direction:column;gap:26px}
.an-overlay-card > *{margin:0!important}
.an-overlay.is-bottom .an-overlay-card{max-width:620px;gap:20px;animation:anUp 600ms var(--ease-out) .2s both}
.an-overlay.is-bottom .an-fill img{animation:anKen 12s cubic-bezier(.2,.7,.2,1) both}
.an-ready-cols{display:grid;border-top:1px solid var(--line-strong);grid-template-columns:minmax(0,1fr)}
.an-ready-cols > .wp-block-group{display:flex;flex-direction:column;gap:12px;padding:22px 24px 4px 0!important}
.an-ready-cols > .wp-block-group > *{margin:0!important}
.an-ready-cols > .wp-block-group + .wp-block-group{border-top:1px solid var(--line);padding:22px 0 4px!important}
@media (min-width:620px){.an-ready-cols{grid-template-columns:repeat(2,minmax(0,1fr))}.an-ready-cols > .wp-block-group + .wp-block-group{border-top:0;border-left:1px solid var(--line);padding:22px 0 4px 24px!important}}
.an-ready-t{font-family:var(--display);font-size:22px;line-height:1.15}
.an-ready-cols .wp-block-buttons{padding-top:6px}
.an-price-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 24px}
.an-price-row > *{margin:0!important}
.an-price-big{font-family:var(--display);font-size:24px}

/* FAQs: core Details blocks */
.an-faq-grid{display:grid;gap:32px;grid-template-columns:minmax(0,1fr)}
@media (min-width:860px){.an-faq-grid{grid-template-columns:minmax(0,1fr) minmax(0,3fr)}}
.an-faq-grid > .wp-block-group:first-child{display:flex;flex-direction:column;gap:14px}
.an-faq-grid > .wp-block-group:first-child p{font-size:14px;line-height:1.6}
.an-faq-list{display:flex;flex-direction:column;border-top:1px solid var(--line-strong)}
.an-faq-list .wp-block-details,.wp-block-details.is-style-faq{border-bottom:1px solid var(--line-strong);margin:0}
.an-faq-list summary,.is-style-faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 0;cursor:pointer;font-family:var(--display);font-size:22px;line-height:1.25;transition:padding 400ms var(--ease)}
.an-faq-list summary::-webkit-details-marker,.is-style-faq summary::-webkit-details-marker{display:none}
.an-faq-list summary::after,.is-style-faq summary::after{content:"";flex:none;width:32px;height:32px;border:1px solid var(--ink);background:linear-gradient(currentColor,currentColor) center/14px 1px no-repeat,linear-gradient(currentColor,currentColor) center/1px 14px no-repeat;transition:background-color 400ms,color 400ms}
.an-faq-list details[open] > summary::after,.is-style-faq[open] > summary::after{background:linear-gradient(var(--page),var(--page)) center/14px 1px no-repeat,var(--ink)}
@media (hover:hover){.an-faq-list summary:hover,.is-style-faq summary:hover{padding-left:10px}}
.an-faq-list details > :not(summary),.is-style-faq > :not(summary){padding:0 56px 24px 0;font-size:16px;line-height:1.65;margin:0;animation:anUp 500ms var(--ease) both}

/* Listings */
.an-badge{position:absolute;top:14px;left:14px;z-index:1;display:inline-block;background:var(--ink);color:var(--page);font-family:var(--body);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;padding:6px 10px;line-height:1}
.an-badge--to-let{background:var(--wp--preset--color--green,var(--ink))}
.an-badge--sold-stc,.an-badge--under-offer{background:var(--accent);color:var(--ink)}
.an-badge--let-agreed{background:var(--warm-deep);color:var(--ink)}
.an-badge--new{background:var(--alt);color:var(--ink)}
.an-badge--coming-soon{background:var(--page);color:var(--ink)}
.an-card{display:flex;flex-direction:column;gap:16px;min-width:0}
/* Listing photos are 3:2 like the portals, with the agency's mark in the bottom right; anything trimmed or zoomed keeps that corner. */
.an-card-media{position:relative;display:block;aspect-ratio:3/2;overflow:hidden;background:var(--alt)}
.an-card-media img{width:100%;height:100%;object-fit:cover;object-position:right bottom;transform-origin:right bottom;transition:transform 1400ms var(--ease)}
.an-card:hover .an-card-media img{transform:scale(1.05)}
.an-card-pics{position:relative}
.an-pic-btn{position:absolute;top:50%;z-index:2;width:34px;height:34px;margin-top:-17px;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:var(--ink);display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 8px rgba(var(--ink-rgb),.2);opacity:0;transition:opacity 250ms,background 200ms}
.an-pic-btn--prev{left:10px}
.an-pic-btn--next{right:10px}
.an-pic-btn:hover{background:var(--accent)}
.an-pic-n{position:absolute;right:10px;bottom:10px;z-index:2;background:rgba(var(--ink-rgb),.7);color:var(--page);font-size:11px;letter-spacing:.08em;padding:4px 7px;line-height:1;opacity:0;transition:opacity 250ms}
.an-card-pics:hover .an-pic-btn,.an-card-pics:hover .an-pic-n,.an-pic-btn:focus-visible,.an-card-pics.is-moved .an-pic-n{opacity:1}
@media (hover:none){.an-pic-btn,.an-pic-n{opacity:1}}
.an-strip{display:block;height:6px;margin-top:-16px;background:var(--accent)}
.an-strip--cool{background:var(--alt-deep)}
.an-card-text{display:flex;flex-direction:column;gap:8px}
.an-card-title{font-size:20px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.an-card-title a{text-decoration:none}
.an-card-line{font-size:11px;letter-spacing:.2em;text-transform:uppercase}
.an-card-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;border-top:1px solid var(--line)}
.an-card-rooms{font-size:12px;color:var(--muted);display:flex;gap:12px;white-space:nowrap}
.an-card-rooms > span{display:inline-flex;align-items:center;gap:5px}
.an-room-ico{flex:none}
.an-car-nav{display:flex;align-items:center;gap:16px}
.an-car-count{font-size:12px;letter-spacing:.18em;color:var(--muted)}
.an-listings .an-in{display:flex;flex-direction:column;gap:36px}
.an-listings .an-stack{gap:16px}
.an-car{overflow:hidden}
.an-car-track{display:flex;gap:24px;transition:transform 900ms var(--swing)}
.an-car-track > .an-card{flex:0 0 100%}
@media (min-width:620px){.an-car-track > .an-card{flex-basis:calc((100% - 24px) / 2)}}
@media (min-width:1000px){.an-car-track > .an-card{flex-basis:calc((100% - 48px) / 3)}}
@media (max-width:619px){.an-car{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:calc(-1 * var(--gutter))}.an-car-track{transform:none!important;padding-right:var(--gutter)}.an-car-track > .an-card{flex-basis:84%;scroll-snap-align:start}.an-car-nav .an-arrow{display:none}}

/* Search band */
.an-searchband{background:var(--alt);padding:clamp(48px,6vw,80px) var(--gutter)}
.an-searchband-in{display:grid;gap:24px;align-items:center;grid-template-columns:minmax(0,1fr)}
@media (min-width:860px){.an-searchband-in{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}}
.an-searchbox{display:grid;align-items:center;background:var(--page);border:1px solid var(--line-strong);grid-template-columns:auto minmax(0,1fr) auto}
.an-searchbox input[type=search]{border:0;border-left:1px solid var(--line);outline:0;background:transparent;padding:0 18px;height:54px;font-size:15px;min-width:0;-webkit-appearance:none;appearance:none;border-radius:0}
.an-searchbox-go{padding:6px}
.an-seg{display:flex;gap:4px;padding:0 6px}
.an-seg label{position:relative;cursor:pointer}
.an-seg input{position:absolute;opacity:0;pointer-events:none}
.an-seg span{display:flex;align-items:center;height:40px;padding:0 14px;font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;transition:background 300ms,color 300ms}
.an-seg input:checked + span{background:var(--ink);color:var(--page)}
.an-seg input:focus-visible + span{outline:2px solid var(--accent)}
@media (max-width:519px){.an-searchbox{grid-template-columns:minmax(0,1fr) auto}.an-seg{grid-column:1 / -1;border-bottom:1px solid var(--line);padding:6px}.an-searchbox input[type=search]{border-left:0}}

/* Results */
.an-results{padding:48px var(--gutter) 0;position:relative;z-index:5}
.an-results-head{display:flex;flex-direction:column;gap:28px;animation:anUp 800ms var(--ease-out) both}
.an-results-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px}
.an-results-top .an-stack{gap:16px}
.an-filters{display:grid;gap:8px;grid-template-columns:minmax(0,1fr)}
@media (min-width:560px){.an-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:900px){.an-filters{grid-template-columns:minmax(0,2fr) repeat(4,minmax(0,1fr)) auto}}
.an-filters-go{height:auto;min-height:56px}
@media (max-width:899px){.an-filters-go{grid-column:1/-1}}
.an-field{position:relative;display:flex;flex-direction:column;gap:4px;background:var(--page);border:1px solid var(--line-strong);padding:9px 16px 7px;min-width:0;transition:border-color 250ms}
.an-field:hover,.an-field:focus-within{border-color:var(--ink)}
.an-field > span{font-size:12px;line-height:16px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.an-field input,.an-field select{border:0;outline:0;background:transparent;padding:0;height:24px;font-size:15px;min-width:0;width:100%;-webkit-appearance:none;appearance:none;border-radius:0;cursor:pointer}
.an-field input{cursor:text}
.an-field--select::after{content:"";position:absolute;right:20px;top:50%;width:8px;height:8px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.an-morefilters{border:1px solid var(--ink);background:var(--page);padding:clamp(20px,3vw,32px);display:flex;flex-direction:column;gap:24px;animation:anUp 500ms var(--ease) both}
.an-morefilters[hidden]{display:none}
.an-morefilters-row{display:grid;gap:12px 24px;align-items:start;grid-template-columns:minmax(0,1fr)}
@media (min-width:760px){.an-morefilters-row{grid-template-columns:160px minmax(0,1fr)}}
.an-morefilters-row .an-k{font-size:12px;letter-spacing:.12em;padding-top:11px}
.an-morefilters-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:20px;border-top:1px solid var(--line)}
.an-chips{display:flex;flex-wrap:wrap;gap:8px}
.an-chip{position:relative;cursor:pointer}
.an-chip input{position:absolute;opacity:0;pointer-events:none}
.an-chip span,.an-chip-btn{display:flex;align-items:center;height:40px;padding:0 16px;font-size:14px;border:1px solid var(--line-strong);background:transparent;cursor:pointer;transition:background 250ms,color 250ms,border-color 250ms}
.an-chip:hover span,.an-chip-btn:hover{border-color:var(--ink)}
.an-chip input:checked + span,.an-chip-btn[aria-selected="true"]{background:var(--ink);color:var(--page);border-color:var(--ink)}
.an-chips--tabs{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}
.an-chips--tabs .an-chip-btn{flex:none;font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase}
.an-results-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:4px;border-bottom:1px solid var(--line)}
.an-results-bar-l{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.an-results-count{font-size:12px;letter-spacing:.18em;text-transform:uppercase}
/* Whether sold and let agreed homes show: a link, so it works without script and each state has its own address. */
.an-switch{display:inline-flex;align-items:center;gap:12px;font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;color:var(--muted);transition:color 250ms}
.an-switch:hover,.an-switch[aria-checked="true"]{color:var(--ink)}
.an-switch i{position:relative;flex:none;width:34px;height:18px;border:1px solid var(--line-strong);transition:background 250ms,border-color 250ms}
.an-switch i::after{content:"";position:absolute;top:3px;left:3px;width:10px;height:10px;background:var(--line-strong);transition:transform 300ms var(--ease-out),background 250ms}
.an-switch[aria-checked="true"] i{background:var(--ink);border-color:var(--ink)}
.an-switch[aria-checked="true"] i::after{background:var(--page);transform:translateX(16px)}
.an-filter-btn{display:inline-flex;align-items:center;gap:10px;height:40px;padding:0 14px;cursor:pointer;font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;background:transparent;border:1px solid var(--ink);transition:background 250ms,color 250ms}
.an-filter-btn[aria-expanded="true"]{background:var(--ink);color:var(--page)}
.an-filter-ico{position:relative;width:14px;height:10px;flex:none;background:linear-gradient(currentColor,currentColor) 0 0/14px 1px no-repeat,linear-gradient(currentColor,currentColor) 3px 4.5px/8px 1px no-repeat,linear-gradient(currentColor,currentColor) 6px 9px/2px 1px no-repeat}
.an-results-list{padding:40px 0 var(--section-y)}
.an-empty{padding:64px 0;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}
.an-empty-t{font-family:var(--display);font-size:28px}

/* Property page */
.an-prop-top{padding:18px var(--gutter) 0}
.an-prop-top .an-stack{gap:18px}
.an-crumbs{display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.2em;text-transform:uppercase}
.an-gallery{display:grid;gap:8px;grid-template-columns:minmax(0,1fr);animation:anFade 700ms var(--ease-out) both}
.an-gallery button{position:relative;overflow:hidden;border:0;padding:0;cursor:zoom-in;background:var(--alt)}
.an-gallery img{width:100%;height:100%;object-fit:cover;object-position:right bottom;transform-origin:right bottom}
.an-gallery-main{aspect-ratio:3/2;max-height:78vh;width:100%}
.an-gallery-side{display:none}
@media (min-width:860px){.an-gallery.has-side{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.an-gallery-side{display:grid;gap:8px;grid-template-rows:repeat(2,minmax(0,1fr));min-height:0}.an-gallery-side img{position:absolute;inset:0;transition:transform 900ms var(--ease)}.an-gallery-side button:hover img{transform:scale(1.04)}}
.an-gallery .an-gallery-count{position:absolute;left:16px;bottom:16px;z-index:2;border:0;background:var(--page);color:var(--ink);padding:10px 14px;font:inherit;font-size:11px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;overflow:visible;transition:background 200ms}
.an-gallery .an-gallery-count:hover{background:var(--accent)}
.an-gallery{position:relative}
.an-pgrid{position:fixed;inset:0;z-index:94;background:var(--page);display:grid;grid-template-rows:auto minmax(0,1fr);opacity:0;transition:opacity 400ms var(--ease-out)}
.an-pgrid.is-open{opacity:1}
.an-pgrid-head{display:flex;justify-content:space-between;align-items:center;padding:14px var(--gutter);border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.22em;text-transform:uppercase}
.an-pgrid-scroll{overflow-y:auto;overscroll-behavior:contain;padding:clamp(12px,2vw,24px) var(--gutter) 48px}
.an-pgrid-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:1400px;margin:0 auto}
@media (min-width:900px){.an-pgrid-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
.an-pgrid-item{display:block;padding:0;border:0;background:var(--alt);aspect-ratio:3/2;overflow:hidden;cursor:zoom-in}
.an-pgrid-item img{width:100%;height:100%;object-fit:cover;transition:transform 900ms var(--ease)}
.an-pgrid-item:hover img{transform:scale(1.03)}
.an-gallery .an-badge{top:16px;left:16px}
.an-assets{display:flex;overflow-x:auto;border:1px solid var(--line-strong);scrollbar-width:none}
.an-assets > *{flex:1 0 auto;min-width:112px;height:52px;display:flex;align-items:center;justify-content:center;border:0;border-right:1px solid var(--line);background:transparent;cursor:pointer;font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;color:var(--ink);padding:0 6px;transition:background 300ms,color 300ms}
.an-assets > :last-child{border-right:0}
.an-assets > :hover{background:var(--ink);color:var(--page)}
.an-prop-body{padding:clamp(40px,5vw,64px) var(--gutter) var(--section-y)}
.an-prop-cols{display:grid;gap:clamp(40px,5vw,72px);align-items:start;grid-template-columns:minmax(0,1fr)}
@media (min-width:1000px){.an-prop-cols{grid-template-columns:minmax(0,1fr) 360px}}
.an-prop-main{display:flex;flex-direction:column;gap:48px;min-width:0}
.an-prop-main > .an-stack{gap:18px}
.an-prop-main > .an-stack:first-child{gap:14px}
.an-prop-title{font-size:clamp(34px,3.6vw,52px);line-height:1.05}
.an-prop-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px}
.an-prop-price > span:first-child{font-family:var(--display);font-size:30px}
.an-prop-price .an-k{font-size:11px;letter-spacing:.2em}
.an-facts{display:grid;border-top:1px solid var(--line-strong);grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:700px){.an-facts{grid-template-columns:repeat(3,minmax(0,1fr))}}
.an-facts > div{display:flex;flex-direction:column;gap:6px;padding:16px 16px 16px 0;border-bottom:1px solid var(--line)}
.an-facts-v{font-family:var(--display);font-size:22px;line-height:1.1;display:flex;align-items:center;gap:8px}
.an-facts-v .an-room-ico{color:var(--muted)}
.an-facts .an-k{font-size:12px;letter-spacing:.12em}
.an-features{list-style:none;display:grid;column-gap:32px;grid-template-columns:minmax(0,1fr)}
@media (min-width:700px){.an-features,.an-info{grid-template-columns:repeat(2,minmax(0,1fr))}}
.an-features li{display:flex;gap:14px;padding:13px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.5}
.an-features li::before{content:"";flex:none;width:12px;height:1px;margin-top:.8em;background:var(--accent)}
.an-headrow{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.an-headrow--between{justify-content:space-between;align-items:baseline}
.an-desc{position:relative;overflow:hidden;transition:max-height 700ms var(--ease)}
.an-desc.is-clamped{max-height:250px}
.an-desc.is-clamped::after{content:"";position:absolute;left:0;right:0;bottom:0;height:80px;background:linear-gradient(rgba(var(--page-rgb),0),var(--page))}
.an-desc p{margin:0 0 16px;font-size:16px;line-height:1.75;max-width:680px}
.an-info{display:grid;column-gap:32px;grid-template-columns:minmax(0,1fr)}
.an-info > div{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--line);font-size:14px}
.an-info .an-k{font-size:12px;letter-spacing:.1em;padding-top:2px}
.an-info span:last-child{text-align:right}
.an-map{position:relative;z-index:0;background:var(--alt);overflow:hidden}
[data-an-mapview] .leaflet-tile-pane,.an-map .leaflet-tile-pane{filter:grayscale(1) sepia(.18) contrast(.95)}
.an-map.leaflet-container{font-family:var(--body);background:var(--alt)}
.an-map-open{position:absolute;inset:0;display:grid;place-items:center;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}
.an-mappin{display:block;transform:translate(-50%,-100%);color:var(--ink);filter:drop-shadow(0 3px 4px rgba(var(--ink-rgb),.35))}
.an-map .leaflet-control-attribution,.an-mapview .leaflet-control-attribution{font-size:10px;line-height:1.4;padding:1px 6px;background:rgba(255,255,255,.75);color:var(--muted)}
.an-map .leaflet-control-attribution a,.an-mapview .leaflet-control-attribution a{color:inherit;text-decoration:none}
.an-disclaimer{font-size:12px;line-height:1.6;color:var(--muted);max-width:680px}
.an-prop-aside{border:1px solid var(--line-strong);background:var(--page);display:flex;flex-direction:column}
@media (min-width:1000px){.an-prop-aside{position:sticky;top:150px}}
.an-prop-aside-top{padding:26px 26px 22px;display:flex;flex-direction:column;gap:16px}
.an-prop-aside-price{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.an-prop-aside-price > span:first-child{font-family:var(--display);font-size:28px;line-height:1}
.an-prop-mort{background:var(--warm-deep);padding:0 26px 0 14px;display:grid;grid-template-columns:116px minmax(0,1fr);gap:18px;align-items:end}
.an-prop-mort img{display:block;width:116px;height:auto;max-height:190px;object-fit:contain;object-position:50% 100%;margin-top:14px}
.an-prop-mort .an-stack{gap:6px;align-items:flex-start;align-self:center;padding:22px 0}
.an-prop-mort-t{font-family:var(--display);font-size:17px;line-height:1.25}
.an-prop-dept{padding:20px 26px 24px;display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--line)}
.an-prop-dept-phone{font-family:var(--display);font-size:22px;text-decoration:none}
.an-prop-dept a:last-child{font-size:13px;overflow-wrap:anywhere}
.an-sticky{position:fixed;left:0;right:0;bottom:0;z-index:45;background:var(--page);border-top:1px solid var(--line-strong);padding:12px var(--gutter);display:none;grid-template-columns:minmax(0,1fr) auto 46px;gap:10px;align-items:center;transform:translateY(100%);transition:transform 500ms var(--ease-out)}
.an-sticky.is-on{transform:none}
@media (max-width:999px){.an-sticky{display:grid;padding-bottom:calc(12px + env(safe-area-inset-bottom))}body:has(.an-wa) .an-footer-base{height:104px}body:has(.an-sticky) .an-footer-base{height:calc(var(--an-dock,78px) + 24px)}body:has(.an-sticky):has(.an-wa) .an-footer-base{height:calc(var(--an-dock,78px) + 104px)}}
.an-sticky-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.an-sticky-text span:last-child{font-size:12px;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.an-sticky-price{font-family:var(--display);font-size:20px;line-height:1}
.an-sticky-call{width:46px;height:46px;border:1px solid var(--ink);display:grid;place-items:center;text-decoration:none;font-size:10px;letter-spacing:.14em;font-weight:500;text-transform:uppercase}
.an-sticky.is-page{grid-template-columns:minmax(0,1fr) auto auto;gap:8px}
.an-sticky.is-page > *{margin:0!important}
.an-sticky.is-page .wp-block-buttons{flex-wrap:nowrap;gap:8px}
.an-sticky.is-page .wp-block-button__link{padding:0 16px}

/* Team, faces, plots, guides */
.an-member{display:flex;flex-direction:column;gap:14px}
.an-member-img{aspect-ratio:4/5;overflow:hidden;background:var(--alt-deep)}
.an-member-img img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;transition:transform 1200ms var(--ease)}
.an-member:hover .an-member-img img{transform:scale(1.04)}
.an-member h3{font-size:24px}
.an-member .an-k{font-size:11px;letter-spacing:.2em}
.an-member-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;border-top:1px solid var(--line-strong);font-size:13px}
.an-faces{display:grid;gap:24px;align-items:center;padding-top:8px;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.an-faces{grid-template-columns:minmax(0,3fr) minmax(0,1fr)}}
.an-faces-grid{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}
@media (min-width:560px){.an-faces-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
.an-faces-grid a{aspect-ratio:1;overflow:hidden;background:var(--alt)}
.an-faces-grid img{width:100%;height:100%;object-fit:cover;object-position:50% 22%;transition:transform 900ms var(--ease)}
.an-faces-grid a:hover img{transform:scale(1.06)}
.an-faces .an-stack{gap:10px;align-items:flex-start}
.an-faces-t{font-family:var(--display);font-size:22px;line-height:1.2}
.an-plots{display:flex;flex-direction:column;border-top:1px solid var(--line-strong)}
.an-plot{display:grid;gap:8px 20px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1fr);font-size:15px}
@media (min-width:860px){.an-plot{grid-template-columns:110px minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) 140px}}
.an-plot-n{font-family:var(--display);font-size:22px}
.an-plot-status{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.an-plot-cta{display:flex;justify-content:flex-end}
.an-dot{width:8px;height:8px;flex:none;background:var(--ink)}
.an-dot--reserved{background:var(--accent)}
.an-dot--coming-soon{background:var(--warm-deep)}
.an-dot--sold{background:var(--alt-deep)}
.an-subnav{position:sticky;top:104px;z-index:40;background:var(--page);border-bottom:1px solid var(--line);padding:0 var(--gutter)!important}
.an-subnav > .an-in{display:flex;gap:28px;overflow-x:auto;height:56px;align-items:center;scrollbar-width:none}
.an-subnav a{flex:none;font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;text-decoration:none}
.an-subnav a:hover{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:6px}
.an-subnav p{display:flex;gap:28px;white-space:nowrap}
.an-tiles{display:grid;gap:1px;background:var(--line-on-dark);border:1px solid var(--line-on-dark);grid-template-columns:minmax(0,1fr)}
@media (min-width:620px){.an-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.an-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}
.an-tile{display:flex;flex-direction:column;justify-content:space-between;gap:40px;min-height:220px;padding:28px!important;background:var(--ink);transition:background 400ms}
.an-tile:hover{background:rgba(var(--page-rgb),.04)}
.an-tile > *{margin:0!important}
.an-tile-n{font-size:11px;letter-spacing:.2em;color:var(--warm-deep)}
.an-tile .an-stack-sm{gap:10px}
.an-tile-t{font-family:var(--display);font-size:26px;line-height:1.15}
.an-tile-b{font-size:14px;line-height:1.55;color:var(--on-dark-muted)}
.an-housetype{display:flex;flex-direction:column;gap:16px}
.an-housetype > *{margin:0!important}
.an-housetype .an-ratio-43{position:relative}
.an-housetype .an-ratio-43 img{transition:transform 1200ms var(--ease)}
.an-housetype:hover .an-ratio-43 img{transform:scale(1.05)}
.an-housetype .an-strip{margin-top:-16px!important}
.an-housetype-foot{display:flex!important;justify-content:space-between;align-items:center;padding-top:12px!important;border-top:1px solid var(--line-strong)}
.an-housetype-foot > *{margin:0!important}
.an-dev-logo{margin:0!important;flex:none}.an-dev-logo img{display:block;height:34px;width:auto;max-width:180px;object-fit:contain}
.an-housetype-foot p{font-size:13px}
.an-guides{display:flex;flex-direction:column;gap:40px;padding:0 var(--gutter) var(--section-y)}
.an-guides > .an-in:first-child{margin-top:-8px}
.an-guide-feat{display:grid;text-decoration:none;background:var(--ink);color:var(--page);grid-template-columns:minmax(0,1fr)}
@media (min-width:860px){.an-guide-feat{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}
.an-guide-feat-img{position:relative;display:block;overflow:hidden;min-height:clamp(280px,46vh,460px);background:var(--alt)}
.an-guide-feat-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1400ms var(--ease)}
.an-guide-feat:hover img{transform:scale(1.05)}
.an-guide-feat-text{display:flex;flex-direction:column;justify-content:space-between;gap:40px;padding:clamp(28px,4vw,56px)}
.an-guide-feat-meta{display:flex;justify-content:space-between;gap:16px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--warm-deep)}
.an-guide-feat-t{font-family:var(--display);font-size:clamp(32px,3.4vw,48px);line-height:1.04;letter-spacing:-.02em;color:var(--accent)}
.an-guide-feat-b{font-size:15px;line-height:1.6;color:var(--on-dark-muted);max-width:420px}
.an-guide-feat .an-link{min-height:0;align-self:flex-start}
.an-guide{display:flex;flex-direction:column;gap:16px}
.an-guide[hidden],.an-guide-feat-wrap[hidden]{display:none}
.an-guide-img{position:relative;display:block;aspect-ratio:3/2;overflow:hidden;background:var(--alt)}
.an-guide-img img{width:100%;height:100%;object-fit:cover;transition:transform 1400ms var(--ease)}
.an-guide:hover .an-guide-img img{transform:scale(1.05)}
.an-guide-cat{position:absolute;left:0;top:0;background:var(--page);padding:8px 12px;font-size:10px;letter-spacing:.22em;text-transform:uppercase}
.an-guide h3{font-size:24px}
.an-guide h3 a{text-decoration:none}
.an-guide p{font-size:14px;line-height:1.55;min-height:3.1em}
.an-guide-grid{row-gap:48px}

/* Reviews */
.an-reviews{display:flex;flex-direction:column;gap:28px}
.an-reviews-head{display:flex;justify-content:space-between;align-items:center;gap:16px}
.an-reviews-head .an-k{font-size:11px;letter-spacing:.26em}
.an-reviews-ctl{display:flex;align-items:center;gap:14px;font-size:12px;letter-spacing:.16em}
.an-reviews-ctl .an-link{min-height:44px;font-size:11px;letter-spacing:.2em;padding:0 4px}
.an-reviews-stage{display:grid}
.an-review{grid-area:1/1;margin:0;display:flex;flex-direction:column;gap:22px;opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity 700ms var(--ease-out),transform 900ms var(--ease)}
.an-review.is-on{opacity:1;transform:none;pointer-events:auto}
.an-quote-mark{font-family:var(--display);font-size:88px;line-height:.6;height:36px;color:var(--accent)}
.an-review blockquote{margin:0;font-family:var(--display);font-size:clamp(22px,2.2vw,30px);line-height:1.32}
.an-review figcaption{display:flex;align-items:center;gap:14px;font-size:11px;letter-spacing:.22em;text-transform:uppercase}
.an-review figcaption span:first-child{font-weight:500}
.an-review figcaption i{width:18px;height:1px;background:var(--ink)}
.an-reviews-nav{display:flex;align-items:center;gap:16px}
.an-reviews-bars{flex:1;display:grid;gap:6px;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}
.an-reviews-bars button{height:14px;padding:6px 0;border:0;background:transparent;cursor:pointer}
.an-reviews-bars span{display:block;height:2px;background:var(--line-strong);overflow:hidden}
.an-reviews-bars i{display:block;height:2px;width:0;background:var(--ink)}
.an-reviews-bars .is-done i{width:100%}
.an-reviews-bars .is-on i{width:100%;transition:width var(--rv,7000ms) linear}
.an-reviews-bars .is-paused i{transition:none}

/* Article (guides) */
.an-article-head{max-width:760px;margin:0 auto;padding:48px var(--gutter) 32px!important;display:flex;flex-direction:column;gap:18px}
.an-article-head .wp-block-post-terms a{text-decoration:none}
.an-article-img{max-width:1240px;margin:0 auto!important;padding:0 var(--gutter)}
.an-article-img img{width:100%;aspect-ratio:16/9;object-fit:cover}
.an-article-body{max-width:760px;margin:0 auto;padding:clamp(32px,4vw,56px) var(--gutter) var(--section-y)}
.an-article-body > * + *{margin-top:1.1em!important}
.an-article-body p,.an-article-body li{font-size:17px;line-height:1.75}
.an-article-body h2{margin-top:1.6em!important}
.an-article-body ul,.an-article-body ol{padding-left:1.2em}

/* Footer */
.an-footer{background:var(--ink);color:var(--page)}
.an-footer a{color:var(--page)}
.an-footer-in{max-width:1240px;margin:0 auto;padding:clamp(64px,7vw,96px) var(--gutter) 0;box-sizing:content-box;display:flex;flex-direction:column;gap:48px}
.an-footer-grid{display:grid;gap:40px;grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){.an-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.an-footer-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr)}}
.an-footer-brand{display:flex;flex-direction:column;gap:20px}
.an-footer-brand img{height:44px;width:auto;align-self:flex-start}
.an-footer-strap{font-family:var(--display);font-size:28px;line-height:1.1;color:var(--accent)}
.an-footer-areas{font-size:13px;line-height:1.6;color:var(--on-dark-muted);max-width:280px}
.an-footer-areas a{color:var(--page);text-decoration:underline;text-decoration-color:rgba(var(--page-rgb),.3);text-underline-offset:3px;transition:color 240ms,text-decoration-color 240ms}
.an-footer-areas a:hover{color:var(--accent);text-decoration-color:var(--accent)}
.an-footer-social{display:flex;gap:10px}
.an-footer-social a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--line-on-dark);border-radius:999px;transition:color 240ms,border-color 240ms}
.an-footer-social a:hover{color:var(--accent);border-color:var(--accent)}
.an-footer-dept{display:flex;flex-direction:column;gap:6px;min-width:0}
.an-footer-phone{font-family:var(--display);font-size:22px;text-decoration:none;padding-top:6px}
.an-footer-mail{font-size:13px;color:var(--on-dark-muted)!important;overflow-wrap:anywhere}
.an-footer-dept > div{padding-top:14px}
.an-footer-nav{display:flex;flex-direction:column;gap:4px}
.an-footer-nav .an-k{padding-bottom:8px}
.an-footer-nav > div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 16px}
.an-footer-nav a{padding:3px 0;font-size:14px;text-decoration:none;transition:color 240ms}
.an-footer-nav a:hover{color:var(--accent)}
.an-footer-badges{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;padding:28px 0;border-top:1px solid var(--line-on-dark)}
.an-footer-logos{display:flex;flex-wrap:wrap;align-items:center;gap:20px 32px}
.an-footer-logos img{height:40px;width:auto}
.an-footer-group{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--on-dark-muted)}
.an-footer-group img{height:16px;width:auto;display:block}
.an-footer-legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;padding:0 0 28px;font-size:12px;color:var(--on-dark-muted)}
.an-footer-legal > div{display:flex;flex-wrap:wrap;gap:6px 18px}
.an-footer-legal a,.an-footer-legal button{color:var(--on-dark-muted);font-size:12px}
.an-footer-legal button{background:none;border:0;padding:0;cursor:pointer;font-family:inherit;letter-spacing:inherit;text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px}
.an-footer-base{height:0;background:var(--ink)}

/* Form panel */
.an-form-scrim{position:fixed;inset:0;z-index:80;background:rgba(var(--ink-rgb),.6);opacity:0;transition:opacity 500ms var(--ease-out)}
.an-form-scrim.is-open{opacity:1}
.an-form{position:fixed;z-index:90;top:0;bottom:0;right:0;width:min(1040px,100%);background:var(--page);display:grid;overflow:hidden;grid-template-columns:minmax(0,1fr);transform:translateX(100%);transition:transform 800ms var(--swing)}
.an-form.is-open{transform:none}
@media (min-width:900px){.an-form{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}
.an-form-aside{position:relative;overflow:hidden;background:var(--ink);display:none}
@media (min-width:900px){.an-form-aside{display:block}}
.an-form-pattern{position:absolute;inset:0;background:var(--an-pattern,none) center/600px auto;transform:scale(1.08);transition:transform 1800ms var(--ease)}
.an-form.is-open .an-form-pattern{transform:none}
.an-form-mark{position:absolute;top:36px;left:clamp(24px,3vw,40px);height:30px;width:auto}
.an-form-steps{position:absolute;left:0;right:0;bottom:0;background:var(--ink);color:var(--page);padding:clamp(20px,4vh,36px) clamp(24px,3vw,40px);display:flex;flex-direction:column;gap:clamp(12px,2.4vh,20px)}
.an-form-steps h3{font-size:clamp(24px,min(2.4vw,4.6vh),34px);line-height:1.05;color:var(--accent)}
.an-form-steps ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.an-form-steps li{display:flex;align-items:center;gap:14px;padding:clamp(5px,1vh,9px) 0;border-top:1px solid var(--line-on-dark);color:var(--on-dark-muted);transition:color 400ms}
.an-form-steps li span:first-child{font-size:10px;letter-spacing:.2em;width:18px}
.an-form-steps li span:nth-child(2){flex:1;font-size:13px}
.an-form-steps li i{width:6px;height:6px;flex:none;background:transparent;transition:background 400ms}
.an-form-steps li.is-on{color:var(--page)}
.an-form-steps li.is-on span:first-child{color:var(--accent)}
.an-form-steps li.is-on i,.an-form-steps li.is-done i{background:var(--accent)}
.an-form-main{display:flex;flex-direction:column;min-height:0;min-width:0;height:100vh;height:100dvh}
.an-form-band{flex:none;position:relative;height:clamp(84px,14vh,132px);background:var(--ink) var(--an-pattern,none) center/600px auto}
.an-form-band span{position:absolute;left:0;bottom:0;background:var(--ink);padding:16px clamp(24px,3.6vw,52px) 14px;font-family:var(--display);font-size:clamp(22px,3.4vh,30px);line-height:1;color:var(--accent)}
@media (min-width:900px){.an-form-band{display:none}}
.an-form-progress{flex:none;height:2px;background:var(--line)}
.an-form-progress i{display:block;height:2px;width:0;background:var(--accent);transition:width 800ms var(--ease)}
.an-form-head{flex:none;display:flex;justify-content:space-between;align-items:center;gap:16px;height:72px;padding:0 clamp(24px,3.6vw,52px)}
.an-form-head > div{display:flex;align-items:center;gap:14px}
.an-form-eyebrow{font-size:11px;letter-spacing:.26em;text-transform:uppercase;font-weight:500;color:var(--ink)}
.an-form-count{font-size:11px;letter-spacing:.2em;color:var(--muted)}
.an-form-body{flex:1;min-height:0;overflow-y:auto;display:flex;padding:0 clamp(24px,3.6vw,52px);scrollbar-width:none}
.an-form-step{margin:auto 0;width:100%;max-width:560px;padding:12px 0 24px;display:flex;flex-direction:column;gap:clamp(16px,3vh,26px);animation:anUp 600ms var(--ease) both}
.an-form-step h2{font-size:clamp(26px,min(2.8vw,5.4vh),38px);line-height:1.08}
.an-form-help{font-size:14px;line-height:1.55;color:var(--muted);margin-top:8px!important}
.an-form-tiles{display:grid;gap:8px;grid-template-columns:minmax(0,1fr)}
.an-form-tiles.is-2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:479px){.an-form-tiles.is-2{grid-template-columns:minmax(0,1fr)}}
.an-form-tile{display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;cursor:pointer;padding:clamp(14px,2.2vh,18px) 18px;background:transparent;border:1px solid var(--line-strong);transition:background 300ms,color 300ms,border-color 300ms}
.an-form-tile:hover{border-color:var(--ink)}
.an-form-tile b{display:block;font-family:var(--display);font-weight:400;font-size:19px;line-height:1.15}
.an-form-tile small{display:block;font-size:13px;line-height:1.4;color:var(--muted);margin-top:4px}
.an-form-tile i,.an-check i{width:16px;height:16px;flex:none;border:1px solid currentColor;display:grid;place-items:center}
.an-form-tile i::after,.an-check i::after{content:"";width:8px;height:8px;background:transparent;transition:background 300ms}
.an-form-tile[aria-pressed="true"]{background:var(--ink);color:var(--page);border-color:var(--ink)}
.an-form-tile[aria-pressed="true"] small{color:var(--on-dark-muted)}
.an-form-tile[aria-pressed="true"] i::after,.an-check[aria-checked="true"] i::after{background:var(--accent)}
.an-form-chips{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}
.an-form-chips.is-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.an-form-chips.is-6{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
.an-form-chips button{font-size:14px;min-height:48px;padding:0 8px;cursor:pointer;background:transparent;border:1px solid var(--line-strong);transition:background 250ms,color 250ms,border-color 250ms}
.an-form-chips button:hover{border-color:var(--ink)}
.an-form-chips button[aria-pressed="true"]{background:var(--ink);color:var(--page);border-color:var(--ink)}
.an-form-chips.is-5 button{font-family:var(--display);font-size:20px}
.an-form-chips.is-6 button{height:68px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
.an-form-chips.is-6 small{font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.an-form-chips.is-6 b{font-family:var(--display);font-weight:400;font-size:22px;line-height:1}
.an-form-group{display:flex;flex-direction:column;gap:10px}
.an-form-group > .an-k{font-size:12px;letter-spacing:.12em;color:var(--muted)}
.an-form-prop{display:grid;grid-template-columns:88px minmax(0,1fr);gap:16px;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line)}
.an-form-prop img{width:88px;height:66px;object-fit:cover}
.an-form-prop b{display:block;font-family:var(--display);font-weight:400;font-size:18px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.an-form-prop small{font-size:11px;letter-spacing:.2em;text-transform:uppercase}
.an-form-fields{display:grid;gap:10px;grid-template-columns:minmax(0,1fr)}
@media (min-width:520px){.an-form-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
.an-form textarea{border:1px solid var(--line-strong);outline:0;background:var(--page);padding:14px 18px;font-size:15px;line-height:1.5;resize:none;width:100%}
.an-form textarea:focus,.an-form .an-field:focus-within{border-color:var(--ink)}
.an-form .an-field{padding:10px 16px 8px;gap:6px}
.an-form .an-field input{font-size:16px}
.an-check{display:flex;align-items:flex-start;gap:12px;background:none;border:0;padding:8px 0 0;cursor:pointer;text-align:left;font-size:13px;line-height:1.45}
.an-check i{margin-top:1px;border-color:var(--ink)}
.an-check.is-required i{border-color:var(--ink)}
.an-form-privacy{font-size:12px;line-height:1.5;color:var(--muted);margin-top:6px!important}
.an-form-error{font-size:14px;color:#9b2c1f}
.an-form-done svg{display:block}
.an-form-done-t{font-size:clamp(30px,min(3vw,6vh),42px);line-height:1.05;animation:anUp 700ms var(--ease-out) .3s both}
.an-form-done p{font-size:15px;line-height:1.6}
.an-form-summary{display:flex;flex-direction:column;border-top:1px solid var(--line-strong);animation:anUp 700ms var(--ease-out) .45s both}
.an-form-summary div{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--line);font-size:14px}
.an-form-summary span:first-child{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-top:3px}
.an-form-summary span:last-child{text-align:right}
.an-form-next{display:flex;flex-direction:column;gap:8px;animation:anUp 700ms var(--ease-out) .6s both}
.an-form-next > div{display:flex;gap:14px;font-size:14px;line-height:1.5}
.an-form-next > div span:first-child{font-size:10px;letter-spacing:.2em;color:var(--accent);padding-top:3px;width:18px;flex:none}
.an-form-foot{flex:none;display:flex;justify-content:space-between;align-items:center;gap:12px;height:80px;padding:0 clamp(24px,3.6vw,52px);border-top:1px solid var(--line)}
.an-form-foot > div{display:flex;align-items:center;gap:18px}
.an-form-back{background:none;border:0;padding:6px 0;cursor:pointer;font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase}
.an-form-hint{font-size:12px;color:var(--muted)}
@media (max-width:479px){.an-form-hint{display:none}}
.an-spin{width:14px;height:14px;border:1px solid var(--line-strong);border-top-color:var(--ink);border-radius:50%;animation:anSpin 700ms linear infinite}
.an-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* Lightbox and EPC panel */
.an-lb{position:fixed;inset:0;z-index:95;background:rgba(var(--ink-rgb),.94);display:grid;grid-template-rows:auto minmax(0,1fr) auto;opacity:0;transition:opacity 400ms var(--ease-out);color:var(--page)}
.an-lb.is-open{opacity:1}
.an-lb-head{display:flex;justify-content:space-between;align-items:center;padding:16px var(--gutter);font-size:11px;letter-spacing:.22em;text-transform:uppercase}
/* The photo is pinned inside the stage so its limits are the stage's real size; in an auto grid row max-height:100% means nothing and tall photos ran off screen. */
.an-lb-stage{position:relative;min-height:0}
.an-lb-stage img{position:absolute;inset:0;margin:auto;width:auto;height:auto;max-width:calc(100% - 2 * var(--gutter));max-height:100%;object-fit:contain;animation:anFade 400ms var(--ease-out) both}
.an-lb.is-plain .an-lb-stage{background:var(--white)}
.an-lb-nav{display:flex;justify-content:center;gap:12px;padding:16px}
.an-lb .an-arrow,.an-lb .an-close{color:var(--page);border-color:rgba(var(--page-rgb),.4)}
.an-lb .an-arrow:hover,.an-lb .an-close:hover{background:var(--page);color:var(--ink)}
.an-epc{position:fixed;top:0;right:0;bottom:0;z-index:92;width:min(560px,100%);background:var(--page);display:flex;flex-direction:column;transform:translateX(100%);transition:transform 700ms var(--swing)}
.an-epc.is-open{transform:none}
.an-epc-head{flex:none;display:flex;justify-content:space-between;align-items:center;height:72px;padding:0 clamp(24px,3.6vw,48px);border-bottom:1px solid var(--line)}
.an-epc-head span{font-size:11px;letter-spacing:.26em;text-transform:uppercase;font-weight:500}
.an-epc-body{flex:1;min-height:0;overflow-y:auto;padding:clamp(24px,4vh,40px) clamp(24px,3.6vw,48px);display:flex;flex-direction:column;gap:28px}
.an-epc-body h2{font-size:clamp(28px,3vw,38px);line-height:1.08}
.an-epc-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line-strong)}
.an-epc-tabs button{height:46px;border:0;cursor:pointer;font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;background:transparent;transition:background 300ms,color 300ms}
.an-epc-tabs button[aria-selected="true"]{background:var(--ink);color:var(--page)}
.an-epc-scale{display:flex;flex-direction:column;gap:6px}
.an-epc-row{display:grid;grid-template-columns:minmax(0,1fr) 72px 72px;gap:8px;align-items:center;height:38px}
.an-epc-row.is-head{height:auto;font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding-bottom:4px}
.an-epc-row.is-head span{text-align:center}
.an-epc-row.is-head span:first-child{text-align:left}
.an-epc-bar{height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 12px;color:var(--ink);width:0;transition:width 900ms var(--ease)}
.an-epc-bar b{font-weight:700;font-size:18px}
.an-epc-bar span{font-size:12px;letter-spacing:.06em;white-space:nowrap}
.an-epc-cur,.an-epc-pot{height:100%;display:grid;place-items:center;font-family:var(--display);font-size:20px}
.an-epc-cur{background:var(--ink);color:var(--page)}
.an-epc-pot{border:1px solid var(--ink);background:var(--accent)}
.an-epc-foot{flex:none;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px clamp(24px,3.6vw,48px);border-top:1px solid var(--line)}

/* Cookie banner */
.an-cookies{position:fixed;left:var(--gutter);bottom:var(--gutter);z-index:96;width:min(420px,calc(100% - 2 * var(--gutter)));background:var(--page);border:1px solid var(--ink);box-shadow:0 18px 48px rgba(var(--ink-rgb),.18);padding:22px 22px 20px;display:flex;flex-direction:column;gap:14px;animation:anUp 600ms var(--ease-out) both}
body:has(.an-sticky) .an-cookies{bottom:calc(var(--an-dock,78px) + 14px)}
.an-wa{position:fixed;right:clamp(16px,2vw,28px);bottom:clamp(16px,2vw,28px);z-index:60;display:flex;flex-direction:column;align-items:flex-end;gap:12px;transition:bottom 500ms var(--ease-out)}
@media (max-width:999px){body:has(.an-sticky.is-on) .an-wa{bottom:calc(var(--an-dock,78px) + 16px)}}
.an-wa-btn{width:56px;height:56px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 8px 24px rgba(var(--ink-rgb),.22);transition:transform 300ms var(--ease-out)}
.an-wa-btn:hover{transform:scale(1.06);color:#fff}
.an-wa-card{width:min(300px,calc(100vw - 2 * var(--gutter)));background:var(--page);border:1px solid var(--ink);box-shadow:0 18px 48px rgba(var(--ink-rgb),.18);padding:18px 20px 20px;display:flex;flex-direction:column;gap:12px;animation:anUp 400ms var(--ease-out) both}
.an-wa-card[hidden]{display:none}
.an-wa-head{display:flex;justify-content:space-between;align-items:center;font-family:var(--display);font-size:20px;line-height:1.2}
.an-wa-x{width:32px;height:32px;margin:-6px -8px 0 0;border:0;background:none;color:var(--ink);cursor:pointer;display:grid;place-items:center}
.an-wa-card p{margin:0;font-size:15px;line-height:1.5}
.an-wa-go{align-self:flex-start}
html.an-locked .an-wa{display:none}
@media (min-width:1000px){body:has(.an-sticky) .an-cookies{bottom:var(--gutter)}}
.an-cookies-t{font-family:var(--display);font-size:22px;line-height:1.15}
.an-cookies p{font-size:13px;line-height:1.55}
.an-cookies-cats{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.an-cookie-cat{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);background:none;border-left:0;border-right:0;border-top:0;cursor:pointer;text-align:left;width:100%}
.an-cookie-cat[disabled]{opacity:.5;cursor:default}
.an-cookie-cat b{display:block;font-weight:500;font-size:14px}
.an-cookie-cat small{display:block;font-size:12px;color:var(--muted)}
.an-toggle{position:relative;width:44px;height:26px;flex:none;border:1px solid var(--ink);background:transparent;transition:background 300ms}
.an-toggle::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;background:var(--ink);transition:transform 300ms var(--ease),background 300ms}
[aria-checked="true"] > .an-toggle{background:var(--ink)}
[aria-checked="true"] > .an-toggle::after{transform:translateX(18px);background:var(--accent)}
.an-cookies-btns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.an-cookies-btns .an-btn{padding:0 10px}
.an-cookies .an-link{align-self:flex-start;min-height:32px}

/* Gentle entrances as sections scroll into view */
.an-reveal{opacity:0;transform:translateY(14px);transition:opacity 600ms var(--ease-out),transform 600ms var(--ease-out);transition-delay:var(--d,0ms)}
.an-reveal.is-in{opacity:1;transform:none}
.editor-styles-wrapper .an-reveal{opacity:1;transform:none}

/* Editor: show the page as visitors see it, without the fixed header offset */
.editor-styles-wrapper{background:var(--page);font-family:var(--body);font-weight:300}
.editor-styles-wrapper .an-main{padding-top:0}
.editor-styles-wrapper .an-header{position:relative}
.editor-styles-wrapper .an-menu,.editor-styles-wrapper .an-scrim{display:none}
.an-form .an-form-find{height:auto;min-height:52px}
.an-form .an-field select{font-size:16px}
.an-addr-wrap{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.an-addr-label{font-size:12px;line-height:16px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.an-addr{display:flex;flex-direction:column;max-height:264px;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line-strong);background:var(--page)}
.an-addr-opt{display:block;width:100%;text-align:left;padding:12px 16px;font-size:15px;line-height:1.35;background:transparent;border:0;border-bottom:1px solid var(--line);cursor:pointer;transition:background 200ms,color 200ms}
.an-addr-opt:last-child{border-bottom:0}
.an-addr-opt:hover{background:var(--line)}
.an-addr-opt:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}
.an-addr-opt[aria-selected="true"]{background:var(--ink);color:var(--page)}
.an-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 28px;margin-top:56px}
.an-pager-n{display:flex;flex-wrap:wrap;gap:6px}
.an-pager-n > *{display:flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 10px;border:1px solid var(--line-strong);font-size:14px;text-decoration:none;color:var(--ink);transition:background 250ms,color 250ms}
.an-pager-n a:hover{border-color:var(--ink)}
.an-pager-n [aria-current]{background:var(--ink);border-color:var(--ink);color:var(--page)}
.an-lb-stage img{transition:opacity 200ms}
.an-lb.is-loading .an-lb-stage img{opacity:.55}
/* Dropdowns, as drawn in the design: label over value, a turning chevron, and a square panel of options */
.an-dd{position:relative;min-width:0}
.an-dd.is-open{z-index:30}
.an-dd-btn{position:relative;width:100%;height:100%;display:flex;flex-direction:column;gap:4px;text-align:left;background:var(--page);border:1px solid var(--line-strong);padding:9px 44px 7px 16px;cursor:pointer;font-family:var(--body);color:var(--ink);transition:border-color 250ms}
.an-dd-btn:hover,.an-dd.is-open .an-dd-btn{border-color:var(--ink)}
.an-dd-btn::after{content:"";position:absolute;right:20px;top:50%;width:8px;height:8px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);transform:translateY(-70%) rotate(45deg);transition:transform 350ms var(--ease)}
.an-dd.is-open .an-dd-btn::after{transform:translateY(-20%) rotate(-135deg)}
.an-dd-k{font-size:12px;line-height:16px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.an-dd-v{font-size:15px;line-height:24px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.an-dd-list{position:absolute;left:0;right:0;top:calc(100% - 1px);max-height:min(360px,60vh);overflow-y:auto;background:var(--page);border:1px solid var(--ink);box-shadow:0 18px 40px rgba(var(--ink-rgb),.14);transform-origin:top;opacity:0;transform:translateY(-6px) scaleY(.97);pointer-events:none;transition:opacity 220ms var(--ease-out),transform 320ms var(--ease)}
.an-dd.is-open .an-dd-list{opacity:1;transform:none;pointer-events:auto}
.an-dd-list button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:0 16px;border:0;border-bottom:1px solid var(--line);cursor:pointer;text-align:left;font-family:var(--body);font-size:15px;color:var(--ink);background:transparent;transition:background 200ms}
.an-dd-list button:last-child{border-bottom:0}
.an-dd-list button:hover,.an-dd-list button:focus-visible{background:var(--alt);outline:0}
.an-dd-list button i{width:6px;height:6px;flex:none}
.an-dd-list button[aria-selected="true"] i{background:var(--ink)}
.an-dd-native{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
/* Wild Origins credit, Footer Credit design 1c: the seedling alone in a thin pill, the name sliding out on hover, bottom right */
.an-footer-legal > div{align-items:center}
.an-footer-legal .an-credit{display:inline-flex;align-items:center;height:24px;padding:0 5px;border:1px solid var(--line-on-dark);border-radius:999px;text-decoration:none;color:var(--page);transition:border-color 200ms cubic-bezier(.2,.7,.2,1)}
.an-credit svg{display:block;flex:none;opacity:.55;transition:opacity 200ms cubic-bezier(.2,.7,.2,1)}
.an-credit span{display:inline-block;overflow:hidden;white-space:nowrap;max-width:0;padding:0;font-size:11px;font-weight:700;transition:max-width 400ms cubic-bezier(.2,.7,.2,1),padding 400ms cubic-bezier(.2,.7,.2,1)}
.an-credit path{transition:fill 200ms,stroke 200ms}
.an-cr-a{fill:#fff}.an-cr-b{fill:rgba(255,255,255,.75)}.an-cr-s,.an-cr-i{stroke:#fff}
.an-footer-legal .an-credit:hover,.an-footer-legal .an-credit:focus-visible{border-color:rgba(var(--page-rgb),.35)}
.an-credit:hover svg,.an-credit:focus-visible svg{opacity:1}
.an-credit:hover span,.an-credit:focus-visible span{max-width:90px;padding:0 5px}
.an-credit:hover .an-cr-a,.an-credit:focus-visible .an-cr-a{fill:#3A8F5E}
.an-credit:hover .an-cr-b,.an-credit:focus-visible .an-cr-b{fill:#9CCBAA}
.an-credit:hover .an-cr-s,.an-credit:focus-visible .an-cr-s{stroke:#3A8F5E}
.an-credit:hover .an-cr-i,.an-credit:focus-visible .an-cr-i{stroke:#F7F5F0}
/* The filter row sits above the results, so an open dropdown covers the listing photos rather than slipping behind them. */
.an-results-head{position:relative;z-index:20}
/* The adviser split (Speak to Lucy): the peach runs the full width as designed, while the text and the cutout line up
   with the page margins; the cutout is shown whole, standing on the bottom edge, rather than cropped to fill half the screen. */
.an-split:has(.an-lucy){box-sizing:border-box;padding:0 max(var(--gutter), calc((100% - 1240px) / 2));background:var(--wp--preset--color--warm-deep);gap:clamp(32px,5vw,80px);align-items:end}
.an-split:has(.an-lucy) .an-split-panel{padding:clamp(40px,4.5vw,64px) 0!important;background:none!important;align-self:center}
.an-split:has(.an-lucy) .an-split-media{align-self:stretch;height:auto;min-height:clamp(280px,30vw,400px);background:none!important}
.an-split:has(.an-lucy) .an-lucy img{object-fit:contain;object-position:50% 100%}
.an-results-bar-r{display:flex;align-items:center;gap:24px}
.an-viewswitch{display:flex;border:1px solid var(--line-strong)}
.an-viewswitch a{padding:7px 14px;font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;color:var(--ink)}
.an-viewswitch a[aria-current]{background:var(--ink);color:var(--page)}
.an-mapview{height:min(74vh,760px);min-height:420px;background:var(--alt);border:1px solid var(--line);z-index:0}
.an-mapview .leaflet-container{font-family:var(--body)}
.an-pin{position:relative;display:inline-block;transform:translate(-50%,calc(-100% - 5px));white-space:nowrap;background:var(--ink);color:var(--page);font-size:12px;font-weight:500;letter-spacing:.04em;padding:6px 9px;line-height:1;box-shadow:0 2px 8px rgba(var(--ink-rgb),.25);transition:background 200ms,color 200ms}
.an-pin::after{content:"";position:absolute;left:50%;bottom:-5px;margin-left:-5px;border:5px solid transparent;border-bottom:0;border-top-color:var(--ink)}
.an-pin.is-done{background:var(--alt-deep);color:var(--ink)}
.an-pin.is-done::after{border-top-color:var(--alt-deep)}
.an-pin.is-on,.an-pin:hover{background:var(--accent);color:var(--ink)}
.an-pin.is-on::after,.an-pin:hover::after{border-top-color:var(--accent)}
.an-pinicon{background:none!important;border:0!important}
.an-cluster{position:relative;display:grid;place-items:center;width:40px;height:40px;transform:translate(-50%,-50%);border-radius:50%;background:var(--ink);color:var(--page);font-size:13px;font-weight:500;box-shadow:0 0 0 5px rgba(var(--ink-rgb),.18),0 2px 8px rgba(var(--ink-rgb),.25);cursor:pointer;transition:background 200ms,color 200ms}
.an-cluster:hover{background:var(--accent);color:var(--ink)}
.an-draw-btn{border:1px solid var(--ink);background:var(--page);color:var(--ink);font:500 12px var(--body);letter-spacing:.1em;text-transform:uppercase;padding:11px 14px;cursor:pointer;box-shadow:0 2px 8px rgba(var(--ink-rgb),.18)}
.an-draw-btn:hover{background:var(--ink);color:var(--page)}
.an-mapview.is-drawing{cursor:crosshair;touch-action:none}
.an-mapview.is-drawing .leaflet-marker-pane,.an-mapview.is-drawing .leaflet-popup-pane{pointer-events:none;opacity:.5}
.an-mapview.is-drawing .an-draw-btn{background:var(--accent);border-color:var(--accent)}
.an-area{stroke:var(--ink);stroke-width:2;fill:var(--accent);fill-opacity:.12}
.an-area--live{fill:none;stroke-dasharray:6 5}
.an-area-chip{text-decoration:none;gap:8px;height:34px;padding:0 12px;font-size:13px}
.leaflet-cluster-anim .leaflet-marker-icon{transition:transform 300ms ease-out,opacity 300ms ease-in}
.leaflet-cluster-spider-leg{transition:stroke-dashoffset 300ms ease-out,stroke-opacity 300ms ease-in}
.an-mapview .leaflet-popup-content-wrapper{border-radius:0;padding:0;box-shadow:0 10px 30px rgba(var(--ink-rgb),.2)}
.an-mapview .leaflet-popup-content{margin:0;width:260px!important}
.an-mapview .leaflet-popup-tip{box-shadow:none}
.an-mapcard{display:block;color:var(--ink);text-decoration:none}
.an-mapcard img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;object-position:right bottom;background:var(--alt)}
.an-mapcard-t{display:block;padding:12px 14px 2px;font-family:var(--display);font-size:18px;line-height:1.25}
.an-mapcard-b{display:flex;justify-content:space-between;gap:10px;padding:4px 14px 14px;font-size:13px;color:var(--muted)}
.an-mapview .leaflet-popup-close-button{color:var(--page)!important;text-shadow:0 1px 3px rgba(0,0,0,.5);font-size:22px!important;top:6px!important;right:6px!important}
@media (max-width:620px){.an-results-bar{flex-wrap:wrap}.an-results-bar-r{width:100%;justify-content:space-between}}
.an-calcs{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);grid-template-columns:minmax(0,1fr)}
.an-calc{display:flex;flex-direction:column;gap:22px;padding:clamp(24px,3vw,36px);background:var(--page)}
.an-calc-fields{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:760px){.an-calc-fields{grid-template-columns:repeat(4,minmax(0,1fr))}}
.an-calc-out{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px;margin:0;padding-top:20px;border-top:1px solid var(--line-strong)}
.an-calc-n{font-family:var(--display);font-size:clamp(28px,3vw,36px);line-height:1.1}
.an-calc-l{font-size:14px;color:var(--muted)}
.an-calc .an-link{align-self:flex-start}
.an-share-menu{position:absolute;z-index:30;display:flex;flex-direction:column;min-width:180px;background:var(--page);border:1px solid var(--line-strong);box-shadow:0 10px 30px rgba(var(--ink-rgb),.14)}
.an-share-menu a,.an-share-menu button{display:block;padding:12px 16px;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;font:inherit;font-size:14px;color:var(--ink);text-decoration:none;cursor:pointer}
.an-share-menu > :last-child{border-bottom:0}
.an-share-menu a:hover,.an-share-menu button:hover,.an-share-menu a:focus-visible,.an-share-menu button:focus-visible{background:var(--alt)}
.an-calc .an-chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.an-calc .an-chip{display:flex}
.an-calc .an-chip span{flex:1;justify-content:center;text-align:center;height:auto;min-height:52px;padding:10px 8px;font-size:14px;line-height:1.25}
@media (max-width:420px){.an-calc .an-chips{grid-template-columns:minmax(0,1fr)}}

/* Blog post: one readable column, the text exactly as written in the editor, one box at the end. Kept plain on
   purpose so the client can write posts without the layout depending on anything but headings and paragraphs. */
.an-post{padding:clamp(24px,4vw,56px) var(--gutter) 0}
.an-post-head,.an-post-body,.an-post-cta{max-width:760px;margin-left:auto;margin-right:auto}
.an-post-head{display:flex;flex-direction:column;gap:18px;padding-bottom:clamp(28px,4vw,44px);animation:anUp 800ms var(--ease-out) both}
.an-post-head > *{margin:0!important}
.an-post-crumbs{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.an-post-crumbs a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:5px}
.an-post h1{font-family:var(--display);font-weight:400;font-size:clamp(36px,4.4vw,56px);line-height:1.05;letter-spacing:-.02em;text-wrap:balance}
.an-post-sum{font-size:18px;line-height:1.6;color:var(--muted);text-wrap:pretty}
.an-post-meta{display:flex;flex-wrap:wrap;gap:6px 18px;padding-top:16px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.an-post-img{max-width:1040px;margin:0 auto;aspect-ratio:16/9;overflow:hidden;background:var(--alt)}
.an-post-img img{width:100%;height:100%;object-fit:cover;display:block}
.an-post-body{display:flex;flex-direction:column;gap:22px;padding-top:clamp(36px,5vw,64px);min-width:0}
.an-post-body > *{margin:0!important}
.an-post-body p,.an-post-body li{font-size:17px;line-height:1.75;text-wrap:pretty}
.an-post-body h2,.an-post-body h3{font-family:var(--display);font-weight:400;letter-spacing:-.01em;text-wrap:balance}
.an-post-body h2{margin-top:clamp(16px,2vw,28px)!important;font-size:clamp(26px,2.4vw,32px);line-height:1.15}
.an-post-body h3{font-size:22px;line-height:1.25}
.an-post-body ul,.an-post-body ol{padding-left:1.25em;display:flex;flex-direction:column;gap:8px}
.an-post-body li::marker{color:var(--accent)}
.an-post-body a{text-decoration-color:var(--accent);text-underline-offset:3px}
.an-post-body img{max-width:100%;height:auto}
.an-post-body figcaption{font-size:13px;color:var(--muted)}
.an-post-body blockquote{padding-left:20px;border-left:3px solid var(--accent);font-family:var(--display);font-size:22px;line-height:1.4}
.an-post-cta{display:flex;flex-direction:column;gap:14px;margin-top:clamp(48px,6vw,80px);padding:clamp(24px,4vw,40px);background:var(--alt)}
.an-post-cta > *{margin:0!important}
.an-post-cta h2{font-family:var(--display);font-weight:400;font-size:clamp(24px,2.4vw,30px);line-height:1.15}
.an-post-cta p{font-size:15px;line-height:1.65;max-width:520px}
.an-post-cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;padding-top:6px}
.an-post-cta-row > a:last-child{font-size:14px;color:var(--ink)}
.an-gcta-pair{display:grid;grid-template-columns:minmax(0,1fr);border:1px solid var(--line-strong)}
@media (min-width:620px){.an-gcta-pair{grid-template-columns:repeat(2,minmax(0,1fr))}}
.an-gcta-tile{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:24px;background:var(--page)}
.an-gcta-tile.is-dark{background:var(--ink);color:var(--page)}
.an-gcta-tile.is-dark .an-k{color:var(--warm)}
.an-gcta-t{font-family:var(--display);font-size:22px;line-height:1.15}
.an-gcta-tile.is-dark .an-gcta-t{color:var(--accent)}
.an-gcta-tile .an-btn{margin-top:auto}
.an-gcta-band{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;background:var(--warm)}
.an-gcta-band span{font-family:var(--display);font-size:20px;line-height:1.25;max-width:460px}
.an-gcta-row{display:flex}
.an-grel{max-width:1240px;margin:0 auto;padding:clamp(64px,8vw,112px) 0 var(--section-y);display:flex;flex-direction:column;gap:32px}
.an-grel-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px}
.an-grel h2{margin:0;font-family:var(--display);font-weight:400;letter-spacing:-.015em;font-size:clamp(28px,2.6vw,38px);line-height:1.1}

/* Town landing pages (Bolsover Landing Page design) */
.an-ahero-sec{padding-bottom:0!important}
.an-ahero{display:grid;gap:clamp(28px,4vw,64px);align-items:stretch;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.an-ahero{grid-template-columns:repeat(2,minmax(0,1fr))}}
.an-ahero-text{display:flex;flex-direction:column;justify-content:center;gap:26px;padding:clamp(8px,2vw,24px) 0;animation:anUp 800ms var(--ease-out) both}
.an-ahero-text > *{margin:0!important}
.an-ahero-text h1{font-size:clamp(44px,5.4vw,80px);line-height:1;letter-spacing:-.02em;text-wrap:balance}
.an-ahero-text > p:not([class]){font-size:16px;line-height:1.7;max-width:520px;text-wrap:pretty}
.an-ahero-contact{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:center;font-size:13px}
.an-ahero-contact span{color:var(--muted)}
.an-ahero-media{position:relative;overflow:hidden;min-height:clamp(320px,56vh,560px);background:var(--alt);animation:anFade 900ms var(--ease-out) both}
.an-ahero-badge{position:absolute!important;left:0;bottom:0;z-index:1;margin:0!important;display:flex;align-items:center;gap:14px;padding:16px 22px;background:var(--ink);color:var(--page)}
.an-ahero-badge span:first-child{font-family:var(--display);font-size:22px;line-height:1;color:var(--accent)}
.an-ahero-badge span:last-child{font-size:11px;letter-spacing:.2em;text-transform:uppercase}
.an-town-market{padding:clamp(56px,7vw,96px) 0 0}
.an-town-market-in{display:grid;gap:28px;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.an-town-market-in{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}}
.an-town-market h2{font-size:clamp(30px,3vw,42px);line-height:1.05;letter-spacing:-.015em}
/* Sized to the column the figures sit in, not the window: four figures share half the page beside the heading, and
   a price like £185,000 sized by the window ran into the figure next to it. */
.an-town-stats-wrap{container-type:inline-size}
.an-town-stats{--cols:2;display:grid;border-top:1px solid var(--ink);grid-template-columns:repeat(var(--cols),minmax(0,1fr))}
@container (min-width:680px){.an-town-stats{--cols:var(--n)}}
.an-town-stats .an-stat{padding:24px 20px 4px 0!important;gap:10px;min-width:0}
.an-town-stats .an-stat-n{font-size:clamp(26px,calc((100cqi / var(--cols) - 20px) / 4.8),50px);letter-spacing:-.02em;white-space:nowrap}
.an-thomes{padding-top:clamp(56px,7vw,96px)!important}
.an-thomes-in{display:flex;flex-direction:column;gap:36px}
.an-thomes-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px}
.an-thomes-head h2{font-size:clamp(28px,2.6vw,38px);line-height:1.1;letter-spacing:-.01em}
.an-thomes .an-grid3[hidden]{display:none}
.an-thomes-alerts{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;background:var(--alt)}
.an-thomes-alerts span{font-family:var(--display);font-size:22px;line-height:1.2}
.an-tliving{display:grid;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.an-tliving{grid-template-columns:repeat(2,minmax(0,1fr))}}
.an-tliving-text{display:flex;flex-direction:column;justify-content:center;padding:clamp(48px,7vw,112px) var(--gutter)!important}
.an-tliving-in{display:flex;flex-direction:column;gap:26px;max-width:540px;width:100%;margin-left:auto}
.an-tliving-in > *{margin:0!important}
.an-tliving-in h2{font-size:clamp(32px,3.4vw,48px);line-height:1.05;letter-spacing:-.02em;text-wrap:balance}
.an-tliving-in > p{font-size:16px;line-height:1.7;text-wrap:pretty}
.an-tfacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--ink)}
.an-tfact{display:flex;flex-direction:column;gap:4px;padding:16px 16px 0 0}
.an-tfact > *{margin:0!important}
.an-tfact-big{font-family:var(--display);font-size:26px;line-height:1.1}
.an-tfact-small{font-size:13px}
.an-tfeature{position:relative;overflow:hidden;min-height:clamp(380px,70vh,640px);background:var(--alt)}
.an-tfeature .an-fill a{display:block;height:100%}
.an-tfeature .an-fill img{transition:transform 1400ms var(--ease)}
.an-tfeature:hover .an-fill img{transform:scale(1.04)}
.an-tfeature-card{position:absolute!important;left:0;bottom:0;z-index:1;display:flex;flex-direction:column;gap:8px;padding:22px 26px;max-width:360px;background:var(--ink);color:var(--page)}
.an-tfeature-card > *{margin:0!important}
.an-tfeature-k{font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--warm)}
.an-tfeature-t{font-family:var(--display);font-size:26px;line-height:1.1;color:var(--accent)}
.an-tfeature-link a{font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--page);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:6px}
.an-tfeature-link a::after{content:"";position:absolute;inset:0}
.an-twhy-in{display:grid;gap:clamp(32px,5vw,80px);grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.an-twhy-in{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}}
.an-twhy-head{display:flex;flex-direction:column;gap:20px;align-items:flex-start}
.an-twhy-head > *{margin:0!important}
.an-twhy-head h2{font-size:clamp(32px,3.2vw,46px);line-height:1.04;letter-spacing:-.02em;color:var(--accent);text-wrap:balance}
.an-twhy-head p{font-size:15px;line-height:1.6;color:var(--on-dark-muted)}
.an-twhy-grid{display:grid;column-gap:32px;grid-template-columns:minmax(0,1fr)}
@media (min-width:620px){.an-twhy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.an-twhy-item{display:flex;flex-direction:column;gap:10px;padding:24px 0 32px;border-top:1px solid var(--line-on-dark)}
.an-twhy-item > *{margin:0!important}
.an-twhy-n{font-size:11px;letter-spacing:.2em;color:var(--warm)}
.an-twhy-t{font-family:var(--display);font-size:22px;line-height:1.2}
.an-twhy-b{font-size:14px;line-height:1.6;color:var(--on-dark-muted)}
.an-tcta{display:grid;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.an-tcta{grid-template-columns:repeat(2,minmax(0,1fr))}}
.an-tcta-text{display:flex;flex-direction:column;justify-content:center;gap:24px;padding:clamp(32px,5vw,72px)!important}
.an-tcta-text > *{margin:0!important}
.an-tcta-text h2{font-size:clamp(36px,4vw,56px);line-height:1.02;letter-spacing:-.02em;color:var(--accent)}
.an-tcta-text > p:not([class]){font-size:16px;line-height:1.7;max-width:440px;color:var(--on-dark-muted)}
.an-tcta-contact{display:flex;flex-wrap:wrap;gap:8px 24px;padding-top:18px;border-top:1px solid var(--line-on-dark);font-size:13px;color:var(--on-dark-muted)}
.an-tcta-contact a{color:var(--page)}
.an-tcta-pattern{min-height:280px;background:var(--an-pattern) center/cover no-repeat}
/* Landlords page: the Renters' Rights Act note at the foot */
.an-renters{padding:24px 0;border-top:1px solid var(--line)}
.an-renters p{margin:0;max-width:760px;color:var(--muted)}
.an-renters a{color:var(--ink)}
/* Footer: links to the town pages */

/* Not found page (404 Page design): the town-page hero with the brand pattern in place of a photo, then the
   pages people most often meant to reach. Each card is one link, so the whole card is the target. */
.an-nf{gap:0}
@media (min-width:900px){.an-nf .an-ahero-text{padding:clamp(32px,5vw,72px) clamp(0px,4vw,64px) clamp(32px,5vw,72px) 0}}
.an-nf .wp-block-button__link{height:54px;padding:0 30px;font-size:12px}
.an-nf-media{position:relative;overflow:hidden;min-height:clamp(320px,56vh,560px);display:flex;align-items:flex-end;background:var(--ink) var(--an-pattern) center/cover no-repeat;animation:anFade 900ms var(--ease-out) both}
.an-nf-code{margin:0!important;padding:clamp(24px,4vw,56px);font-family:var(--display);font-size:clamp(120px,16vw,240px);line-height:.8;letter-spacing:-.04em;color:var(--accent)}
.an-nf-links-sec{padding:clamp(56px,7vw,96px) var(--gutter) var(--section-y)}
.an-nf-links-in{display:flex;flex-direction:column;gap:24px}
.an-nf-links-in > *{margin:0!important}
.an-nf-links{display:grid;border-top:1px solid var(--ink);grid-template-columns:minmax(0,1fr)}
@media (min-width:620px){.an-nf-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.an-nf-links{grid-template-columns:repeat(4,minmax(0,1fr))}}
.an-nf-link{position:relative;display:flex;flex-direction:column;gap:10px;padding:24px 20px 28px 0;border-bottom:1px solid var(--line);transition:padding 300ms var(--ease-out)}
.an-nf-link:hover{padding-left:10px}
.an-nf-link > *{margin:0!important}
.an-nf-link-t{font-family:var(--display);font-size:24px;line-height:1.15}
.an-nf-link-b{font-size:14px;line-height:1.55;color:var(--muted)}
.an-nf-link-cta{margin-top:6px!important;font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase}
.an-nf-link-cta a{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:6px}
.an-nf-link-cta a::after{content:"";position:absolute;inset:0}
.an-call-line{margin:0;padding-top:12px;font-size:14px;line-height:1.6}
