/* WPG premium direction — local concept, 2026-10-08.
   One override layer on top of the unchanged styles.css. Remove the <link> to roll back.
   Palette: ink navy (from the WPG logo and the old site), limestone ivory, antique brass.
   Type: Newsreader serif for headings, tracked Montserrat caps for labels, DM Sans for body. */

:root{
  /* New palette */
  --navy-950:#08111F;
  --navy-900:#0D1A2E;
  --navy-800:#15243D;
  --navy-700:#22334F;
  --ivory:#F5F1E9;
  --paper-2:#FBF9F4;
  --stone:#ECE7DD;
  --line-2:#D6CEBF;
  --ink-2:#141B29;
  --muted-2:#5A6372;
  --on-dark:#E9E4DA;
  --on-dark-muted:#B9BDC6;
  --brass:#BFA172;
  --brass-deep:#7A5E36;
  --serif:'Newsreader',Georgia,'Times New Roman',serif;
  --caps:'Montserrat',Arial,sans-serif;

  /* Remap the existing tokens so every rule that uses them follows */
  --teal:var(--navy-900);
  --teal-2:var(--navy-800);
  --mint:var(--brass);
  --cream:var(--ivory);
  --paper:var(--paper-2);
  --ink:var(--ink-2);
  --muted:var(--muted-2);
  --line:var(--line-2);

  /* Larger, calmer type scale */
  --type-home-topic:4rem;
  --type-inner-h1:3.5rem;
  --type-section:2.75rem;
  --type-panel:1.75rem;
  --type-item:1.375rem;
}

body{background:var(--ivory);color:var(--ink);line-height:1.65}

/* ---------- Type ---------- */
h1,h2,h3,.footer-brand,.plan-rate,.results-grid dd,.testimonial-card blockquote p,.team-portrait-placeholder span{
  font-family:var(--serif);font-weight:400;letter-spacing:-.005em;
}
h1,h2{line-height:1.08}
h3{font-weight:500;line-height:1.25}
.eyebrow,.plan-kicker,.form-progress,.form-top,.results-grid dt,.footer-grid h2,.brand-name,.hero-stat,
.button,.site-header .primary-nav,.site-header .nav-action,.header-phone,.text-link,.team-role,.related-links a{
  font-family:var(--caps);
}
.eyebrow{font-size:.6875rem;font-weight:600;letter-spacing:.22em;color:var(--brass-deep);margin-bottom:22px;display:flex;align-items:center;gap:14px}
.eyebrow::before{content:"";width:28px;height:1px;background:currentColor;flex:none}
.eyebrow.light,.dark-section .eyebrow,.renter-band .eyebrow,.closing-cta .eyebrow,.process-section .eyebrow,.team-intro .eyebrow,.team-contact .eyebrow{color:var(--brass)}
.closing-cta .eyebrow,.team-contact .eyebrow,.analysis-intro .eyebrow{justify-content:center}
.text-link{font-size:.75rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--navy-900);text-decoration:none;border-bottom:1px solid var(--brass);padding-bottom:6px;display:inline-block}
.text-link:hover{color:var(--brass-deep)}
.light-link,.dark-section .text-link{color:var(--on-dark);border-color:var(--brass)}
.dark-section .text-link:hover{color:var(--brass)}

