:root {
  --ink: #11110f;
  --paper: #faf9f6;
  --white: #fff;
  --gold: #c9a96e;
  --line: rgba(17,17,15,.18);
  --max: 1240px;
}

.mobile-planner-links{display:none}.site-header .header-wardrobe-link{font-size:14px;padding:10px;border:1px solid #b69c6c;text-align:center}.site-header:has(.header-wardrobe-link){height:auto;min-height:92px;gap:12px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}
@media(min-width:821px){#site-nav{flex-wrap:wrap;justify-content:flex-end}.site-header:has(#site-nav){height:auto;min-height:92px;gap:16px;padding-top:8px;padding-bottom:8px}#site-nav .nav-planner{white-space:normal}}
@media(max-width:820px){body:not(.subpage)>.site-header{height:auto;min-height:78px;flex-wrap:wrap;padding-bottom:10px}.mobile-planner-links{display:flex;flex-wrap:wrap;gap:8px;order:3;width:100%;font-size:14px}.mobile-planner-links a{flex:1;text-align:center;padding:8px;border:1px solid #b69c6c;background:#f3ebdb}body:not(.subpage) #site-nav{top:100%}}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: Inter, Avenir, "Helvetica Neue", Arial, sans-serif; font-size: 16px; line-height: 1.65; }
body:not(.subpage) > main { display: flex; flex-direction: column; }
body:not(.subpage) > main .digital-tools { order: 1; }
body:not(.subpage) > main .process { order: 2; }
body:not(.subpage) > main .quality { order: 3; }
body:not(.subpage) > main #home-references { order: 4; }
body:not(.subpage) > main #home-reviews { order: 5; }
body:not(.subpage) > main .myhammer-proof { order: 6; }
body:not(.subpage) > main .referral { order: 7; }
body:not(.subpage) > main .subscriptions { order: 8; }
body:not(.subpage) > main .service-area { order: 9; }
body:not(.subpage) > main .contact { order: 10; }
a { color: inherit; text-decoration: none; }
a:focus-visible, button:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
img { display: block; max-width: 100%; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; left: 1rem; top: -5rem; z-index: 100; background: white; padding: .75rem 1rem; }
.skip-link:focus { top: 1rem; }

.site-header { height: 92px; padding: 0 clamp(1.25rem,4vw,4.5rem); display: flex; align-items: center; justify-content: space-between; background: rgba(255,255,255,.96); position: relative; z-index: 20; }
.brand { width: 118px; height: 76px; overflow: hidden; display: flex; align-items: center; background:#fff; }
.brand img { width:100%; height:100%; object-fit:cover; object-position:center 5%; transform:none; filter:contrast(1.06); }
nav { display: flex; align-items: center; gap: clamp(1.2rem,2.5vw,2.75rem); font-size: .84rem; font-weight: 600; letter-spacing: .045em; }
nav a { position: relative; }
nav a:not(.nav-cta)::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -6px; height: 1px; background: var(--ink); transition: right .25s ease; }
nav a:hover::after, nav a:focus-visible::after { right: 0; }
.nav-cta { border: 1px solid var(--ink); padding: .72rem 1rem; transition: .25s; }
.nav-cta:hover { background: var(--ink); color: white; }
.menu-button { display: none; background: none; border: 0; padding: .6rem; }
.nav-planner{border:1px solid #b69c6c;border-radius:4px;background:#f3ebdb;padding:.65rem .8rem;white-space:nowrap}.mobile-planner{display:none}#site-nav{gap:clamp(.55rem,1.2vw,1.3rem);letter-spacing:.015em}@media(max-width:1100px) and (min-width:821px){.site-header{height:auto;min-height:92px;flex-wrap:wrap;gap:.75rem;padding-top:.5rem;padding-bottom:.5rem}#site-nav{flex-wrap:wrap;justify-content:flex-end;flex:1;font-size:.8rem;row-gap:.7rem}}@media(max-width:820px){.mobile-planner{display:block;margin-left:auto;margin-right:.6rem;border:1px solid #b69c6c;padding:.6rem;font-size:.875rem;background:#f3ebdb;white-space:nowrap}}
.menu-button span:not(.sr-only) { display: block; width: 25px; height: 1px; margin: 6px 0; background: var(--ink); }

.hero { min-height: calc(100svh - 92px); position: relative; color: white; display: grid; align-items: center; padding: clamp(4rem,10vw,8rem) clamp(1.25rem,7vw,7.5rem) 9rem; overflow: hidden; }
.hero-image, .hero-shade { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.hero-image { object-position: 54% center; }
.hero-shade { background: linear-gradient(90deg,rgba(10,10,9,.9) 0%,rgba(10,10,9,.54) 43%,rgba(10,10,9,.08) 72%), linear-gradient(0deg,rgba(10,10,9,.6),transparent 45%); }
.hero-content { position: relative; z-index: 2; max-width: 720px; }
.eyebrow { margin: 0 0 1.5rem; color: rgba(255,255,255,.8); font-size: .875rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }
.eyebrow.dark { color: #7e6c52; }
h1, h2 { margin: 0; font-family: "Bodoni 72", Didot, Georgia, serif; font-weight: 600; letter-spacing: -.04em; line-height: .96; }
h1 { font-size: clamp(3.8rem,8vw,7.8rem); }
h1 em, h2 em { color: var(--gold); font-weight: 500; }
.hero-copy { max-width: 560px; margin: 2rem 0 2.5rem; color: rgba(255,255,255,.82); font-size: clamp(1rem,1.35vw,1.2rem); }
.hero-actions { display: flex; align-items: center; gap: 2rem; flex-wrap: wrap; }
.button { display: inline-flex; min-height: 52px; align-items: center; justify-content: center; padding: .85rem 1.35rem; font-size: .82rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; transition: transform .25s, background .25s; }
.button:hover { transform: translateY(-2px); }
.button-light { background: white; color: var(--ink); }
.button-light:hover { background: var(--gold); }
.text-link { font-size: .86rem; font-weight: 600; }
.text-link span { display: inline-block; margin-left: .5rem; color: var(--gold); transition: transform .25s; }
.text-link:hover span { transform: translate(3px,3px); }
.hero-facts { position: absolute; z-index: 2; left: clamp(1.25rem,7vw,7.5rem); right: clamp(1.25rem,7vw,7.5rem); bottom: 0; min-height: 100px; border-top: 1px solid rgba(255,255,255,.26); display: grid; grid-template-columns: repeat(3,1fr); }
.hero-facts div { padding: 1.4rem 0; display: flex; flex-direction: column; }
.hero-facts strong { font-size: .85rem; letter-spacing: .08em; text-transform: uppercase; }
.hero-facts span { color: rgba(255,255,255,.55); font-size: .78rem; }
.radius-banner { display:grid; grid-template-columns:auto minmax(260px,1fr) auto; gap:clamp(1rem,3vw,2.5rem); align-items:center; padding:1.25rem max(clamp(1.25rem,7vw,7.5rem),calc((100vw - 1440px)/2)); background:#c9a96e; color:#11110f; }
.radius-banner div { display:flex; align-items:center; gap:1rem; }
.radius-banner strong { font:600 2.4rem/1 "Bodoni 72",Didot,Georgia,serif; white-space:nowrap; }
.radius-banner span { max-width:360px; font-size:.78rem; font-weight:700; line-height:1.35; letter-spacing:.04em; text-transform:uppercase; }
.radius-banner p { margin:0; font-size:.88rem; }
.radius-banner a { font-size:.8rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; white-space:nowrap; border-bottom:1px solid currentColor; }
.subpage-radius { display:grid; grid-template-columns:1fr auto; gap:.35rem 1.5rem; align-items:center; margin:0 0 2rem; padding:1rem 1.25rem; border-left:4px solid var(--gold); background:#f2ede2; }
.subpage-radius strong { font-size:.9rem; }
.subpage-radius span { grid-column:1; color:#5f5c55; font-size:.82rem; }
.subpage-radius a { grid-column:2; grid-row:1/3; color:#7e5c25; font-weight:800; font-size:.82rem; white-space:nowrap; }

.section { max-width: var(--max); margin: auto; padding: clamp(5rem,10vw,9rem) clamp(1.25rem,4vw,3rem); }
.section-label { color: #807c72; font-size: .68rem; letter-spacing: .18em; text-transform: uppercase; }
.section-label.light { color: rgba(255,255,255,.42); }
.intro { display: grid; grid-template-columns: .65fr 1.35fr; gap: 3rem; align-items: start; }
.intro-copy { max-width: 780px; }
h2 { font-size: clamp(2.6rem,5.2vw,5rem); }
.intro-copy > p:last-child, .quality-copy > p { max-width: 630px; color: #5f5c55; font-size: 1.08rem; margin: 2rem 0 0; }
.services { padding-top: 0; display: grid; grid-template-columns: repeat(2,1fr); gap: 1px; background: var(--line); }
.service-card { min-height: 310px; padding: clamp(1.6rem,4vw,3.5rem); background: var(--paper); display: flex; flex-direction: column; justify-content: space-between; transition: background .3s,color .3s; }
.service-card:hover, .service-card.featured { background: var(--ink); color: white; }
.service-number { color: var(--gold); font-family: Georgia, serif; font-style: italic; }
.service-card h3 { margin: 0 0 .8rem; font-family: "Bodoni 72",Didot,Georgia,serif; font-size: clamp(1.7rem,2.6vw,2.4rem); font-weight: 600; }
.service-card p { max-width: 480px; margin: 0; color: #68645d; }
.service-card:hover p, .service-card.featured p { color: rgba(255,255,255,.62); }
.service-link { display: inline-block; margin-top: 1.25rem; color: var(--gold); font-size: .84rem; font-weight: 700; letter-spacing: .04em; }
.service-area { display: grid; grid-template-columns: .65fr 1.35fr; gap: 3rem; align-items: start; }
.service-area p:last-child { max-width: 690px; color: #5f5c55; font-size: 1.08rem; margin-top: 2rem; }

.subscriptions { background: #292823; color: white; padding: clamp(5rem,9vw,8rem) max(clamp(1.25rem,7vw,7.5rem), calc((100vw - 1440px)/2)); }
.subscription-head { display: grid; grid-template-columns: 1.4fr .6fr; gap: 4rem; align-items: end; margin: 2rem 0 clamp(3rem,6vw,5.5rem); }
.subscription-head > p { max-width: 430px; color: rgba(255,255,255,.58); }
.pricing-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; align-items: stretch; }
.price-card { position: relative; padding: clamp(1.5rem,3vw,2.5rem); border: 1px solid rgba(255,255,255,.18); display: flex; flex-direction: column; min-height: 520px; }
.price-card.recommended { background: var(--paper); color: var(--ink); border-color: var(--paper); transform: translateY(-1rem); }
.recommendation { position: absolute; top: 0; right: 0; background: var(--gold); color: var(--ink); padding: .45rem .8rem; font-size: .62rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.plan-kicker { margin: 0 0 2rem; color: var(--gold); font-size: .75rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.price { padding-bottom: 1.8rem; border-bottom: 1px solid currentColor; display: flex; flex-direction: column; }
.price strong { font: 600 clamp(2.3rem,4vw,3.3rem)/1 "Bodoni 72",Didot,Georgia,serif; }
.price span { margin-top: .35rem; opacity: .56; font-size: .76rem; }
.price-card ul { list-style: none; padding: 1.3rem 0; margin: 0 0 auto; }
.price-card li { position: relative; padding: .58rem 0 .58rem 1.3rem; font-size: .85rem; border-bottom: 1px solid rgba(255,255,255,.08); }
.price-card.recommended li { border-color: rgba(17,17,15,.1); }
.price-card li::before { content: "✓"; position: absolute; left: 0; color: var(--gold); }
.plan-button { border: 1px solid rgba(255,255,255,.6); color: white; }
.plan-button:hover { background: white; color: var(--ink); }
.price-note { max-width: 1100px; margin: 2.4rem 0 0; color: rgba(255,255,255,.45); font-size: .74rem; }

.process { background: var(--ink); color: white; padding: clamp(5rem,9vw,8rem) max(clamp(1.25rem,7vw,7.5rem), calc((100vw - 1440px)/2)); }
.process-heading { display: grid; grid-template-columns: .55fr 1.45fr; margin: 2rem 0 clamp(4rem,8vw,7rem); }
.process-heading h2 { max-width: 890px; }
.steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid rgba(255,255,255,.2); }
.steps li { padding: 2rem 2rem 0 0; }
.steps span { color: var(--gold); font-family: Georgia,serif; font-style: italic; }
.steps h3 { margin: 1.5rem 0 .7rem; font-size: 1.05rem; text-transform: uppercase; letter-spacing: .08em; }
.steps p { margin: 0; color: rgba(255,255,255,.56); font-size: .9rem; }

.quality { position: relative; display: grid; grid-template-columns: .78fr 1.22fr; gap: 4rem; overflow: hidden; }
.quality-mark {
  align-self: center;
  justify-self: center;
  padding: .18em .08em .22em 0;
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(8rem,19vw,17rem);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -.085em;
  color: #090909;
  text-shadow: 0 1px 0 #55534e, 0 2px 0 #fdfbf5, 1px 3px 2px rgba(17,17,15,.12);
  user-select: none;
}
@supports (-webkit-background-clip: text) {
  .quality-mark {
    background: linear-gradient(155deg, #050505 18%, #252421 43%, #080808 59%, #141413 82%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none;
    filter: drop-shadow(0 1px 0 #5d5a53) drop-shadow(0 2px 0 #fffdf7);
  }
}
.quality-copy .section-label { margin-bottom: clamp(4rem,8vw,7rem); }
.checks { margin: 2.5rem 0 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.checks li { padding: 1rem 0; border-bottom: 1px solid var(--line); font-size: .92rem; }
.checks li::before { content: "—"; color: var(--gold); margin-right: 1rem; }
.reviews-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; margin: 2rem 0; }
.review-card { border: 1px solid var(--line); background: white; padding: clamp(1.4rem,3vw,2rem); }
.review-stars { color: #9b7740; letter-spacing: .14em; font-size: 1.05rem; }
.review-card blockquote { margin: 1.1rem 0; color: #4f4c46; }
.review-card footer { display: block; padding: 0; background: transparent; color: #77736b; font-size: .78rem; }
.myhammer-proof { display:grid; grid-template-columns:.65fr 1.35fr; gap:3rem; align-items:center; background:#11110f; color:white; max-width:none; width:100%; padding-left:max(clamp(1.25rem,7vw,7.5rem),calc((100vw - 1440px)/2)); padding-right:max(clamp(1.25rem,7vw,7.5rem),calc((100vw - 1440px)/2)); }
.myhammer-proof-score { display:flex; flex-direction:column; border-right:1px solid rgba(255,255,255,.2); }
.myhammer-proof-score strong { color:var(--gold); font:600 clamp(4.5rem,10vw,8rem)/.9 "Bodoni 72",Didot,Georgia,serif; }
.myhammer-proof-score span { color:rgba(255,255,255,.6); text-transform:uppercase; letter-spacing:.12em; font-size:.75rem; }
.myhammer-proof h2 { font-size:clamp(2.3rem,4.5vw,4.5rem); }
.myhammer-proof p:not(.eyebrow) { color:rgba(255,255,255,.65); max-width:650px; }
.referral { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.referral-layout { display: grid; grid-template-columns: 1.4fr .6fr; gap: 3rem; align-items: end; margin-top: 2rem; }
.referral-layout p:last-child { max-width: 700px; color: #5f5c55; }
.referral-actions { display: grid; gap: .75rem; }
.outline-button { border: 1px solid var(--ink); }

.contact { padding: clamp(5rem,9vw,9rem) max(clamp(1.25rem,7vw,7.5rem), calc((100vw - 1440px)/2)); background: #20201d; color: white; }
.contact h2 { max-width: 900px; }
.contact > p:not(.eyebrow) { max-width: 650px; color: rgba(255,255,255,.6); margin: 2rem 0 2.5rem; }
.contact-actions { display: flex; align-items: center; gap: clamp(1.5rem,5vw,5rem); flex-wrap: wrap; }
.contact-link { display: flex; flex-direction: column; font-family: "Bodoni 72",Didot,Georgia,serif; font-size: 1.45rem; }
.contact-link span { color: rgba(255,255,255,.42); font: 700 .65rem Manrope,sans-serif; letter-spacing: .15em; text-transform: uppercase; }
.contact small { display: block; margin-top: 2rem; color: rgba(255,255,255,.36); font-size: .7rem; }

footer { padding: 2.5rem clamp(1.25rem,4vw,4.5rem); display: grid; grid-template-columns: 1fr 1.5fr 1fr; gap: 2rem; align-items: center; background: white; font-size: .75rem; color: #77736b; }
.footer-brand { color: var(--ink); font-size: 1.5rem; font-weight: 800; letter-spacing: -.08em; }
.footer-brand span { display: block; margin-top: -.4rem; font-size: .45rem; letter-spacing: .12em; text-transform: uppercase; }
.footer-links { display: flex; justify-content: flex-end; gap: 1.3rem; color: var(--ink); }
.copyright { text-align: right; grid-column: 3; margin: 0; }

.subpage { min-height: 100vh; background: white; }
.subpage .site-header { border-bottom: 1px solid var(--line); }
.subpage-main { max-width: 980px; margin: auto; padding: clamp(4rem,8vw,7rem) clamp(1.25rem,4vw,3rem); }
.subpage-main > .eyebrow { color: #7e6c52; }
.subpage-main > h1 { color: var(--ink); font-size: clamp(3.1rem,7vw,6rem); }
.subpage-intro { max-width: 700px; color: #656159; margin: 1.5rem 0 3.5rem; }
.legal-section { margin: 3rem 0; padding-top: 2rem; border-top: 1px solid var(--line); }
.legal-section h2 { font-size: clamp(1.8rem,3vw,2.6rem); margin-bottom: 1rem; }
.legal-section h3 { margin: 1.6rem 0 .4rem; font-size: 1rem; text-transform: uppercase; letter-spacing: .08em; }
.legal-section p, .legal-section li { color: #55524c; }
.legal-section a { text-decoration: underline; text-underline-offset: 3px; }
.legal-note { padding: 1rem 1.2rem; background: #f2ede2; border-left: 3px solid var(--gold); font-size: .85rem; }

.booking-layout { display: grid; grid-template-columns: 1.2fr .8fr; gap: clamp(2rem,6vw,5rem); align-items: start; }
.booking-form { display: grid; gap: 1.3rem; }
.form-section { border: 0; border-top: 1px solid var(--line); padding: 2rem 0 0; margin: .5rem 0 0; }
.form-section legend { padding: 0 1rem 0 0; font: 600 1.7rem "Bodoni 72",Didot,Georgia,serif; }
.field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.field { display: grid; gap: .4rem; }
.field.full { grid-column: 1/-1; }
.field label, .choice-label { font-size: .76rem; font-weight: 700; letter-spacing: .04em; }
input, select, textarea { width: 100%; border: 1px solid #c9c5bc; background: white; padding: .85rem; border-radius: 0; color: var(--ink); font: inherit; }
input:focus, select:focus, textarea:focus { outline: 2px solid var(--gold); outline-offset: 2px; }
.check-row { display: grid; grid-template-columns: auto 1fr; gap: .7rem; align-items: start; font-size: .82rem; }
.check-row input { width: 18px; height: 18px; margin-top: .2rem; accent-color: var(--ink); }
.order-button { width: 100%; border: 0; background: var(--ink); color: white; cursor: pointer; }
.order-button:hover { background: #35342f; }
.order-summary { position: sticky; top: 2rem; background: var(--ink); color: white; padding: clamp(1.5rem,3vw,2.5rem); }
.order-summary h2 { font-size: 2.2rem; margin-bottom: 2rem; }
.summary-row { display: flex; justify-content: space-between; gap: 1rem; padding: .8rem 0; border-top: 1px solid rgba(255,255,255,.15); font-size: .86rem; }
.summary-row span:last-child { text-align: right; }
.summary-total { color: var(--gold); font-size: 1.08rem; font-weight: 700; }
.order-summary small { display: block; margin-top: 1.5rem; color: rgba(255,255,255,.5); }
.booking-form a { text-decoration: underline; text-underline-offset: 3px; }
.booking-success { display: none; padding: 1rem; border: 1px solid #58735d; background: #f0f7f1; color: #263b22; }
.booking-success.show { display: block; }

@media (max-width: 820px) {
  .site-header { height: 78px; }
  .brand { width: 95px; height: 65px; }
  .menu-button { display: block; }
  nav { position: absolute; left: 0; right: 0; top: 78px; padding: 1.5rem; background: white; border-top: 1px solid var(--line); flex-direction: column; align-items: stretch; transform: translateY(-130%); opacity: 0; transition: .25s; z-index: -1; }
  nav.open { transform: translateY(0); opacity: 1; }
  .nav-cta { text-align: center; }
  .hero { min-height: calc(100svh - 78px); padding-bottom: 12rem; }
  .hero-image { object-position: 67% center; }
  .hero-shade { background: linear-gradient(90deg,rgba(10,10,9,.88),rgba(10,10,9,.35)),linear-gradient(0deg,rgba(10,10,9,.7),transparent); }
  .hero-facts { grid-template-columns: 1fr; padding: 1rem 0; }
  .hero-facts div { padding: .25rem 0; }
  .hero-facts span { display: none; }
  .intro, .process-heading, .quality, .referral-layout, .myhammer-proof { grid-template-columns: 1fr; }
  .myhammer-proof-score { border-right:0; border-bottom:1px solid rgba(255,255,255,.2); padding-bottom:2rem; }
  .reviews-grid { grid-template-columns: 1fr; }
  .subscription-head, .pricing-grid, .booking-layout { grid-template-columns: 1fr; }
  .price-card.recommended { transform: none; }
  .order-summary { position: static; }
  .services { grid-template-columns: 1fr; }
  .radius-banner { grid-template-columns:1fr; }
  .radius-banner div { align-items:flex-start; }
  .radius-banner a { justify-self:start; }
  .subpage-radius { grid-template-columns:1fr; }
  .subpage-radius a,.subpage-radius span { grid-column:1; grid-row:auto; }
  .service-card { min-height: 250px; }
  .steps { grid-template-columns: 1fr 1fr; gap: 2rem; }
  .quality-mark { display: block; font-size: clamp(7rem,35vw,13rem); justify-self: start; padding-bottom: 0; }
  .quality-copy .section-label { margin-bottom: 4rem; }
  footer { grid-template-columns: 1fr; text-align: left; }
  .footer-links { justify-content: flex-start; flex-wrap: wrap; }
  .copyright { text-align: left; grid-column: 1; }
}

@media (max-width: 520px) {
  h1 { font-size: clamp(3.2rem,17vw,5rem); }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 1.2rem; }
  .steps { grid-template-columns: 1fr; }
  .field-grid { grid-template-columns: 1fr; }
  .field.full { grid-column: auto; }
  .steps li { border-top: 1px solid rgba(255,255,255,.12); padding-top: 1.4rem; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; }
}

/* Refined material, typography and direct personal contact. */
:focus-visible { outline: 2px solid #b59355; outline-offset: 5px; }
section[id] { scroll-margin-top: 2rem; }
.site-header { border-bottom: 1px solid #ddd7ca; }
nav { font-size: .875rem; }
.hero { border-bottom: 3px solid var(--gold); }
.hero h1 { line-height: 1.04; letter-spacing: -.045em; }
.hero-copy { line-height: 1.8; }
.personal-note { max-width: 470px; margin: 1.5rem 0 0; font-size: .875rem; line-height: 1.7; color: #dfd9cf; }
.button { font-size: .875rem; letter-spacing: .045em; }
.button-gold { color: #13120f; background: linear-gradient(115deg,#e2c998,#c3a16a); border: 1px solid #e6cea4; box-shadow: 0 6px 22px #0002; }
.button-gold:hover { background: #e7d0a7; }
.intro h2, .quality h2, .contact h2 { line-height: 1.09; }
.section-label { font-size: .8rem; letter-spacing: .12em; color: #69635a; }
.services { gap: 1.5rem; background: transparent; }
.service-card { border: 1px solid #dcd6ca; background: #fff; min-height: 330px; box-shadow: 0 12px 35px #18171305; }
.service-card.featured { background: linear-gradient(140deg,#272621,#10100e); border-color: #6a5c43; }
.service-number { font-size: 1.15rem; }
.service-card h3 { line-height: 1.2; }
.service-card p { font-size: 1rem; }
.subscriptions { background: #191917; }
.subscription-head h2 { line-height: 1.07; }
.pricing-grid { margin-top: 3rem; gap: 1.4rem; }
.price-card { border-color: #575248; background: #21211e; }
.price-card.recommended { background: #faf9f6; border: 1px solid #d2b780; box-shadow: 0 20px 55px #0003; }
.recommendation { font-size: .75rem; }
.plan-kicker, .price span, .price-card li { font-size: .875rem; }
.price-note { font-size: .875rem; color: #c4c0b7; line-height: 1.8; }
.process { border-top: 1px solid #4e4431; }
.steps p { color: #c3bfb6; }
.quality { padding-top: 8rem; padding-bottom: 8rem; }
.contact { background: linear-gradient(125deg,#111210,#292922); border-top: 1px solid #a98b55; }
.contact > p:not(.eyebrow) { font-size: 1.125rem; color: #d0ccc3; }
.contact-actions { gap: 1.5rem; }
.contact small { font-size: .875rem; color: #bcb7ab; }
.whatsapp-float { position: fixed; z-index: 30; right: 1.5rem; bottom: 1.5rem; display: inline-flex; align-items: center; gap: .65rem; padding: .85rem 1.15rem; border: 1px solid #c9a96e; border-radius: 3px; background: #151612; color: #fff6e4; box-shadow: 0 8px 30px #0003; font-size: .875rem; font-weight: 600; }
.whatsapp-float:hover { background: #343326; }
.contact-dock { position:fixed; z-index:35; right:1.5rem; bottom:1.5rem; display:flex; gap:0; overflow:hidden; border:1px solid #c9a96e; background:#151612; color:#fff6e4; box-shadow:0 10px 36px #0004; }
.contact-dock a::after { display:none!important; }
.dock-action { min-width:92px; min-height:58px; padding:.55rem .8rem; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.1rem; border-right:1px solid rgba(255,255,255,.16); transition:background .2s,color .2s; }
.dock-action:last-child { border-right:0; }
.dock-action span { color:#c9a96e; font-size:.8rem; font-weight:800; line-height:1; }
.dock-action strong { font-size:.72rem; letter-spacing:.04em; }
.dock-action:hover,.dock-action:focus-visible { background:#343326; color:#fff; }
.dock-whatsapp { background:#25251f; }
.chat-symbol { color: #e1c590; font-size: 1.25rem; }
footer { padding-bottom: 6.5rem; }
.footer-links { flex-wrap: wrap; font-size: .875rem; }
@media (max-width: 820px) {
  .quality { padding-top: 5rem; padding-bottom: 5rem; }
  .price-card { min-height: auto; gap: 1rem; }
  .price-card.recommended { padding-top: 3rem; }
  .whatsapp-float { right: 1rem; bottom: max(1rem,env(safe-area-inset-bottom)); }
  body { padding-bottom:calc(66px + env(safe-area-inset-bottom)); }
  .contact-dock { left:0; right:0; bottom:0; width:100%; border-width:1px 0 0; padding-bottom:env(safe-area-inset-bottom); }
  .dock-action { flex:1; min-width:0; min-height:64px; }
  .hero-content { min-width: 0; }
}
@media (max-width: 520px) {
  .hero { padding-top: 3.5rem; }
  .hero h1 { font-size: clamp(2.8rem,14vw,4.5rem); }
  .hero-actions .button, .contact-actions .button { width: 100%; text-align: center; }
  .contact-actions { align-items: stretch; flex-direction: column; }
  .whatsapp-float { padding: .7rem 1rem; }
  .dock-action strong { font-size:.7rem; }
}

@media(min-width:821px){.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.price-card.recommended{transform:none;}}
@media(max-width:820px){.service-area{grid-template-columns:1fr;gap:1.25rem}.service-area h2{font-size:clamp(2.5rem,12vw,4rem)}}
dialog{border:1px solid #c9a96e;max-width:min(560px,calc(100% - 2rem));max-height:90vh;padding:2rem;background:#faf9f6;color:#171815}dialog::backdrop{background:#0009}dialog h2{font-size:2rem;line-height:1.15}dialog label{display:block;margin:1rem 0;font-size:1rem}dialog p{font-size:.875rem}dialog button{cursor:pointer;margin:.5rem .4rem .5rem 0}dialog a{text-decoration:underline}button:disabled{opacity:.55;cursor:wait}.hp-field{display:none!important}
.form-divider{grid-column:1/-1;margin:1.5rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line);font:600 1.35rem/1.2 "Bodoni 72",Didot,Georgia,serif}.upload-note{font-size:.875rem;color:#68645d}
.checklist label{display:block;padding:.8rem 0;border-bottom:1px solid var(--line);font-size:1.05rem}.checklist input{width:1.25rem;height:1.25rem;margin-right:.75rem;vertical-align:middle}@media print{.site-header button,.whatsapp-float,.contact-dock,footer{display:none!important}.tool-main{padding:1cm}.tool-panel{break-inside:avoid}.subpage{background:#fff}}
.reference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:2.5rem 0}.reference-grid article{background:#fff;border:1px solid #d8d0c0}.reference-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}.reference-grid article>div,.reference-grid h3{padding:1.25rem}.reference-grid h2,.reference-grid h3{font-size:1.5rem;line-height:1.15;margin:0}.reference-grid p{color:#5f5c55}@media(max-width:760px){.reference-grid{grid-template-columns:1fr}}
