/* vanilla base reset (no framework) */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; font-family: var(--lwainil-font, system-ui, -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif); line-height: 1.5; color: var(--lwainil-ink, #111); background: var(--lwainil-bg, #fff); }
h1, h2, h3, h4, h5, h6 { font-family: var(--lwainil-font-display, var(--lwainil-font, system-ui, sans-serif)); }
img, svg, video, canvas { max-width: 100%; height: auto; }
a { color: inherit; }
*:focus-visible { outline: 2px solid var(--lwainil-primary, #2563eb); outline-offset: 2px; }
/* visibility shim for framework toggles */
.hidden { display: none !important; }

/* design tokens */
:root {
  --lwainil-primary: #C2543A;
  --lwainil-secondary: #4A5560;
  --lwainil-accent: #8A3E28;
  --lwainil-ink: #141210;
  --lwainil-slate: #6C7A88;
  --lwainil-mist: #EAE7E0;
  --lwainil-border: #D9D5CE;
  --lwainil-surface: #F3F1EC;
  --lwainil-bg: #FBFAF7;
  --lwainil-text: #141210;
  --lwainil-font: Georgia, Cambria, 'Times New Roman', serif;
  --lwainil-font-display: 'Hoefler Text', 'Baskerville Old Face', Garamond, Georgia, serif;
}

/* state utilities */
.is-open { display: block !important; }
.is-active { display: block !important; }
[hidden] { display: none !important; }

/* framework-injected components (vanilla) */
[data-lwainil-ui="cookie-banner"] { position: fixed; left: 1rem; right: 1rem; bottom: 1rem; z-index: 9999; margin: 0 auto; max-width: 56rem; border: 1px solid var(--lwainil-border, #e5e7eb); background: var(--lwainil-surface, #fff); border-radius: 1rem; padding: 1rem; box-shadow: 0 10px 30px rgba(0,0,0,.15); }
[data-lwainil-ui="cookie-banner"] > div { display: flex; flex-wrap: wrap; gap: 1rem; align-items: flex-start; justify-content: space-between; }
[data-lwainil-ui="cookie-banner"] > div > div:last-child { display: flex; flex-wrap: wrap; gap: .5rem; }
[data-lwainil-ui="cookie-banner"] a { text-decoration: underline; }
[data-lwainil-cs-action], [data-lwainil-ag-action] { cursor: pointer; border-radius: .5rem; padding: .5rem .9rem; font-size: .8rem; border: 1px solid var(--lwainil-border, #d1d5db); background: transparent; color: var(--lwainil-ink, #111); }
[data-lwainil-cs-action="accept-all"], [data-lwainil-cs-action="save"], [data-lwainil-ag-action="confirm"] { background: var(--lwainil-primary, #2563eb); color: #fff; border-color: transparent; font-weight: 600; }
[data-lwainil-cs-action="reject-all"] { background: var(--lwainil-ink, #111); color: #fff; border-color: transparent; font-weight: 600; }
[data-lwainil-cs-panel] { margin-top: 1rem; border: 1px solid var(--lwainil-border, #e5e7eb); background: var(--lwainil-surface, #fff); border-radius: .75rem; padding: 1rem; font-size: .875rem; }
[data-lwainil-cs-panel] > div { display: flex; flex-wrap: wrap; gap: .75rem; }
[data-lwainil-ui="cookie-banner"] label { display: inline-flex; align-items: center; gap: .5rem; }
[data-lwainil-ui="age-gate-overlay"] { position: fixed; inset: 0; z-index: 10000; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,.8); }
[data-lwainil-ui="age-gate-overlay"] > div { width: 100%; max-width: 28rem; margin: 0 1rem; background: var(--lwainil-surface, #1a1a2e); color: var(--lwainil-ink, #fff); border-radius: 1rem; padding: 2rem; text-align: center; box-shadow: 0 20px 60px rgba(0,0,0,.4); }
[data-lwainil-ui="age-gate-overlay"] > div > div:last-of-type { display: flex; flex-direction: column; gap: .75rem; }
[data-lwainil-ag-action] { padding: .75rem 1.5rem; }

/* sections */
/* lwainil:header */
/* lwainil:header */
#header{position:sticky;top:0;z-index:40;background:var(--lwainil-bg);border-bottom:1px solid var(--lwainil-border);font-family:Georgia,Cambria,'Times New Roman',serif;color:var(--lwainil-text)}
.header-scope{margin:0;padding:0.5rem clamp(1rem,4vw,3rem);font-size:0.75rem;letter-spacing:0.01em;color:var(--lwainil-slate);background:var(--lwainil-surface);border-bottom:1px solid var(--lwainil-border);text-align:center}
.header-inner{position:relative;max-width:72rem;margin:0 auto;padding:0.75rem clamp(1rem,4vw,3rem);display:flex;align-items:center;gap:clamp(1rem,3vw,2.5rem);min-height:64px}
.header-brand{display:flex;flex-direction:column;gap:0.15rem;text-decoration:none;line-height:1.1}
.brand-mark{font-size:1.25rem;font-weight:700;letter-spacing:-0.02em;color:var(--lwainil-ink)}
.brand-tag{font-size:0.6875rem;text-transform:uppercase;letter-spacing:0.09em;color:var(--lwainil-slate)}
.header-nav{margin-left:auto;display:flex;align-items:center;gap:clamp(1rem,2.5vw,2rem)}
.nav-list{display:flex;align-items:center;gap:clamp(0.9rem,2vw,1.75rem);list-style:none;margin:0;padding:0}
.nav-list a{display:inline-block;padding:0.5rem 0;font-size:0.9375rem;color:var(--lwainil-text);text-decoration:none;border-bottom:2px solid transparent}
.nav-list a:hover,.nav-list a:focus-visible{color:var(--lwainil-primary);border-bottom-color:var(--lwainil-primary)}
.nav-list a:focus-visible,.nav-cta:focus-visible,.menu-toggle:focus-visible{outline:2px solid var(--lwainil-accent);outline-offset:3px}
.nav-cta{display:inline-flex;align-items:center;min-height:44px;padding:0 1.25rem;background:var(--lwainil-primary);color:var(--lwainil-bg);font-size:0.9375rem;text-decoration:none;border-radius:1px}
.nav-cta:hover,.nav-cta:active{background:var(--lwainil-accent);color:var(--lwainil-bg)}
.menu-toggle{display:none;margin-left:auto;width:44px;height:44px;padding:0;background:transparent;border:1px solid var(--lwainil-border);border-radius:1px;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:4px}
.menu-bar{display:block;width:18px;height:2px;background:var(--lwainil-ink)}
.header-nav[hidden]{display:none}
::selection{background:var(--lwainil-primary);color:var(--lwainil-bg)}
@media (max-width:768px){
  .menu-toggle{display:flex}
  .header-nav{position:absolute;top:100%;left:0;right:0;margin-left:0;flex-direction:column;align-items:stretch;gap:1rem;padding:1.25rem clamp(1rem,4vw,3rem) 1.5rem;background:var(--lwainil-bg);border-bottom:1px solid var(--lwainil-border)}
  .nav-list{flex-direction:column;align-items:flex-start;gap:0.25rem}
  .nav-list a{padding:0.65rem 0}
  .nav-cta{justify-content:center}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
/* lwainil:footer */
/* lwainil:footer */
#footer{background:var(--lwainil-ink);color:var(--lwainil-mist);padding:clamp(2.5rem,6vw,4.5rem) clamp(1rem,4vw,3rem) 1.5rem}
#footer .footer-inner{max-width:72rem;margin:0 auto;display:grid;gap:clamp(1.5rem,3vw,2.5rem);grid-template-columns:1.4fr 1fr 1fr 1.1fr;padding-bottom:clamp(1.5rem,3vw,2.5rem);border-bottom:1px solid var(--lwainil-slate)}
#footer .footer-logo{margin:0 0 .6rem;font-size:1.25rem;font-weight:700;letter-spacing:-.01em;color:var(--lwainil-bg);text-wrap:balance}
#footer .footer-tagline{margin:0 0 .75rem;max-width:34ch;font-size:.875rem;line-height:1.65}
#footer .footer-scope{margin:0;padding-left:.65rem;border-left:2px solid var(--lwainil-primary);font-size:.8125rem;line-height:1.5;color:var(--lwainil-bg)}
#footer .footer-heading{margin:0 0 .7rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--lwainil-bg)}
#footer .footer-list{margin:0 0 1.4rem;padding:0;list-style:none}
#footer .footer-list:last-of-type{margin-bottom:0}
#footer .footer-list li{margin-bottom:.45rem}
#footer a{color:var(--lwainil-mist);text-decoration:none;font-size:.875rem;border-bottom:1px solid transparent;transition:color 150ms ease-out,border-color 150ms ease-out}
#footer a:hover,#footer a:focus-visible{color:var(--lwainil-primary);border-bottom-color:var(--lwainil-primary)}
#footer a:focus-visible{outline:2px solid var(--lwainil-primary);outline-offset:3px}
#footer .footer-contact{display:flex;flex-direction:column;gap:.45rem;font-style:normal;font-size:.875rem;line-height:1.5}
#footer .footer-contact a{font-weight:600}
#footer .footer-meta{margin:.9rem 0 0;font-size:.75rem;line-height:1.55}
#footer .footer-base{max-width:72rem;margin:0 auto;padding-top:1.5rem;display:grid;gap:.6rem}
#footer .footer-legal{margin:0;max-width:72ch;font-size:.8125rem;line-height:1.6}
#footer .footer-policy{margin:.4rem 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.5rem 1.25rem}
#footer .footer-policy a{font-size:.8125rem;text-decoration:underline;text-decoration-color:var(--lwainil-slate);text-underline-offset:3px}
#footer .footer-copy{margin:.6rem 0 0;font-size:.75rem}
#footer ::selection{background:var(--lwainil-primary);color:var(--lwainil-bg)}
@media (max-width:900px){#footer .footer-inner{grid-template-columns:1fr 1fr}}
@media (max-width:560px){#footer .footer-inner{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){#footer a{transition:none}}
/* lwainil:hero */
/* lwainil:hero */
#hero{padding:clamp(2rem,5vw,3.5rem) 0;background:var(--lwainil-bg);color:var(--lwainil-text)}
#hero .hero-inner{max-width:72rem;margin:auto;padding:0 clamp(1rem,4vw,3rem);display:grid;grid-template-columns:5fr 7fr;gap:clamp(1.5rem,4vw,2.5rem)}
#hero .hero-eyebrow{margin:0 0 .6rem;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--lwainil-slate)}
#hero .hero-title{font-family:Georgia,serif;font-size:clamp(2rem,3.4vw,3.1rem);line-height:1.07;letter-spacing:-.02em;margin:0 0 .9rem;text-wrap:balance;color:var(--lwainil-ink)}
#hero .hero-lead{margin:0 0 1rem;font-size:1rem;line-height:1.6;color:var(--lwainil-secondary)}
#hero .proof-chips{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.4rem}
#hero .chip{border-left:2px solid var(--lwainil-primary);padding:.3rem 0 .3rem .7rem;font-size:.85rem;line-height:1.4}
#hero .chip span{display:block;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--lwainil-slate)}
#hero .hero-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin:0 0 .8rem}
#hero .btn-primary,#hero .btn-ghost{display:inline-flex;align-items:center;min-height:44px;padding:.7rem 1.2rem;border-radius:2px;font-size:.9rem;text-decoration:none;transition:background-color .15s ease-out}
#hero .btn-primary{background:var(--lwainil-primary);border:1px solid var(--lwainil-primary);color:var(--lwainil-bg)}
#hero .btn-ghost{border:1px solid var(--lwainil-secondary);color:var(--lwainil-ink)}
#hero .btn-primary:hover,#hero .btn-primary:focus-visible{background:var(--lwainil-accent);border-color:var(--lwainil-accent)}
#hero .btn-ghost:hover,#hero .btn-ghost:focus-visible{background:var(--lwainil-ink);color:var(--lwainil-bg)}
#hero .hero-note{margin:0;font-size:.78rem;line-height:1.5;color:var(--lwainil-slate)}
#hero .map-panel{background:var(--lwainil-surface);border:1px solid var(--lwainil-border);padding:1rem}
#hero .map-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4rem 1rem;margin:0 0 .6rem;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--lwainil-slate)}
#hero .map-canvas{position:relative;height:250px;background:var(--lwainil-bg);border:1px solid var(--lwainil-border)}
#hero .street{position:absolute;background:var(--lwainil-mist)}
#hero .street-h{left:0;right:0;top:45%;height:6px}
#hero .street-v{top:0;bottom:0;left:36%;width:6px}
#hero .pin{position:absolute;width:34px;height:34px;border:2px solid var(--lwainil-bg);border-radius:50%;background:var(--lwainil-slate);color:var(--lwainil-bg);font:700 .75rem/1 Georgia,serif;cursor:pointer;transition:background-color .15s ease-out}
#hero .pin-a{left:24%;top:28%}#hero .pin-b{left:48%;top:60%}#hero .pin-c{left:72%;top:20%}
#hero .pin.is-active{background:var(--lwainil-primary)}
#hero .map-focus{margin:.6rem 0 0;font-size:.8rem;color:var(--lwainil-secondary);font-variant-numeric:tabular-nums}
#hero .strip-row{display:grid;grid-template-columns:2.2rem 1fr auto;gap:.6rem;align-items:center;width:100%;min-height:44px;padding:.5rem .3rem;background:none;border:0;border-bottom:1px solid var(--lwainil-border);font:inherit;font-size:.82rem;color:var(--lwainil-secondary);text-align:left;cursor:pointer;font-variant-numeric:tabular-nums}
#hero .strip-row.is-active{background:var(--lwainil-mist);color:var(--lwainil-ink)}
#hero .row-id{color:var(--lwainil-primary);font-weight:700}
#hero .row-doc{font-size:.66rem;text-transform:uppercase;padding:.1rem .35rem;border:1px solid currentColor;border-radius:2px}
#hero .doc-v{color:#2F6B4F}#hero .doc-p{color:#9A6A12}#hero .doc-b{color:#A3312A}
#hero .map-photo{margin:.6rem 0 0}
#hero .map-photo img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border:1px solid var(--lwainil-border)}
#hero :focus-visible{outline:2px solid var(--lwainil-primary);outline-offset:2px}
#hero ::selection{background:var(--lwainil-primary);color:var(--lwainil-bg)}
@media(max-width:768px){#hero .hero-inner{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){#hero .pin,#hero .btn-primary,#hero .btn-ghost{transition:none}}
/* lwainil:ledger-preview */
/* lwainil:ledger-preview */
.ledger-preview{max-width:72rem;margin:0 auto;padding:clamp(3rem,8vw,6rem) clamp(1rem,4vw,3rem);border-top:1px solid var(--lwainil-border);color:var(--lwainil-ink)}
.ledger-preview .eyebrow,.ledger-preview .head,.ledger-preview em,.ledger-preview .readout{color:var(--lwainil-slate);font-size:.75rem}
.ledger-preview .eyebrow{margin:0 0 .5rem;letter-spacing:.08em;text-transform:uppercase}
.ledger-preview h2{margin:0 0 1rem;font-weight:400;font-size:clamp(1.75rem,3.4vw,2.75rem);letter-spacing:-.02em;text-wrap:balance}
.ledger-preview .lede,.ledger-preview .note,.ledger-preview .detail{max-width:68ch;line-height:1.6;color:var(--lwainil-secondary)}
.ledger-preview .lede{margin:0 0 2rem}
.ledger-preview .note{margin:0 0 1.5rem}
.ledger-preview .head,.ledger-preview summary{display:grid;grid-template-columns:1.1fr 1.2fr .8fr 1.4fr .7fr;gap:1rem;align-items:center}
.ledger-preview .head{padding:.5rem 0;border-bottom:1px solid var(--lwainil-border);letter-spacing:.08em;text-transform:uppercase}
.ledger-preview .row{border-bottom:1px solid var(--lwainil-border)}
.ledger-preview summary{padding:1.1rem 0;list-style:none;cursor:pointer;font-variant-numeric:tabular-nums}
.ledger-preview summary::-webkit-details-marker{display:none}
.ledger-preview summary:hover{background:var(--lwainil-surface)}
.ledger-preview summary:focus-visible,.ledger-preview .cta:focus-visible{outline:2px solid var(--lwainil-primary);outline-offset:2px}
.ledger-preview .id,.ledger-preview .price{font-weight:700}
.ledger-preview em{display:block;font-style:normal}
.ledger-preview .badge{justify-self:start;padding:.2rem .5rem;border:1px solid var(--lwainil-border);border-radius:2px}
.ledger-preview .is-verified{border-color:var(--lwainil-primary);color:var(--lwainil-accent)}
.ledger-preview .is-blocked{border-color:var(--lwainil-ink)}
.ledger-preview .detail{display:grid;gap:.6rem;padding:0 0 1.2rem}
.ledger-preview .detail strong{color:var(--lwainil-ink)}
.ledger-preview .readout{margin:1.2rem 0 .5rem;font-variant-numeric:tabular-nums}
.ledger-preview .cta{display:inline-block;padding:.85rem 1.5rem;background:var(--lwainil-primary);color:var(--lwainil-bg);border:1px solid var(--lwainil-accent);border-radius:2px;font-weight:700;text-decoration:none}
.ledger-preview .cta:hover{background:var(--lwainil-accent)}
.ledger-preview ::selection{background:var(--lwainil-mist)}
@media(max-width:768px){.ledger-preview .head{display:none}.ledger-preview summary{grid-template-columns:1fr 1fr;row-gap:.4rem}}
@media(prefers-reduced-motion:reduce){.ledger-preview summary{transition:none}}
/* lwainil:status-legend */
/* lwainil:status-legend */
#status-legend{background:var(--lwainil-bg);color:var(--lwainil-text);font-family:Georgia,Cambria,serif;border-top:1px solid var(--lwainil-border);padding:clamp(3rem,8vw,7rem) 0}
#status-legend .status-legend__inner{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem)}
#status-legend .status-legend__eyebrow{margin:0 0 clamp(1.5rem,4vw,3rem);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--lwainil-slate)}
#status-legend .status-legend__grid{display:grid;grid-template-columns:4fr 8fr;gap:clamp(1.5rem,4vw,3rem);align-items:start}
#status-legend .status-legend__intro{margin:0;font-size:1.0625rem;line-height:1.65;color:var(--lwainil-secondary);text-wrap:balance}
#status-legend .status-legend__intro a{color:var(--lwainil-accent);text-decoration:underline;text-underline-offset:3px}
#status-legend .status-legend__intro a:hover{color:var(--lwainil-primary)}
#status-legend .status-legend__list{margin:0}
#status-legend .status-def{display:grid;grid-template-columns:1fr 2fr;gap:.25rem clamp(1rem,3vw,2rem);padding:1.25rem 0 1.25rem 1rem;border-top:1px solid var(--lwainil-border);border-left:3px solid var(--lwainil-border)}
#status-legend .status-def:last-child{border-bottom:1px solid var(--lwainil-border)}
#status-legend .status-def__term{margin:0;font-size:1.125rem;font-weight:700;letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--lwainil-ink)}
#status-legend .status-def__text{margin:0;font-size:.9375rem;line-height:1.7;color:var(--lwainil-secondary)}
#status-legend .status-def--verified{border-left-color:var(--lwainil-secondary)}
#status-legend .status-def--pending{border-left-color:var(--lwainil-primary)}
#status-legend .status-def--blocked{border-left-color:var(--lwainil-accent)}
#status-legend .status-def--blocked .status-def__term{color:var(--lwainil-accent)}
#status-legend :focus-visible{outline:2px solid var(--lwainil-primary);outline-offset:3px}
#status-legend ::selection{background:var(--lwainil-mist);color:var(--lwainil-ink)}
@media(max-width:768px){#status-legend .status-legend__grid{grid-template-columns:1fr}}
@media(max-width:640px){#status-legend .status-def{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){#status-legend *{transition:none!important}}
/* lwainil:coverage */
/* lwainil:coverage */
#coverage{background:var(--lwainil-bg);color:var(--lwainil-text);font-family:Georgia,Cambria,'Times New Roman',serif;line-height:1.6}
#coverage .coverage-inner{max-width:72rem;margin:0 auto;padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem)}
#coverage .coverage-label{margin:0 0 1.5rem;padding-top:.75rem;border-top:1px solid var(--lwainil-ink);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--lwainil-slate)}
#coverage h2{margin:0 0 1rem;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.1;letter-spacing:-.015em;text-wrap:balance}
#coverage h3{margin:0 0 .75rem;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;font-weight:400;color:var(--lwainil-slate)}
#coverage p{margin:0 0 1rem;color:var(--lwainil-secondary)}
#coverage .coverage-grid{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}
#coverage .coverage-grid,#coverage .coverage-columns{display:grid;gap:clamp(1.5rem,4vw,3rem)}
#coverage .coverage-columns{grid-template-columns:1fr 1fr}
#coverage .coverage-scope{color:var(--lwainil-ink);border-left:2px solid var(--lwainil-primary);padding-left:.9rem}
#coverage .coverage-links{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;margin:1.5rem 0 0}
#coverage .coverage-link{display:inline-block;padding:.7rem 1.15rem;min-height:44px;border:1px solid var(--lwainil-ink);color:var(--lwainil-ink);text-decoration:none;font-size:.9375rem}
#coverage .coverage-link:hover{background:var(--lwainil-primary);border-color:var(--lwainil-primary);color:var(--lwainil-bg)}
#coverage .coverage-link:focus-visible{outline:2px solid var(--lwainil-accent);outline-offset:2px}
#coverage .coverage-link-quiet{border-color:var(--lwainil-border);color:var(--lwainil-secondary)}
#coverage figure{margin:0 0 1.5rem}
#coverage img{display:block;width:100%;height:auto;border:1px solid var(--lwainil-border)}
#coverage figcaption{margin-top:.6rem;font-size:.8125rem;color:var(--lwainil-slate)}
#coverage ul{list-style:none;margin:0;padding:0}
#coverage .coverage-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25rem 1rem;padding:.55rem 0;border-bottom:1px solid var(--lwainil-border)}
#coverage .coverage-depth{font-size:.8125rem;color:var(--lwainil-slate);font-variant-numeric:tabular-nums}
#coverage .coverage-out li{padding:.4rem 0 .4rem 1rem;border-left:1px solid var(--lwainil-border)}
@media (max-width:1024px){#coverage .coverage-grid{grid-template-columns:1fr}}
@media (max-width:640px){#coverage .coverage-columns{grid-template-columns:1fr}}
/* lwainil:process */
/* lwainil:process */
#process{background:var(--lwainil-bg);color:var(--lwainil-text);font-family:Georgia,Cambria,serif;padding:clamp(2.5rem,6vw,5rem) clamp(1rem,4vw,3rem);border-top:1px solid var(--lwainil-border)}
#process ::selection{background:var(--lwainil-primary)}
#process .process-inner{max-width:72rem;margin:0 auto}
#process .process-label{margin:0 0 1rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--lwainil-slate)}
#process .process-title{margin:0 0 .75rem;font-family:'Hoefler Text',Georgia,serif;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.12;letter-spacing:-.01em;text-wrap:balance;max-width:24ch}
#process .process-lede{margin:0 0 2rem;max-width:58ch;line-height:1.6;color:var(--lwainil-secondary)}
#process .process-steps{margin:0;padding:0;list-style:none;border-top:1px solid var(--lwainil-border)}
#process .process-step{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:.5rem 1.5rem;padding:1.4rem 0;border-bottom:1px solid var(--lwainil-border)}
#process .process-num{font-size:.875rem;color:var(--lwainil-primary);font-variant-numeric:tabular-nums}
#process .process-body h3{margin:0 0 .4rem;font-size:1.15rem;letter-spacing:-.005em}
#process .process-body p{margin:0 0 .55rem;max-width:70ch;line-height:1.6;color:var(--lwainil-secondary)}
#process .process-role{margin:0;padding-left:.75rem;border-left:2px solid var(--lwainil-primary);color:var(--lwainil-ink);font-size:.9375rem}
#process .process-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;margin-top:1.6rem}
#process .process-btn{display:inline-block;min-height:44px;padding:.7rem 1.1rem;border:1px solid var(--lwainil-primary);background:var(--lwainil-primary);color:var(--lwainil-bg);text-decoration:none}
#process .process-btn.is-ghost{background:none;color:var(--lwainil-ink);border-color:var(--lwainil-border)}
#process .process-btn:hover{background:var(--lwainil-accent);border-color:var(--lwainil-accent)}
#process .process-btn.is-ghost:hover{border-color:var(--lwainil-ink)}
#process a:focus-visible{outline:2px solid var(--lwainil-accent);outline-offset:2px}
@media(max-width:640px){#process .process-step{grid-template-columns:1fr;gap:.2rem}}
@media(prefers-reduced-motion:reduce){#process *{transition:none!important}}
/* lwainil:contact-cta */
/* lwainil:contact-cta */
.cta{background:var(--lwainil-surface);color:var(--lwainil-text);border-top:1px solid var(--lwainil-border);padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem)}
.cta-inner{max-width:72rem;margin:auto;display:grid;grid-template-columns:4fr 8fr;gap:clamp(1.5rem,4vw,3rem)}
.cta-label,.cta-note{margin:0 0 1rem;font:400 .8125rem/1.6 Georgia,serif;color:var(--lwainil-slate)}
.cta-label{letter-spacing:.08em;text-transform:uppercase}
.cta-title,.cta-panel h3{margin:0 0 1.25rem;font-family:'Hoefler Text',Garamond,Georgia,serif;color:var(--lwainil-ink);text-wrap:balance}
.cta-title{font-size:clamp(1.75rem,3.4vw,3rem);line-height:1.08;letter-spacing:-.02em}
.cta-panel h3{font-size:1.125rem;line-height:1.3}
.cta-text,.cta-list li{font:400 .9375rem/1.65 Georgia,serif;color:var(--lwainil-secondary)}
.cta-text{margin:0 0 1.75rem;max-width:34rem}
.cta-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}
.cta a{display:inline-flex;align-items:center;min-height:44px;font:400 .9375rem/1 Georgia,serif;text-decoration:none;border-radius:2px}
.cta-btn{padding:.75rem 1.5rem;background:var(--lwainil-primary);color:var(--lwainil-bg);border:1px solid var(--lwainil-primary)}
.cta-btn:hover{background:var(--lwainil-accent);border-color:var(--lwainil-accent)}
.cta-link{padding:.75rem 1.25rem;color:var(--lwainil-ink);border:1px solid var(--lwainil-border);text-decoration:underline;text-underline-offset:3px}
.cta-link:hover{border-color:var(--lwainil-slate);background:var(--lwainil-bg)}
.cta-panel{border-left:1px solid var(--lwainil-border);padding-left:clamp(1.25rem,3vw,2.5rem)}
.cta-list{list-style:none;margin:0 0 1.5rem;padding:0;display:grid;gap:1rem}
.cta-list li{display:grid;grid-template-columns:2.25rem 1fr;gap:.75rem;padding-top:1rem;border-top:1px solid var(--lwainil-border)}
.cta-num{font-variant-numeric:tabular-nums;font-size:.8125rem;letter-spacing:.06em;color:var(--lwainil-primary)}
.cta a:focus-visible{outline:2px solid var(--lwainil-accent);outline-offset:3px}
.cta ::selection{background:var(--lwainil-mist);color:var(--lwainil-ink)}
@media(max-width:768px){.cta-inner{grid-template-columns:1fr}.cta-panel{border-left:0;border-top:1px solid var(--lwainil-border);padding:1.5rem 0 0}}
@media(prefers-reduced-motion:reduce){.cta *{transition:none!important}}
/* lwainil:criteria-filters */
/* lwainil:criteria-filters */
#criteria-filters{background:var(--lwainil-bg);color:var(--lwainil-text);border-top:1px solid var(--lwainil-border);padding:clamp(1.5rem,4vw,3rem) clamp(1rem,4vw,3rem);}
#criteria-filters .filter-rail{max-width:72rem;margin:0 auto;font-family:Georgia,Cambria,'Times New Roman',serif;}
#criteria-filters .rail-label{margin:0 0 .6rem;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--lwainil-slate);}
#criteria-filters .rail-head{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;align-items:baseline;justify-content:space-between;border-bottom:1px solid var(--lwainil-border);padding-bottom:1rem;}
#criteria-filters h2{margin:0;font-size:clamp(1.5rem,3vw,2.25rem);letter-spacing:-.015em;text-wrap:balance;color:var(--lwainil-ink);}
#criteria-filters .result{margin:0;font-size:.95rem;color:var(--lwainil-secondary);font-variant-numeric:tabular-nums;}
#criteria-filters .result strong{color:var(--lwainil-ink);font-size:1.15rem;}
#criteria-filters .filter-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem 1.5rem;margin-top:1.5rem;}
#criteria-filters .filter-field{display:flex;flex-direction:column;gap:.45rem;border-left:2px solid var(--lwainil-border);padding-left:.85rem;min-width:0;margin:0;}
#criteria-filters .field-label,#criteria-filters label{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--lwainil-secondary);}
#criteria-filters select,#criteria-filters input[type="number"]{font:inherit;font-size:.95rem;color:var(--lwainil-ink);background:var(--lwainil-surface);border:1px solid var(--lwainil-border);border-radius:1px;padding:.5rem .6rem;min-height:44px;width:100%;}
#criteria-filters .budget-pair{display:flex;gap:.5rem;}
#criteria-filters .docs-group{display:flex;flex-wrap:wrap;gap:.4rem 1rem;}
#criteria-filters .docs-option{display:flex;align-items:center;gap:.35rem;font-size:.85rem;text-transform:none;letter-spacing:0;min-height:44px;}
#criteria-filters .filter-actions{display:flex;gap:.75rem;grid-column:span 3;}
#criteria-filters button{font:inherit;font-size:.95rem;min-height:44px;padding:.6rem 1.25rem;border-radius:2px;cursor:pointer;}
#criteria-filters .button-primary{background:var(--lwainil-primary);color:var(--lwainil-bg);border:1px solid var(--lwainil-primary);}
#criteria-filters .button-primary:hover{background:var(--lwainil-accent);border-color:var(--lwainil-accent);}
#criteria-filters .button-ghost{background:var(--lwainil-bg);color:var(--lwainil-ink);border:1px solid var(--lwainil-secondary);}
#criteria-filters .button-ghost:hover{background:var(--lwainil-mist);}
#criteria-filters :focus-visible{outline:2px solid var(--lwainil-accent);outline-offset:2px;}
#criteria-filters ::selection{background:var(--lwainil-primary);color:var(--lwainil-bg);}
#criteria-filters .rail-note{margin:1.5rem 0 0;padding-top:1rem;border-top:1px solid var(--lwainil-border);font-size:.9rem;line-height:1.6;color:var(--lwainil-secondary);}
#criteria-filters .rail-note a{color:var(--lwainil-accent);}
@media (max-width:1023px){#criteria-filters .filter-form{grid-template-columns:repeat(2,minmax(0,1fr));}#criteria-filters .filter-actions{grid-column:span 2;}}
@media (max-width:639px){#criteria-filters .filter-form{grid-template-columns:1fr;}#criteria-filters .filter-actions{grid-column:span 1;flex-direction:column;align-items:stretch;}}
@media (prefers-reduced-motion:reduce){#criteria-filters *{transition:none!important;}}
/* lwainil:comparison-ledger */
/* lwainil:comparison-ledger */
#comparison-ledger{padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem);background:var(--lwainil-bg);color:var(--lwainil-text);font-family:Georgia,Cambria,'Times New Roman',serif}
.ledger-head{max-width:58rem;margin:0 0 clamp(1.5rem,4vw,3rem)}
.ledger-label{margin:0 0 .5rem;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--lwainil-slate)}
.ledger-title{margin:0 0 .75rem;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.15;letter-spacing:-.015em;text-wrap:balance}
.ledger-intro,.ledger-legend{margin:0 0 .75rem;font-size:1rem;line-height:1.6;color:var(--lwainil-secondary)}
.ledger-intro a,.ledger-note a{color:var(--lwainil-accent)}
.ledger-scroll{overflow-x:auto;border-top:1px solid var(--lwainil-ink)}
.ledger-table{width:100%;border-collapse:collapse;font-size:.875rem;font-variant-numeric:tabular-nums}
.ledger-table th,.ledger-table td{padding:.75rem .625rem;text-align:left;border-bottom:1px solid var(--lwainil-border);white-space:nowrap}
.ledger-table thead th{font-size:.6875rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--lwainil-slate)}
.ledger-table tbody th{position:sticky;left:0;z-index:1;background:var(--lwainil-bg);color:var(--lwainil-ink)}
.ledger-row{transition:background-color 150ms ease-out}
.ledger-row:hover td{background:var(--lwainil-surface)}
.ledger-row.is-open td,.ledger-row.is-open th{background:var(--lwainil-surface)}
.status{display:inline-block;padding:.125rem .375rem;border:1px solid currentColor;font-size:.75rem;letter-spacing:.02em}
.is-verified{color:#2f6a4f}
.is-pending{color:#9a6b1f}
.is-blocked{color:#a32b1f}
.row-toggle{min-height:44px;padding:.5rem .75rem;border:1px solid var(--lwainil-border);border-radius:2px;background:var(--lwainil-bg);color:var(--lwainil-ink);font:inherit;font-size:.8125rem;cursor:pointer}
.row-toggle:hover{background:var(--lwainil-mist)}
.row-toggle:focus-visible,.ledger-intro a:focus-visible,.ledger-note a:focus-visible{outline:2px solid var(--lwainil-primary);outline-offset:2px}
.ledger-detail td{white-space:normal;background:var(--lwainil-surface)}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.detail-grid h3{margin:0 0 .5rem;font-size:.6875rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--lwainil-slate)}
.detail-grid ul{margin:0;padding-left:1.1rem;display:grid;gap:.375rem;line-height:1.5;color:var(--lwainil-secondary)}
.doc-list{list-style:none;padding-left:0}
.doc-list li{display:flex;gap:.5rem;flex-wrap:wrap;align-items:baseline}
.ledger-note{margin:1rem 0 0;font-size:.8125rem;line-height:1.6;color:var(--lwainil-slate);max-width:58rem}
#comparison-ledger ::selection{background:var(--lwainil-primary);color:var(--lwainil-bg)}
@media (max-width:768px){.detail-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.ledger-row{transition:none}}

/* lwainil:map-panel */
/* lwainil:map-panel */
.map-panel{padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem);background:var(--lwainil-bg);color:var(--lwainil-text);font-family:Georgia,serif}
.map-head,.map-grid{max-width:72rem;margin:0 auto}
.map-head{border-top:1px solid var(--lwainil-border);padding-top:1.5rem;margin-bottom:2rem}
.eyebrow{margin:0 0 .5rem;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--lwainil-slate)}
.map-title{margin:0 0 .75rem;font-size:clamp(1.5rem,3vw,2.5rem);letter-spacing:-.02em;text-wrap:balance}
.map-lead{max-width:46rem;margin:0;line-height:1.6;color:var(--lwainil-secondary)}
.map-grid{display:grid;gap:1.5rem}
@media(min-width:900px){.map-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:3rem}}
.map-canvas{position:relative;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--lwainil-border);background-color:var(--lwainil-surface);background-image:linear-gradient(var(--lwainil-border) 1px,transparent 1px),linear-gradient(90deg,var(--lwainil-border) 1px,transparent 1px);background-size:2.5rem 2.5rem}
.zone{position:absolute;left:var(--x);top:var(--y);width:var(--w);height:var(--h);display:flex;align-items:flex-end;padding:.25rem .4rem;border:1px dashed var(--lwainil-border);background:var(--lwainil-bg)}
.zone span{font-size:.6875rem;letter-spacing:.04em;color:var(--lwainil-slate)}
.pin{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:2.75rem;height:2.75rem;border:2px solid var(--lwainil-primary);border-radius:999px;background:var(--lwainil-bg);color:var(--lwainil-accent);font:inherit;font-size:.625rem;cursor:pointer;transition:background 150ms ease-out,color 150ms ease-out}
.pin:hover,.pin.is-active{background:var(--lwainil-primary);color:var(--lwainil-bg)}
.map-side{border-top:1px solid var(--lwainil-border);padding-top:1rem}
.side-title{margin:0 0 .75rem;font-size:1rem}
.map-list{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.5rem}
.map-item{display:grid;gap:.25rem;width:100%;padding:.75rem;text-align:left;font:inherit;color:var(--lwainil-text);background:var(--lwainil-bg);border:1px solid var(--lwainil-border);cursor:pointer;transition:border-color 150ms ease-out}
.map-item:hover,.map-item.is-active{border-color:var(--lwainil-primary)}
.map-item.is-active{background:var(--lwainil-mist)}
.item-name{font-size:.9375rem}
.item-price{font-size:.9375rem;font-variant-numeric:tabular-nums;color:var(--lwainil-accent)}
.item-meta{font-size:.8125rem;color:var(--lwainil-secondary)}
.doc{justify-self:start;padding:.125rem .4rem;border:1px solid currentColor;font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase}
.doc-verified{color:var(--lwainil-ink);background:var(--lwainil-mist)}
.doc-pending{color:var(--lwainil-secondary);border-style:dashed}
.doc-blocked{color:var(--lwainil-accent);background:var(--lwainil-mist)}
.map-note,.legend-note{margin:.75rem 0 0;font-size:.8125rem;line-height:1.5;color:var(--lwainil-slate)}
.legend-note{margin-top:1rem;color:var(--lwainil-secondary)}
.map-note a{color:var(--lwainil-accent)}
.map-panel :focus-visible{outline:2px solid var(--lwainil-ink);outline-offset:2px}
.map-panel ::selection{background:var(--lwainil-primary);color:var(--lwainil-bg)}
@media(prefers-reduced-motion:reduce){.map-panel *{transition:none}}

/* lwainil:method-notes */
/* lwainil:method-notes */
.method-notes{padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem);background:var(--lwainil-bg);color:var(--lwainil-text);font-family:Georgia,Cambria,'Times New Roman',serif}
.method-notes__inner{max-width:72rem;margin:0 auto;border-top:1px solid var(--lwainil-border);padding-top:1.5rem}
.method-notes .section-label{margin:0 0 1.75rem;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--lwainil-slate)}
.method-notes__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:2.25rem}
@media (min-width:768px){.method-notes__grid{grid-template-columns:4fr 8fr;gap:3rem}}
.method-notes h2{margin:0 0 1rem;font-family:'Hoefler Text',Baskerville,Garamond,Georgia,serif;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.15;letter-spacing:-.015em;text-wrap:balance;color:var(--lwainil-ink)}
.method-notes__lede{margin:0;font-size:1rem;line-height:1.65;color:var(--lwainil-secondary)}
.method-list{list-style:none;margin:0;padding:0;counter-reset:method}
.method-list__item{position:relative;border-top:1px solid var(--lwainil-border);padding:1.25rem 0 1.25rem 2.75rem}
.method-list__item::before{counter-increment:method;content:counter(method,decimal-leading-zero);position:absolute;left:0;top:1.3rem;font-size:.8rem;letter-spacing:.06em;font-variant-numeric:tabular-nums;color:var(--lwainil-primary)}
.method-list__item h3{margin:0 0 .4rem;font-size:1rem;font-weight:700;color:var(--lwainil-ink)}
.method-list__item p{margin:0;font-size:.9375rem;line-height:1.7;color:var(--lwainil-secondary)}
.status{display:inline-block;padding:0 .35rem;border:1px solid currentColor;border-radius:var(--lwainil-radius,2px);font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.status--verified{color:var(--lwainil-ink)}
.status--pending{color:var(--lwainil-slate)}
.status--blocked{color:var(--lwainil-primary)}
.method-notes__foot{margin:2.25rem 0 0;border-top:1px solid var(--lwainil-border);padding-top:1.25rem;font-size:.875rem;line-height:1.65;color:var(--lwainil-secondary)}
.method-notes__foot a{color:var(--lwainil-accent);text-decoration:underline;text-underline-offset:3px}
.method-notes__foot a:hover{color:var(--lwainil-primary)}
.method-notes__foot a:focus-visible{outline:2px solid var(--lwainil-accent);outline-offset:3px}
.method-notes ::selection{background:var(--lwainil-mist);color:var(--lwainil-ink)}
@media (prefers-reduced-motion:reduce){.method-notes *{transition:none!important}}
/* lwainil:contact-cta */
/* lwainil:contact-cta */
.contact-cta{background:var(--lwainil-surface);color:var(--lwainil-text);padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem);border-top:1px solid var(--lwainil-border)}
.contact-cta__inner,.contact-cta__alt{max-width:72rem;margin-inline:auto}
.contact-cta__inner{display:grid;grid-template-columns:8fr 4fr;gap:clamp(1.5rem,4vw,3rem);align-items:start}
.contact-cta__label{margin:0 0 .75rem;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--lwainil-slate)}
.contact-cta__title{margin:0 0 1rem;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.15;letter-spacing:-.02em;text-wrap:balance;color:var(--lwainil-ink)}
.contact-cta__lead{margin:0 0 1.25rem;max-width:46ch;line-height:1.7;color:var(--lwainil-secondary)}
.contact-cta__list{margin:0 0 1.5rem;padding:0;list-style:none;border-top:1px solid var(--lwainil-border)}
.contact-cta__list li{padding:.625rem 0;border-bottom:1px solid var(--lwainil-border);font-size:.9375rem;line-height:1.6}
.contact-cta__list li::before{content:"\2013  ";color:var(--lwainil-primary)}
.contact-cta__note{margin:0;font-size:.8125rem;line-height:1.65;color:var(--lwainil-slate)}
.contact-cta__form{display:grid;gap:1rem;padding:1.5rem;background:var(--lwainil-bg);border:1px solid var(--lwainil-border);border-radius:2px}
.field{display:grid;gap:.375rem}
.field label,.contact-cta__hint{font-size:.75rem;color:var(--lwainil-secondary)}
.field label{text-transform:uppercase;letter-spacing:.04em}
.contact-cta__hint{margin:0;line-height:1.55}
.field input,.field textarea{width:100%;padding:.625rem .75rem;font:inherit;font-size:.9375rem;color:var(--lwainil-text);background:var(--lwainil-bg);border:1px solid var(--lwainil-border);border-radius:1px}
.field textarea{min-height:5.5rem;resize:vertical}
.field :is(input,textarea):focus-visible{outline:2px solid var(--lwainil-primary);outline-offset:1px}
.field ::placeholder{color:var(--lwainil-slate)}
.contact-cta__submit{min-height:44px;padding:.75rem 1.25rem;font:inherit;font-weight:600;color:var(--lwainil-bg);background:var(--lwainil-primary);border:1px solid var(--lwainil-primary);border-radius:2px;cursor:pointer}
.contact-cta__submit:hover{background:var(--lwainil-accent);border-color:var(--lwainil-accent)}
.contact-cta__submit:focus-visible{outline:2px solid var(--lwainil-ink);outline-offset:2px}
.contact-cta__alt{margin-top:2rem;font-size:.875rem;color:var(--lwainil-secondary)}
.contact-cta a{color:var(--lwainil-accent)}
.contact-cta ::selection{background:var(--lwainil-primary);color:var(--lwainil-bg)}
@media (max-width:768px){.contact-cta__inner{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.contact-cta *{transition:none!important;animation:none!important}}
/* lwainil:contact-form */
/* lwainil:contact-form */
#contact-form{background:var(--lwainil-bg);color:var(--lwainil-text);padding:clamp(2.5rem,7vw,5.5rem) clamp(1rem,4vw,3rem);font-family:Georgia,Cambria,'Times New Roman',serif}
#contact-form .contact-form__inner{max-width:72rem;margin:0 auto;display:grid;gap:clamp(1.75rem,4vw,3rem);grid-template-columns:1fr}
@media(min-width:1024px){#contact-form .contact-form__inner{grid-template-columns:5fr 7fr}}
#contact-form .contact-form__label{margin:0 0 .75rem;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--lwainil-slate)}
#contact-form .contact-form__title{margin:0 0 1rem;font-size:clamp(1.75rem,3.6vw,2.75rem);line-height:1.1;letter-spacing:-.02em;color:var(--lwainil-ink);text-wrap:balance}
#contact-form .contact-form__intro{margin:0 0 1.25rem;font-size:1rem;line-height:1.65;color:var(--lwainil-secondary)}
#contact-form .contact-form__points{margin:0 0 1.5rem;padding:0 0 0 1.1rem;display:grid;gap:.5rem;font-size:.875rem;line-height:1.55;color:var(--lwainil-text)}
#contact-form .contact-form__points li::marker{color:var(--lwainil-primary)}
#contact-form .contact-form__meta{margin:0;font-size:.875rem;color:var(--lwainil-slate)}
#contact-form a{color:var(--lwainil-accent);text-decoration:underline;text-underline-offset:2px}
#contact-form a:hover{color:var(--lwainil-primary)}
#contact-form .enquiry{background:var(--lwainil-surface);border:1px solid var(--lwainil-border);border-radius:2px;padding:clamp(1.25rem,3vw,2rem);display:grid;gap:1rem}
#contact-form .enquiry__row{display:grid;gap:1rem;grid-template-columns:1fr}
@media(min-width:640px){#contact-form .enquiry__row{grid-template-columns:1fr 1fr}}
#contact-form .enquiry__field{display:grid;gap:.375rem}
#contact-form .enquiry__label{font-size:.8125rem;letter-spacing:.04em;text-transform:uppercase;color:var(--lwainil-secondary)}
#contact-form input[type=text],#contact-form input[type=tel],#contact-form input[type=email],#contact-form select,#contact-form textarea{width:100%;min-height:44px;padding:.6rem .7rem;font:inherit;font-size:1rem;color:var(--lwainil-ink);background:var(--lwainil-bg);border:1px solid var(--lwainil-border);border-radius:1px}
#contact-form textarea{min-height:7rem;resize:vertical}
#contact-form input::placeholder,#contact-form textarea::placeholder{color:var(--lwainil-slate);opacity:1}
#contact-form input:focus-visible,#contact-form select:focus-visible,#contact-form textarea:focus-visible,#contact-form button:focus-visible,#contact-form a:focus-visible{outline:2px solid var(--lwainil-primary);outline-offset:2px}
#contact-form .enquiry__consent{display:grid;grid-template-columns:auto 1fr;gap:.6rem;align-items:start;font-size:.875rem;line-height:1.5;color:var(--lwainil-text)}
#contact-form .enquiry__consent input{width:1.1rem;height:1.1rem;margin-top:.15rem;accent-color:var(--lwainil-primary)}
#contact-form .enquiry__submit{min-height:48px;padding:.85rem 1.5rem;font:inherit;font-size:1rem;font-weight:600;letter-spacing:.01em;color:var(--lwainil-bg);background:var(--lwainil-primary);border:1px solid var(--lwainil-primary);border-radius:1px;cursor:pointer;justify-self:start;transition:background 0ms,color 0ms}
#contact-form .enquiry__submit:hover{background:var(--lwainil-accent);border-color:var(--lwainil-accent)}
#contact-form .enquiry__submit:active{background:var(--lwainil-ink);border-color:var(--lwainil-ink)}
#contact-form .enquiry__note{margin:0;font-size:.8125rem;color:var(--lwainil-slate)}
#contact-form ::selection{background:var(--lwainil-primary);color:var(--lwainil-bg)}
@media(prefers-reduced-motion:reduce){#contact-form *{transition:none!important}}
/* lwainil:what-to-expect */
/* lwainil:what-to-expect */
#what-to-expect{background:var(--lwainil-bg);color:var(--lwainil-text);font-family:Georgia,Cambria,'Times New Roman',serif;padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem)}
#what-to-expect .expect-inner{max-width:72rem;margin:0 auto}
#what-to-expect .expect-label{margin:0 0 1.5rem;padding-top:1.5rem;border-top:1px solid var(--lwainil-border);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--lwainil-slate)}
#what-to-expect .expect-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1.5rem}
#what-to-expect .expect-title{grid-column:1/5;margin:0;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.12;letter-spacing:-.01em;text-wrap:balance}
#what-to-expect .expect-body{grid-column:5/13;margin:0}
#what-to-expect .expect-lede{margin:0 0 2rem;max-width:44rem;font-size:1.0625rem;line-height:1.6;color:var(--lwainil-secondary)}
#what-to-expect .expect-steps{list-style:none;margin:0;padding:0;counter-reset:step;border-top:1px solid var(--lwainil-border)}
#what-to-expect .expect-steps li{counter-increment:step;display:grid;grid-template-columns:2.5rem 1fr;gap:1rem;padding:1.25rem 0;border-bottom:1px solid var(--lwainil-border)}
#what-to-expect .expect-steps li::before{content:counter(step,decimal-leading-zero);font-size:.8125rem;font-variant-numeric:tabular-nums;color:var(--lwainil-primary);padding-top:.35rem}
#what-to-expect .step-title{margin:0 0 .375rem;font-size:1rem;font-weight:700}
#what-to-expect .step-text{margin:0;font-size:.9375rem;line-height:1.6;color:var(--lwainil-secondary)}
#what-to-expect .expect-note{margin:2rem 0 0;font-size:.875rem;line-height:1.6;color:var(--lwainil-slate)}
#what-to-expect a{color:var(--lwainil-accent);text-decoration:underline;text-underline-offset:2px}
#what-to-expect a:hover{color:var(--lwainil-primary)}
#what-to-expect a:focus-visible{outline:2px solid var(--lwainil-primary);outline-offset:2px}
#what-to-expect ::selection{background:var(--lwainil-primary);color:var(--lwainil-bg)}
@media (max-width:768px){#what-to-expect .expect-title,#what-to-expect .expect-body{grid-column:1/13}}
@media (prefers-reduced-motion:reduce){#what-to-expect *{transition:none!important}}
/* lwainil:scope-notes */
/* lwainil:scope-notes */
#scope-notes{background:var(--lwainil-bg);color:var(--lwainil-text);padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem);font-family:Georgia,Cambria,'Times New Roman',serif}
#scope-notes .scope-notes__inner{max-width:72rem;margin:0 auto;border-top:1px solid var(--lwainil-border);padding-top:clamp(1.5rem,4vw,3rem)}
#scope-notes .scope-notes__label{margin:0 0 1rem;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--lwainil-secondary)}
#scope-notes .scope-notes__title{margin:0 0 1rem;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.15;letter-spacing:-.01em;text-wrap:balance;font-weight:600}
#scope-notes .scope-notes__lead{max-width:48rem;margin:0 0 clamp(1.5rem,4vw,3rem);font-size:1.0625rem;line-height:1.6;color:var(--lwainil-secondary)}
#scope-notes .scope-notes__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3rem)}
#scope-notes .scope-notes__col h3{margin:0;padding-bottom:.5rem;border-bottom:1px solid var(--lwainil-border);font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;color:var(--lwainil-secondary)}
#scope-notes .scope-notes__list{margin:0;padding:0;list-style:none}
#scope-notes .scope-notes__list li{position:relative;padding:.6875rem 0 .6875rem 1.125rem;border-bottom:1px solid var(--lwainil-border);font-size:.9375rem;line-height:1.6}
#scope-notes .scope-notes__list li::before{content:"";position:absolute;left:0;top:1.15rem;width:.375rem;height:.375rem;background:var(--lwainil-primary)}
#scope-notes .scope-notes__foot{margin:clamp(1.5rem,4vw,3rem) 0 0;max-width:48rem;font-size:.9375rem;line-height:1.65}
#scope-notes .scope-notes__link{color:var(--lwainil-accent);text-decoration:underline;text-underline-offset:2px}
#scope-notes .scope-notes__link:hover{color:var(--lwainil-primary)}
#scope-notes .scope-notes__link:focus-visible,#scope-notes a:focus-visible{outline:2px solid var(--lwainil-primary);outline-offset:2px}
#scope-notes ::selection{background:var(--lwainil-mist);color:var(--lwainil-ink)}
@media (max-width:768px){#scope-notes .scope-notes__grid{grid-template-columns:1fr}}
/* lwainil:contact-details */
/* lwainil:contact-details */
.contact-details{background:var(--lwainil-bg);color:var(--lwainil-text);padding:clamp(3rem,8vw,7rem) 0;font-family:Georgia,Cambria,'Times New Roman',serif}
.contact-details__inner{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(1.5rem,3vw,3rem)}
.contact-details__label{margin:0 0 .6rem;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--lwainil-slate)}
.contact-details h2{margin:0 0 .75rem;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.12;letter-spacing:-.015em;text-wrap:balance;color:var(--lwainil-ink)}
.contact-details__intro{margin:0;font-size:1rem;line-height:1.6;color:var(--lwainil-text)}
.contact-details a{color:var(--lwainil-accent);text-decoration:underline;text-underline-offset:3px}
.contact-details a:hover{color:var(--lwainil-primary)}
.contact-details a:focus-visible{outline:2px solid var(--lwainil-primary);outline-offset:2px;border-radius:1px}
.contact-details__list{margin:0;border-top:1px solid var(--lwainil-border)}
.contact-details__row{display:grid;grid-template-columns:minmax(0,9rem) minmax(0,1fr);gap:1rem;padding:.9rem 0;border-bottom:1px solid var(--lwainil-border)}
.contact-details__row dt{font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;color:var(--lwainil-slate)}
.contact-details__row dd{margin:0;font-size:1rem;line-height:1.55;font-variant-numeric:tabular-nums}
.contact-details__notes{grid-column:1/-1;list-style:none;margin:clamp(1.5rem,3vw,3rem) 0 0;padding:0;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}
.contact-details__notes li{padding-top:.75rem;border-top:2px solid var(--lwainil-primary);font-size:1rem;line-height:1.6;color:var(--lwainil-text)}
.contact-details ::selection{background:var(--lwainil-primary);color:var(--lwainil-bg)}
@media (max-width:768px){.contact-details__inner{grid-template-columns:1fr}.contact-details__row{grid-template-columns:1fr;gap:.25rem}}
@media (prefers-reduced-motion:reduce){.contact-details *{transition:none!important;animation:none!important}}
body{margin:0;background:var(--lwainil-bg);color:var(--lwainil-text);font-family:var(--lwainil-font);line-height:1.65;font-size:1rem}
.policy-page{max-width:68rem;margin:0 auto;padding:3rem 1.5rem 4rem}
.policy-header{border-bottom:1px solid var(--lwainil-border);padding-bottom:1.5rem;margin-bottom:2rem}
.policy-eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;color:var(--lwainil-slate);margin:0 0 .5rem}
.policy-title{font-family:var(--lwainil-font-display);font-size:2.25rem;line-height:1.2;color:var(--lwainil-ink);margin:0 0 .5rem}
.policy-meta{color:var(--lwainil-slate);font-size:.9rem;margin:0}
.policy-section{margin-bottom:1.75rem;padding-bottom:1.25rem;border-bottom:1px solid var(--lwainil-border)}
.policy-section:last-child{border-bottom:0}
.policy-section h2{font-family:var(--lwainil-font-display);font-size:1.2rem;color:var(--lwainil-primary);margin:0 0 .5rem}
.policy-section p{margin:0 0 .6rem}
.policy-content a{color:var(--lwainil-accent);text-decoration:underline}
.policy-footer{margin-top:3rem;border-top:2px solid var(--lwainil-primary);padding-top:1.5rem}
.business-info h2{font-family:var(--lwainil-font-display);font-size:1.1rem;color:var(--lwainil-ink);margin:0 0 .75rem}
.business-info p{margin:0;color:var(--lwainil-secondary);font-size:.95rem}
.business-info a{color:var(--lwainil-accent);text-decoration:none}
.business-info a:hover{text-decoration:underline}
@media (max-width:640px){.policy-page{padding:2rem 1rem 3rem}.policy-title{font-size:1.75rem}}
.policy-page {
  max-width: 800px;
  margin: 0 auto;
  padding: 2rem 1.5rem;
  background: var(--lwainil-bg);
  color: var(--lwainil-text);
  font-family: var(--lwainil-font);
  line-height: 1.6;
}
.policy-content {
  background: var(--lwainil-surface);
  border: 1px solid var(--lwainil-border);
  border-radius: 2px;
  padding: 2rem;
}
.policy-header {
  border-bottom: 1px solid var(--lwainil-border);
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
}
.policy-title {
  font-family: var(--lwainil-font-display);
  font-size: 2rem;
  color: var(--lwainil-ink);
  margin: 0 0 0.25rem;
}
.policy-meta {
  font-size: 0.875rem;
  color: var(--lwainil-slate);
  margin: 0;
}
.policy-section {
  margin-bottom: 1.5rem;
}
.policy-section h2 {
  font-family: var(--lwainil-font-display);
  font-size: 1.25rem;
  color: var(--lwainil-accent);
  margin: 0 0 0.5rem;
}
.policy-section p {
  margin: 0 0 0.75rem;
}
.policy-list {
  list-style: none;
  padding: 0;
  margin: 0 0 1rem;
}
.policy-list li {
  padding: 0.25rem 0;
  border-bottom: 1px solid var(--lwainil-mist);
  font-size: 0.9375rem;
}
.policy-list li:last-child {
  border-bottom: none;
}
.policy-footer {
  margin-top: 1.5rem;
  text-align: center;
  font-size: 0.8125rem;
  color: var(--lwainil-slate);
}
.policy-content a {
  color: var(--lwainil-primary);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.policy-content a:hover {
  color: var(--lwainil-accent);
}
:root {
  --lwainil-primary: #C2543A;
  --lwainil-secondary: #4A5560;
  --lwainil-accent: #8A3E28;
  --lwainil-ink: #141210;
  --lwainil-slate: #6C7A88;
  --lwainil-mist: #EAE7E0;
  --lwainil-border: #D9D5CE;
  --lwainil-surface: #F3F1EC;
  --lwainil-bg: #FBFAF7;
  --lwainil-text: #141210;
  --lwainil-font: Georgia, Cambria, 'Times New Roman', serif;
  --lwainil-font-display: 'Hoefler Text', 'Baskerville Old Face', Garamond, Georgia, serif;
}
.policy-page {
  max-width: 860px;
  margin: 0 auto;
  padding: 2.5rem 1.25rem 3rem;
  background: var(--lwainil-bg);
  color: var(--lwainil-text);
  font-family: var(--lwainil-font);
  line-height: 1.6;
}
.policy-header {
  border-bottom: 1px solid var(--lwainil-border);
  margin-bottom: 2rem;
  padding-bottom: 1rem;
}
.policy-header h1 {
  font-family: var(--lwainil-font-display);
  color: var(--lwainil-ink);
  font-size: 2rem;
  margin: 0 0 0.25rem;
}
.policy-section {
  margin-bottom: 1.75rem;
}
.policy-section h2 {
  font-family: var(--lwainil-font-display);
  color: var(--lwainil-primary);
  font-size: 1.25rem;
  margin: 0 0 0.5rem;
}
.policy-section p {
  margin: 0 0 0.75rem;
}
.policy-footer {
  border-top: 1px solid var(--lwainil-border);
  margin-top: 2rem;
  padding-top: 1rem;
  font-size: 0.85rem;
  color: var(--lwainil-secondary);
}
.policy-footer p {
  margin: 0;
}
.policy-page{background:var(--lwainil-bg);color:var(--lwainil-text);font-family:var(--lwainil-font);padding:3rem 1.25rem}
.policy-content{max-width:46rem;margin:0 auto}
.policy-header{border-bottom:1px solid var(--lwainil-border);padding-bottom:1.75rem;margin-bottom:2.25rem}
.policy-eyebrow{font-family:var(--lwainil-font-display);text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;color:var(--lwainil-primary);margin:0 0 .6rem}
h1{font-family:var(--lwainil-font-display);font-size:2.35rem;line-height:1.15;color:var(--lwainil-ink);margin:0 0 .75rem;font-weight:600}
.policy-lead{font-size:1.0625rem;line-height:1.7;color:var(--lwainil-secondary);margin:0}
.policy-section{margin-bottom:2.25rem}
.policy-section h2{font-family:var(--lwainil-font-display);font-size:1.25rem;color:var(--lwainil-ink);margin:0 0 .85rem}
.policy-section p{font-size:1rem;line-height:1.75;margin:0 0 .85rem}
.policy-steps{margin:0 0 .85rem 1.1rem;padding:0}
.policy-steps li{font-size:1rem;line-height:1.7;margin-bottom:.4rem}
.policy-details{list-style:none;margin:0;padding:0;border-top:1px solid var(--lwainil-border)}
.policy-details li{display:flex;flex-wrap:wrap;gap:.25rem .75rem;padding:.7rem 0;border-bottom:1px solid var(--lwainil-border);font-size:.95rem;line-height:1.6}
.detail-label{flex:0 0 12rem;font-weight:600;color:var(--lwainil-secondary)}
.policy-note{background:var(--lwainil-surface);border-left:2px solid var(--lwainil-primary);padding:.9rem 1.1rem;font-size:.9rem;line-height:1.65;color:var(--lwainil-secondary)}
.policy-links{display:flex;flex-wrap:wrap;gap:.6rem 1.25rem;border-top:1px solid var(--lwainil-border);padding-top:1.5rem}
.policy-links a{color:var(--lwainil-accent);text-decoration:none;border-bottom:1px solid var(--lwainil-border);padding-bottom:2px;font-size:.95rem}
.policy-links a:hover{border-bottom-color:var(--lwainil-accent)}
a{color:var(--lwainil-accent)}
@media (max-width:34rem){.policy-page{padding:2rem 1rem}h1{font-size:1.85rem}.detail-label{flex-basis:100%}}
section[data-lwainil-sdm]:not([data-lwainil-sdm='header']):not([data-lwainil-sdm='footer']) { position: relative; }
section[data-lwainil-sdm]:not([data-lwainil-sdm='header']):not([data-lwainil-sdm='footer']) { border-top: 1px solid var(--lwainil-border); }
section[data-lwainil-sdm] [class*='grid'] > * { border-radius: 0 !important; border-color: var(--lwainil-border); }
section[data-lwainil-sdm] h2 { letter-spacing: -0.025em; }
:root {
  --lwainil-c-content-width: 72rem;
  --lwainil-c-gutter: clamp(1rem, 4vw, 3rem);
  --lwainil-c-measure: 65ch;
  --lwainil-c-heading-display: clamp(2.5rem, 6vw, 5.5rem);
}
[data-lwainil-dr] { scroll-margin-top: 1.5rem; }
main > section, main [data-lwainil-sdm] { padding-inline: var(--lwainil-c-gutter); }
[data-lwainil-dr*='article'], [data-lwainil-dr*='review'] { max-width: var(--lwainil-c-measure); }
h1 { font-size: var(--lwainil-c-heading-display); }
@media (max-width: 768px) { [data-lwainil-dr] { min-width: 0; } }