/* ---------- Buttons: square, tracked, quiet ---------- */
.button{border-radius:1px;min-height:52px;padding:16px 30px;font-size:.75rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;transition:background .25s,color .25s,border-color .25s}
.button:hover,.button:active{transform:none}
.button-mint{background:var(--ivory);color:var(--navy-900);border-color:var(--ivory)}
.button-mint:hover{background:#fff;color:var(--navy-900)!important}
.button-outline{background:transparent;border-color:#E9E4DA99;color:var(--on-dark)}
.button-outline:hover{background:#E9E4DA14;border-color:var(--brass)}
.button-dark{background:var(--navy-900);color:var(--ivory);border-color:var(--navy-900)}
.button-dark:hover{background:var(--navy-700)}
.film-section .button-dark{background:transparent;border-color:var(--brass);color:var(--on-dark)}
.film-section .button-dark:hover{background:#BFA17222}

a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--brass);outline-offset:4px}

/* ---------- Header ---------- */
.site-header{background:var(--navy-900);box-shadow:none;border-bottom:1px solid #ffffff14}
.brand-name{font-size:.625rem;font-weight:600;letter-spacing:.2em;line-height:1.5;color:var(--on-dark)}
.site-header .primary-nav{font-size:.6875rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.site-header .primary-nav>a:not(.button):hover,.site-header .nav-group>summary:hover{color:var(--brass)}
.header-phone{font-size:.75rem;letter-spacing:.1em}
.header-phone:hover{color:var(--brass)}
.site-header .nav-action{font-size:.6875rem;letter-spacing:.16em;padding:13px 18px;min-height:44px}
.site-header .nav-panel{border-radius:1px;background:var(--paper-2);border-color:var(--line-2);text-transform:none;letter-spacing:0;font-family:'DM Sans',Arial,sans-serif}
.site-header .nav-panel a{font-size:14px;font-weight:500}
.site-header .nav-panel a:hover,.site-header .nav-panel a:focus-visible{background:var(--stone)}

/* ---------- Hero ---------- */
.hero-poster,.hero-video{filter:saturate(.72) contrast(1.06) brightness(.9)}
.hero-shade{background:linear-gradient(180deg,#0D1A2E80 0%,#0D1A2E73 40%,#0D1A2Ee0 100%),linear-gradient(90deg,#0D1A2E40,#0D1A2E10 50%,#0D1A2E40)}
.home-hero{background:var(--navy-900)}
.home-hero h1{display:flex;flex-direction:column;align-items:center;max-width:1000px;margin-bottom:28px;font-family:var(--serif);font-weight:400;font-size:var(--type-home-topic);line-height:1.04;text-transform:none;letter-spacing:-.01em}
.home-hero h1 .hero-offer{display:block}
.home-hero h1 .hero-phrase{display:block;white-space:normal}
.home-hero h1 .hero-location{order:-1;margin:0 0 26px;font-family:var(--caps);font-size:.75rem;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--brass);line-height:1.5;white-space:normal}
.home-hero .hero-lede{font-size:1.125rem;line-height:1.6;color:var(--on-dark);margin-bottom:34px}
.home-hero .hero-lede strong{font-weight:400}
.home-hero .hero-stat{margin-top:26px;font-size:.6875rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--on-dark-muted)}
.video-toggle{background:#0D1A2Ecc;border-color:#ffffff40;border-radius:1px}
.video-toggle:is(:hover,:focus-visible)::after{background:var(--navy-900)}

/* ---------- Rental analysis card ---------- */
.analysis-layout{background:var(--paper-2);border:1px solid var(--line-2);border-radius:1px;box-shadow:0 40px 80px -40px #0D1A2E66}
.analysis-intro h2{font-size:2.25rem}
.analysis-intro>p:not(.eyebrow){color:var(--muted)}
.form-step h3{font-size:1.5rem}
.form-progress,.form-top{font-size:.6875rem;font-weight:600;letter-spacing:.2em;color:var(--muted)}
.progress-track{background:var(--stone);height:2px}
.progress-track span{background:var(--navy-900)}
.field input:not([type=radio]),.field select{border-color:var(--line-2);border-radius:1px;color:var(--ink);background:#fff}
.choice{border-color:var(--line-2);border-radius:1px;background:#fff}
.choice:hover{border-color:var(--navy-700)}
.choice:has(input:checked){border-color:var(--navy-900);background:var(--stone);box-shadow:inset 0 0 0 1px var(--navy-900)}
.choice:has(input:focus-visible){outline-color:var(--brass)}
.choice input{accent-color:var(--navy-900)}
.back-button,.restart-button,.edit-answer{color:var(--navy-900)}
.review-limit,.request-status,.preview-notice{background:var(--stone);border-left-color:var(--brass)}
.small-note{border-left-color:var(--brass)}
.analysis-section .analysis-intro[hidden],.analysis-section .form-shell[hidden],.analysis-section .thank-you-panel[hidden]{display:none!important}
.thank-you-panel{max-width:620px;margin-inline:auto;padding:clamp(8px,2vw,20px);text-align:center}
.thank-you-icon{display:block;margin:0 auto 22px}
.thank-you-panel h2{font-size:2rem;margin-bottom:18px}
.thank-you-panel p{color:var(--muted);margin-bottom:12px}
.thank-you-panel .thank-you-main{font-size:1.125rem;color:var(--ink)}
.thank-you-summary{margin:28px 0 22px;text-align:left;border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}
.thank-you-summary>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:10px;padding:12px 0}
.thank-you-summary>div+div{border-top:1px solid var(--line-2)}
.thank-you-summary dt{font-weight:700}
.thank-you-summary dd{margin:0;overflow-wrap:anywhere}
.thank-you-panel .thank-you-contact{font-size:.875rem;margin-bottom:0}
.thank-you-contact a{text-underline-offset:3px}
@media(max-width:650px){.thank-you-panel h2{font-size:1.5rem}.thank-you-summary>div{grid-template-columns:minmax(0,1fr);gap:2px}}

/* ---------- Section rhythm: ivory / stone / navy only ---------- */
.section-space{padding:clamp(96px,10vw,152px) 0}
.results-section,.coverage-section,.soft-section,.example-section,.pricing-teaser{background:var(--ivory)}
.light-section,.staging-teaser,.faq-preview,.related-routes,.team-relationship,.testimonial-section{background:var(--stone)}
.dark-section,.process-section,.closing-cta,.team-intro,.team-contact{background:var(--navy-900);color:var(--on-dark)}
.renter-band{background:var(--navy-800)}
.film-section{background:var(--navy-900);padding:clamp(56px,6vw,96px) 0}
.site-footer{background:var(--navy-950);color:var(--on-dark-muted)}

/* Body copy colors that were hard-coded green-gray */
.split-copy>p:not(.eyebrow),.teaser-grid>div:last-child p,.editorial-grid>div:last-child p,.results-intro,.benefits-grid p,
.faq-grid details p,.faq-list details p,.pricing-intro p:not(.eyebrow),.plan-row>p,.faq-aside p:not(.eyebrow),
.team-role,.team-photo-note,.team-relationship p,.breadcrumbs,.step-intro{color:var(--muted)}
.dark-section .split-copy>p:not(.eyebrow),.closing-cta p:not(.eyebrow),.process-rows p,.team-intro p,.team-contact p,.inner-hero p:not(.eyebrow){color:var(--on-dark-muted)}

/* ---------- Results: numbers set like a private-bank report ---------- */
.results-grid{gap:0;border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}
.results-grid div{border-top:0;border-left:1px solid var(--line-2);padding:34px 28px 30px}
.results-grid div:first-child{border-left:0;padding-left:0}
.results-grid dd{font-size:3.25rem;line-height:1;color:var(--navy-900);margin-bottom:14px}
.results-grid dt{font-size:.6875rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.benefits-grid{list-style:none;padding-left:0}
.benefits-grid>li{border-top:1px solid var(--brass);padding-top:26px}

/* ---------- Testimonials ---------- */
.testimonial-card{background:var(--paper-2);border:1px solid var(--line-2);border-radius:1px;padding:34px 34px 30px}
.testimonial-card h3{font-size:1.375rem;color:var(--navy-900)}
.testimonial-heading .text-link{color:var(--navy-900)}
.testimonial-attribution{font-family:var(--caps);font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase}
.testimonial-attribution span{letter-spacing:.06em;text-transform:none;font-family:'DM Sans',Arial,sans-serif;font-size:.8125rem}

/* ---------- Media + team ---------- */
.media-caption{background:#0D1A2Eed;border-radius:1px}
.team-collage{background:var(--navy-900);gap:2px}
.team-collage img{filter:saturate(.85)}
.team-portrait{border-radius:1px;background:var(--stone)}
.team-portrait-placeholder{background:var(--stone);color:var(--navy-900)}

/* ---------- FAQ, rules, lists ---------- */
.faq-grid details,.faq-list details{border-top-color:var(--line-2)}
.faq-grid details:last-child,.faq-list details:last-child{border-bottom-color:var(--line-2)}
.faq-grid summary,.faq-list summary{font-family:var(--serif);font-weight:400;font-size:1.25rem}
.faq-grid summary:after,.faq-list summary:after{color:var(--brass-deep)}
.related-links a{font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;border-top-color:var(--line-2)}
.related-links a:last-child{border-bottom-color:var(--line-2)}

/* ---------- Inner pages ---------- */
.inner-shade{background:linear-gradient(180deg,#0D1A2E99,#0D1A2Ed9)}
.inner-hero>img{filter:saturate(.72) contrast(1.05)}
.process-rows article{border-top-color:#BFA17266}
.process-rows article>span{color:var(--brass);font-family:var(--caps);letter-spacing:.2em}
.plan-row{border-top-color:var(--line-2)}
.plan-row:last-child{border-bottom-color:var(--line-2)}
.plan-kicker{color:var(--brass-deep)}
.plan-rate{color:var(--navy-900);font-size:3.5rem}
.agreement-note{border-left-color:var(--brass);background:var(--stone)}
.plan-comparison th,.plan-comparison td{border-top-color:var(--line-2)}
.plan-comparison tbody tr:last-child>*{border-bottom-color:var(--line-2)}
.plan-comparison thead th{color:var(--navy-900);font-family:var(--caps);font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase}

/* ---------- Footer ---------- */
.footer-brand{font-size:1.75rem}
.footer-grid h2{font-family:var(--caps);font-size:.6875rem;font-weight:600;letter-spacing:.22em;color:var(--brass)}
.footer-grid a:not(.footer-brand){color:var(--on-dark)}
.footer-grid a:not(.footer-brand):hover{color:var(--brass);text-decoration:none}
.footer-bottom{border-top-color:#ffffff1a;color:#8D93A0}

/* ---------- Sticky actions ---------- */
.sticky-actions{background:var(--navy-900);border-color:#ffffff22;border-radius:2px}
.sticky-actions .sticky-call{background:var(--ivory);color:var(--navy-900)}

/* ---------- Responsive ---------- */
@media(max-width:900px){
  :root{--type-home-topic:2.875rem;--type-inner-h1:2.625rem;--type-section:2.25rem}
  .site-header .primary-nav{font-size:.8125rem}
  .results-grid div:nth-child(3){border-left:0;padding-left:0}
  .results-grid div:nth-child(n+3){border-top:1px solid var(--line-2)}
}
@media(max-width:650px){
  :root{--type-home-topic:2.25rem;--type-inner-h1:2.125rem;--type-section:1.875rem;--type-panel:1.5rem;--type-item:1.25rem}
  .home-hero h1{font-size:var(--type-home-topic);line-height:1.08}
  .home-hero h1 .hero-location{font-size:.625rem;letter-spacing:.2em;margin-bottom:18px}
  .analysis-intro h2{font-size:1.75rem}
  .results-grid dd{font-size:2.25rem}
  .results-grid div{padding:24px 14px 22px}
  .button{padding:15px 22px;letter-spacing:.14em}
}
@media(max-width:379px){
  :root{--type-home-topic:1.875rem;--type-inner-h1:1.75rem;--type-section:1.625rem}
}

/* Specificity fixes against later rules in styles.css */
.home-hero .hero-stat{font-family:var(--caps)}
@media(max-width:650px){
  .plan-rate{font-size:2.75rem}
  .footer-brand{font-size:1.375rem}
}

/* Polish after first render */
h1,h2,h3{text-wrap:balance}
.results-section h2{max-width:none}
.home-hero h1 .hero-location{color:#D8BE8E}
.results-grid div{justify-content:flex-end}
.inner-hero .eyebrow,.team-intro .eyebrow,.home-hero .eyebrow{justify-content:center}
@media(min-width:901px) and (max-width:1100px){
  .site-header .primary-nav{font-size:.625rem;letter-spacing:.1em;gap:14px}
  .site-header .nav-action{letter-spacing:.1em;padding:12px}
  .brand-name{letter-spacing:.14em}
}

/* ================= Mobile + tablet pass (2026-10-08). Desktop (>900px) is untouched. ================= */

/* Hover colors only where a real mouse exists, so a tap never leaves a stuck hover. */
@media (hover:none),(pointer:coarse){
  .site-header .primary-nav>a:not(.button):hover,.site-header .nav-group>summary:hover,.header-phone:hover{color:inherit}
  .button-mint:hover{background:var(--ivory)}
  .button-outline:hover{background:transparent;border-color:#E9E4DA99}
}

@media(max-width:900px){
  /* Mobile menu: the open group reads on navy, not on the desktop ivory dropdown. */
  .site-header .nav-panel,.site-header .nav-group:last-of-type .nav-panel{background:transparent;border:0;border-bottom:1px solid #ffffff25;border-radius:0;box-shadow:none}
  .site-header .nav-panel a{font-size:16px;font-weight:400;color:var(--on-dark)}
  .site-header .nav-panel a:hover,.site-header .nav-panel a:focus-visible{background:transparent;color:var(--brass)}
  .site-header .nav-group[open]>summary{color:var(--brass)}
  .site-header .primary-nav{font-size:.8125rem;letter-spacing:.14em}
  .brand{min-height:44px}

  /* Calmer heading rhythm: serif display needs more line height on a phone. */
  h1,.home-hero h1{line-height:1.12}
  h2{line-height:1.18}
  h3{line-height:1.25}
  .home-hero h1{letter-spacing:0}

  .section-space{padding:80px 0}
}

@media(max-width:650px){
  .section-space{padding:64px 0}
  .film-section{padding:0 0 40px}
  .testimonial-section{padding:56px 0 64px}
  .closing-cta{padding:72px 0}
  .renter-band{padding:48px 0}

  /* Readable small text: 13px floor for labels, buttons, captions. */
  .eyebrow,.plan-kicker,.form-progress,.form-top,.results-grid dt,.footer-grid h2,.testimonial-attribution strong,
  .plan-comparison thead th,.related-links a,.process-rows article>span{font-size:.8125rem;letter-spacing:.14em}
  .eyebrow{gap:12px}
  .eyebrow::before{width:20px}
  .button,.text-link,.home-hero .button,.inner-hero .button,.closing-cta .button,.team-contact .button{font-size:.8125rem;letter-spacing:.12em}
  .home-hero h1 .hero-location{font-size:.8125rem;letter-spacing:.16em;margin-bottom:16px}
  .home-hero .hero-stat{font-size:.8125rem;letter-spacing:.14em}
  .footer-bottom{font-size:.8125rem}

  /* Hero: two equal-width buttons, centered. */
  .home-hero .actions,.inner-hero .actions{flex-direction:column;align-items:stretch;width:min(100%,320px);margin-inline:auto}
  .home-hero .button,.inner-hero .button{width:100%;min-width:0;max-width:none;min-height:52px}

  /* Form card: one clear title, a smaller question, compact shell. */
  .analysis-intro h2{font-size:1.5rem}
  .form-step h3{font-size:1.25rem;line-height:1.3}
  .analysis-layout{box-shadow:0 24px 48px -28px #0D1A2E59}

  /* Heading-to-text gaps in the two-column teasers collapse cleanly. */
  .teaser-grid h2,.editorial-grid h2,.faq-grid h2,.pricing-intro h2{margin-bottom:0}
  .teaser-grid,.editorial-grid{gap:20px}

  /* Stats: a touch smaller so labels do not crowd the numbers. */
  .results-grid dd{font-size:2rem}

  /* 44px tap targets without changing the visual layout. */
  .text-link,.breadcrumbs a{position:relative}
  .text-link::after,.breadcrumbs a::after{content:"";position:absolute;inset:-10px -6px}
  .footer-grid a:not(.footer-brand){margin:0;padding:11px 0}
  .footer-contact a{padding:11px 0}

  /* Bottom call bar keeps one line. */
  .sticky-actions .button{font-size:.8125rem;letter-spacing:.06em;white-space:nowrap}
}

@media(max-width:379px){
  .brand-name{font-size:.625rem;letter-spacing:.14em}
  .sticky-actions .button{font-size:.75rem;letter-spacing:.04em;padding:10px 11px}
  .home-hero h1 .hero-location{letter-spacing:.12em}
}
@media(max-width:650px){.home-hero h1 .hero-location{text-wrap:balance}}
@media(max-width:900px){
  .teaser-grid h2,.editorial-grid h2,.faq-grid h2,.pricing-intro h2{margin-bottom:0}
}
@media(min-width:651px) and (max-width:1000px){
  .testimonial-card:nth-child(3){grid-column:1/-1}
}

/* ================= Homepage pass 2 (2026-10-08) ================= */

/* Eyebrows stand alone, no leading rule. */
.eyebrow::before{content:none;display:none}
.eyebrow{gap:0}

/* Benefit icons (Phosphor Light, MIT, see assets/phosphor-license.txt). */
.benefit-icon{display:block;width:40px;height:40px;margin:0 0 18px}

/* Hero subline: fixed three-line break on phones only. */
.lede-break{display:none}

/* Google reviews: Google's review-card layout in a swipeable carousel (groups of three). */
.g-summary,.g-review,.g-all,.g-more{font-family:Roboto,Arial,sans-serif}
.g-summary{display:inline-flex;align-items:center;gap:14px;padding:10px 16px;min-height:52px;background:#fff;border:1px solid #E3E3E3;border-radius:8px;text-decoration:none;color:#202124;flex:none;margin-bottom:6px}
.g-wordmark{display:block;width:74px;height:auto}
.g-summary-rating{display:inline-flex;align-items:center;gap:8px}
.g-summary-score{font-size:20px;font-weight:500;line-height:1}
.g-summary-count{font-size:14px;color:#1A73E8}
.g-stars,.g-stars-base,.g-stars-fill{display:inline-flex;gap:1px}
.g-stars svg{display:block;width:16px;height:16px;fill:#FBBC04;flex:none}
.g-star.is-off svg,.g-stars-partial .g-stars-base svg{fill:#DADCE0}
.g-stars-partial{position:relative}
.g-stars-fill{position:absolute;inset:0 auto 0 0;width:var(--g-fill);overflow:hidden}
.g-carousel{position:relative;margin-top:28px}
.g-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;scrollbar-width:none;padding:4px 2px 8px;margin:-4px -2px 0;cursor:grab}
.g-track::-webkit-scrollbar{display:none}
.g-track.is-dragging{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto;user-select:none}
.g-page{flex:0 0 100%;min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch;scroll-snap-align:start}
.g-review{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #E3E3E3;border-radius:8px;padding:20px 20px 18px;box-shadow:0 1px 2px rgba(60,64,67,.1);color:#3C4043}
.g-review-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.g-avatar{width:40px;height:40px;border-radius:50%;flex:none;object-fit:cover;background:#E8EAED}
.g-review-who{display:flex;flex-direction:column;min-width:0;flex:1}
.g-review-who strong{font-weight:500;font-size:15px;line-height:1.3;color:#202124;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.g-review-who span{font-size:13px;line-height:1.4;color:#70757A}
.g-logo{width:20px;height:20px;flex:none;align-self:flex-start}
.g-review-meta{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:13px;color:#70757A}
.g-review-text{margin:0;font-size:14px;line-height:1.57;color:#3C4043;white-space:pre-line;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6;overflow:hidden}
.g-review.is-expanded .g-review-text{display:block;-webkit-line-clamp:unset;overflow:visible}
.g-more{align-self:flex-start;min-height:44px;margin:-4px 0 -14px;padding:10px 0;border:0;background:none;color:#1A73E8;font-size:14px;font-weight:500;cursor:pointer}
.g-review-all{align-items:center;justify-content:center;gap:10px;text-align:center;text-decoration:none;color:#202124}
.g-review-all .g-wordmark{width:92px}
.g-all-score{font-size:40px;line-height:1}
.g-review-all .g-stars svg{width:20px;height:20px}
.g-all-count{font-size:14px;color:#70757A}
.g-all-link{margin-top:4px;font-size:14px;font-weight:500;color:#1A73E8}
.g-nav{position:absolute;top:50%;z-index:2;width:44px;height:44px;margin-top:-34px;display:flex;align-items:center;justify-content:center;border:1px solid #DADCE0;border-radius:50%;background:#fff;color:#3C4043;box-shadow:0 1px 3px rgba(60,64,67,.25);cursor:pointer;transition:opacity .2s}
.g-nav svg{width:20px;height:20px}
.g-prev{left:-22px}
.g-next{right:-22px}
.g-nav[disabled]{opacity:0;pointer-events:none}
.g-dots{display:flex;justify-content:center;gap:8px;margin-top:18px}
.g-dot{width:8px;height:8px;border-radius:50%;background:#C9C2B4;transition:background .2s}
.g-dot.is-active{background:var(--navy-900)}
.g-footer{margin:10px 0 0;text-align:center}
.g-all{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:500;color:#1A73E8;text-decoration:none}
@media (hover:hover) and (pointer:fine){.g-summary:hover .g-summary-count,.g-review-all:hover .g-all-link,.g-all:hover,.g-more:hover{text-decoration:underline}.g-nav:hover{background:#F8F9FA}}
.g-summary:focus-visible,.g-review-all:focus-visible,.g-all:focus-visible,.g-track:focus-visible,.g-nav:focus-visible,.g-more:focus-visible{outline:2px solid var(--brass);outline-offset:3px}
@media(prefers-reduced-motion:reduce){.g-track{scroll-behavior:auto}}
@media(max-width:900px){
  .g-track{gap:12px}
  .g-page{flex-basis:calc(100% - 28px);grid-template-columns:minmax(0,1fr);gap:12px}
  .g-nav{display:none}
  .g-review{padding:16px 16px 14px}
  .g-review-head{margin-bottom:10px}
  .g-review-meta{margin-bottom:8px}
  .g-review-text{-webkit-line-clamp:4}
  .g-review-all{min-height:200px}
}

@media(max-width:650px){
  .lede-break{display:inline}
  .testimonial-heading .g-summary{margin:20px 0 0}
  /* Film: the video and its button sit on the page, not on a navy band. */
  .film-section{background:var(--ivory)}
  .film-section .button-dark{background:var(--navy-900);color:var(--ivory);border-color:var(--navy-900)}
}
@media(max-width:339px){.home-hero .hero-lede{font-size:1rem}}

/* ================= Pricing page (2026-10-08): plans, fee calculator, fee table, full comparison, guarantees ================= */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.pc-head{max-width:720px;margin:0 0 40px}
.pc-head h2{margin-bottom:14px}
.pc-head p:not(.eyebrow){color:var(--muted);margin:0}

/* Plans */
.pc-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1080px}
.pc-plan{position:relative;display:flex;flex-direction:column;min-width:0;padding:40px 40px 36px;background:var(--paper-2);border:1px solid var(--line-2);border-radius:2px}
.pc-plan h3{font-size:2.25rem;margin:0 0 8px}
.pc-plan-for{color:var(--muted);margin:0 0 28px;max-width:34ch}
.pc-rate{display:flex;flex-direction:column;gap:6px;margin:0 0 6px;padding-top:24px;border-top:1px solid var(--line-2)}
.pc-rate-num{font:400 4.5rem/1 var(--serif);color:var(--navy-900)}
.pc-rate-num small{font-size:.45em;margin-left:2px}
.pc-rate-unit{font-size:.9375rem;color:var(--muted)}
.pc-min{font-family:var(--caps);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--brass-deep);margin:10px 0 28px}
.pc-plus{font-weight:600;margin:0 0 12px}
.pc-list{list-style:none;margin:0 0 32px;padding:24px 0 0;border-top:1px solid var(--line-2);display:grid;gap:12px;flex:1}
.pc-plus+.pc-list{padding-top:0;border-top:0}
.pc-list li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:12px;align-items:start;line-height:1.45}
.pc-check{width:20px;height:20px;margin-top:1px;fill:none;stroke:var(--brass-deep);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pc-plan .button{align-self:stretch}
.pc-plan-featured{background:var(--navy-900);border-color:var(--navy-900);color:var(--on-dark)}
.pc-plan-featured h3,.pc-plan-featured .pc-rate-num{color:#FBF9F4}
.pc-plan-featured .pc-plan-for,.pc-plan-featured .pc-rate-unit{color:var(--on-dark-muted)}
.pc-plan-featured .pc-rate,.pc-plan-featured .pc-list{border-color:#ffffff24}
.pc-plan-featured .pc-min{color:var(--brass)}
.pc-plan-featured .pc-check{stroke:var(--brass)}
.pc-note{margin:24px 0 0;color:var(--muted);font-size:.9375rem}
.pc-note a{color:var(--navy-900);font-weight:600;text-underline-offset:4px}

/* Calculator */
.pc-calc{background:var(--stone)}
.pc-calc-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,96px);align-items:start}
.pc-calc-card{background:var(--paper-2);border:1px solid var(--line-2);border-radius:2px;padding:32px}
.pc-calc-card label{display:block;font-family:var(--caps);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.pc-input{display:flex;align-items:center;border:1px solid var(--line-2);background:#fff;max-width:280px}
.pc-input span{padding:0 0 0 16px;font:400 1.75rem var(--serif);color:var(--muted)}
.pc-input input{width:100%;min-height:56px;border:0;padding:8px 16px 8px 6px;font:400 1.75rem var(--serif);color:var(--navy-900);background:transparent}
.pc-input:focus-within{outline:2px solid var(--brass);outline-offset:3px}
.pc-input input:focus{outline:none}
.pc-calc-out{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:28px 0 0;border-top:1px solid var(--line-2)}
.pc-calc-out div{display:flex;flex-direction:column-reverse;padding:20px 16px 0 0}
.pc-calc-out div+div{padding-left:16px;border-left:1px solid var(--line-2)}
.pc-calc-out dt{font-size:.875rem;color:var(--muted);line-height:1.4}
.pc-calc-out dd{margin:0 0 6px;font:400 2.25rem/1.1 var(--serif);color:var(--navy-900)}
.pc-calc-note{margin:20px 0 0;font-size:.875rem;color:var(--muted)}

/* One-time fees */
.pc-fee-table{width:100%;border-collapse:collapse;text-align:left}
.pc-fee-table thead th{font-family:var(--caps);font-size:.6875rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);padding:0 24px 14px 0;border-bottom:1px solid var(--line-2)}
.pc-fee-table tbody th,.pc-fee-table td{padding:22px 24px 22px 0;border-bottom:1px solid var(--line-2);vertical-align:top}
.pc-fee-table tbody th{font-weight:600;width:28%}
.pc-fee-table .pc-amt{font:400 1.375rem/1.3 var(--serif);color:var(--navy-900);width:28%}
.pc-fee-table td:last-child{color:var(--muted);padding-right:0}
.pc-fees .agreement-note{margin-top:28px;max-width:720px}

/* Full comparison */
.pc-compare-section{background:var(--stone)}
.pc-group{border-top:1px solid var(--line-2)}
.pc-group:last-of-type{border-bottom:1px solid var(--line-2)}
.pc-group summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:16px 40px 16px 0;cursor:pointer;list-style:none;position:relative}
.pc-group summary::-webkit-details-marker{display:none}
.pc-group summary::after{content:'+';position:absolute;right:6px;top:50%;transform:translateY(-52%);font-size:1.5rem;color:var(--brass-deep)}
.pc-group[open] summary::after{content:'\2212'}
.pc-group-name{font:400 1.375rem/1.25 var(--serif);color:var(--navy-900)}
.pc-group-count{font-size:.875rem;color:var(--muted);white-space:nowrap}
.pc-compare{width:100%;border-collapse:collapse;margin:0 0 24px}
.pc-compare thead th{font-family:var(--caps);font-size:.6875rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);text-align:center;padding:0 8px 12px;width:120px}
.pc-compare thead th:first-child{text-align:left;padding-left:0;width:auto}
.pc-compare tbody th{font-weight:400;text-align:left;padding:13px 16px 13px 0;border-top:1px solid #DDD6C9;line-height:1.45}
.pc-compare td{text-align:center;border-top:1px solid #DDD6C9;padding:13px 8px;color:#9A9384}
.pc-compare td .pc-check{display:inline-block;vertical-align:middle;margin:0}
.pc-footnote{margin:16px 0 0;font-size:.875rem;color:var(--muted)}

/* Guarantees */
.pc-guarantees{background:var(--navy-900);color:var(--on-dark);padding:clamp(80px,9vw,128px) 0}
.pc-guarantees h2{color:#FBF9F4}
.pc-guarantee-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px}
.pc-guarantee-grid li{display:flex;flex-direction:column;gap:10px;padding:24px 0 28px;border-top:1px solid #BFA17266}
.pc-g-name{font:400 1.5rem/1.25 var(--serif);color:#FBF9F4}
.pc-g-tag{font-family:var(--caps);font-size:.6875rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--brass)}

@media(max-width:900px){
  .pc-plan-grid,.pc-calc-grid{grid-template-columns:minmax(0,1fr)}
  .pc-plan-featured{margin-top:12px}
  .pc-guarantee-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
  .pc-head{margin-bottom:28px}
  .pc-plan{padding:32px 20px 24px}
    .pc-plan h3{font-size:1.875rem}
  .pc-rate-num{font-size:3.5rem}
  .pc-min,.pc-calc-card label{font-size:.8125rem}
  .pc-calc-card{padding:24px 18px}
  .pc-input{max-width:none}
  .pc-calc-out{grid-template-columns:minmax(0,1fr)}
  .pc-calc-out div,.pc-calc-out div+div{padding:16px 0;border-left:0;border-bottom:1px solid var(--line-2);flex-direction:row-reverse;justify-content:space-between;align-items:baseline;gap:12px}
  .pc-calc-out dd{font-size:1.75rem;margin:0}
  .pc-fee-table thead{display:none}
  .pc-fee-table,.pc-fee-table tbody,.pc-fee-table tr,.pc-fee-table th,.pc-fee-table td{display:block;width:auto}
  .pc-fee-table tr{padding:20px 0;border-bottom:1px solid var(--line-2)}
  .pc-fee-table tbody th,.pc-fee-table td{padding:0;border:0}
  .pc-fee-table tbody th{margin-bottom:6px}
  .pc-fee-table .pc-amt{width:auto;font-size:1.25rem;margin-bottom:6px}
  .pc-group summary{flex-direction:column;align-items:flex-start;gap:4px}
  .pc-group-name{font-size:1.25rem}
  .pc-compare thead th{width:72px;padding:0 4px 10px;font-size:.6875rem;letter-spacing:.06em}
  .pc-compare tbody th{padding-right:10px;font-size:.9375rem}
  .pc-compare td{padding:12px 4px}
  .pc-guarantee-grid{grid-template-columns:minmax(0,1fr)}
  .pc-g-name{font-size:1.25rem}
}
@media(max-width:650px){.pc-compare thead th{font-size:.8125rem}.pc-compare thead th{letter-spacing:.04em}}
/* Centered plan section; phone fee rows use the full width. */
.pc-plans .pc-head{margin-inline:auto;text-align:center}
.pc-plans .pc-head .eyebrow{justify-content:center}
.pc-plan-grid{margin-inline:auto}
.pc-plans .pc-note{text-align:center}
@media(max-width:650px){.pc-fee-table tbody th,.pc-fee-table .pc-amt{width:auto}}
/* Guarantees band and closing CTA share navy: tighter gap and a hairline between them. */
.pc-guarantees{padding-bottom:clamp(56px,6vw,88px)}
.pc-guarantees+.closing-cta{border-top:1px solid #ffffff1f}

/* Hero proof line: 19-day average beside the 30-day rental guarantee. */
.home-hero .hero-stat{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 16px}
.hero-stat-sep{width:4px;height:4px;border-radius:50%;background:var(--brass);flex:none}
@media(max-width:650px){
  .home-hero .hero-stat{flex-direction:column;gap:6px}
  .hero-stat-sep{display:none}
}
