*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--color-bg);color:var(--color-text);font:400 14px/var(--line-height-body) var(--font-body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}a,button{transition:background var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-normal),transform var(--transition-normal)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,.display{font-family:var(--font-display);font-weight:500;line-height:1.05}h2{font-size:clamp(2.4rem,4vw,3.5rem)}p+p{margin-top:16px}button svg,a svg{width:18px;height:18px;flex-shrink:0}svg{vertical-align:middle} [hidden]{display:none!important}.container{max-width:var(--container-max);margin:auto;padding-inline:var(--space-4)}.section{padding-block:var(--space-10)}.eyebrow{text-transform:uppercase;font-size:10px;font-weight:600;letter-spacing:.2em;color:var(--color-action);display:flex;align-items:center;gap:12px;margin-bottom:20px}.eyebrow:before{content:'';height:1px;width:28px;background:var(--color-secondary)}.muted{color:var(--color-text-muted)}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:12px;font-weight:600;border-bottom:1px solid var(--color-secondary);padding-bottom:6px}.text-link:hover{color:var(--color-action)}.button{display:inline-flex;min-height:var(--button-height);padding:12px 24px;align-items:center;justify-content:center;gap:12px;border:1px solid transparent;border-radius:var(--radius-full);font-size:12px;font-weight:600;white-space:nowrap;background:var(--color-action);color:var(--color-text-inverse)}.button:hover{background:var(--color-action-hover);transform:translateY(-1px)}.button-outline{background:transparent;border-color:var(--color-border);color:var(--color-text)}.button-outline:hover{background:var(--color-surface-rose)}.button-dark{background:var(--color-text);color:var(--color-text-inverse)}.icon-button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--color-border);border-radius:50%;background:var(--color-bg);color:var(--color-text)}.skip{position:fixed;left:16px;top:-100px;z-index:100;padding:12px;background:white}.skip:focus{top:16px}.announcement{background:var(--color-text);color:#EFE0D0;text-align:center;padding:8px 16px;font-size:10px;letter-spacing:.13em}.announcement span{color:var(--color-primary);margin-inline:12px}.site-header{border-bottom:1px solid var(--color-border);background:rgb(252 248 244 / 96%);position:relative;z-index:10}.header-inner{height:96px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{white-space:nowrap}.brand-p{color:var(--color-action);font-family:var(--font-display);font-weight:600;font-style:italic;text-transform:none;display:inline-block}.brand i{color:var(--color-action);font-style:normal}.brand small{display:block;font:500 8px/1.5 var(--font-body);letter-spacing:.24em;margin-top:9px}.header-nav{display:flex;gap:32px;align-items:center;font-size:12px}.header-nav a[aria-current=page]{color:var(--color-action)}.header-actions{display:flex;align-items:center;gap:20px}.adult-label{font-size:10px;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:50%;width:34px;height:34px;display:grid;place-items:center}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:64px;align-items:center;padding-top:64px;padding-bottom:56px;min-height:650px}.hero h1{font-size:var(--font-size-display);letter-spacing:-.045em}.hero h1 em{color:var(--color-action);font-weight:400}.hero-copy>p{max-width:370px;color:var(--color-text-muted);font-size:15px;margin-top:24px}.search-form{margin-top:32px;padding:8px 8px 8px 20px;display:flex;align-items:center;gap:12px;background:white;border:1px solid var(--color-border);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);max-width:510px}.search-form label{display:block;font-size:9px;letter-spacing:.15em;text-transform:uppercase}.search-form .field{flex:1;min-width:0}.search-form input{width:100%;border:0;outline-offset:0;background:transparent;padding:2px 0;color:var(--color-text);font-size:13px;min-height:26px}.hero-footnote{display:flex;gap:24px;margin-top:24px;color:var(--color-text-muted);font-size:10px}.hero-footnote span:before{content:'✧';color:var(--color-action);margin-right:8px}.hero-art{height:520px;position:relative;isolation:isolate;background:#E9CDC0;border-radius:230px 230px 12px 12px;overflow:hidden;box-shadow:inset 0 0 0 12px #F3E2D8}.hero-art:before{content:'';position:absolute;inset:30px;border:1px solid #C49471;border-radius:210px 210px 0 0;z-index:2;pointer-events:none}.hero-art:after{content:'';position:absolute;left:-15%;bottom:-60%;width:130%;height:95%;background:#B5684F;border-radius:50%;transform:rotate(-18deg)}.art-halo{position:absolute;left:20%;top:16%;width:60%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 38% 28%,#FBF4DD,#E9C690 70%,#D5AA6F);box-shadow:0 24px 80px #A9775533}.art-arch{position:absolute;left:32%;top:26%;height:66%;width:37%;border-radius:150px 150px 0 0;background:linear-gradient(120deg,#F8E7DA,#C28972);box-shadow:20px 20px 45px #80472B22;transform:rotate(13deg)}.art-orbit{position:absolute;left:12%;top:15%;width:72%;height:70%;border:1px solid #9C6F47;border-radius:50%;transform:rotate(33deg)}.art-word{position:absolute;top:28%;left:15%;z-index:3;font:italic 400 110px/.9 var(--font-display);color:#5D392F;letter-spacing:-6px}.art-word span{display:block;margin-left:35px}.art-caption{position:absolute;left:48px;right:48px;bottom:38px;z-index:3;color:#FFFAF5;display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:.23em}.art-caption strong{font:italic 400 30px var(--font-display);letter-spacing:0}.hero-art .art-star{position:absolute;right:50px;top:45px;font:50px var(--font-display);color:#94692E}.principles{border-block:1px solid var(--color-border);display:flex;justify-content:space-between;gap:24px;padding-block:24px;color:var(--color-text-muted);font-size:11px}.principles span{display:flex;align-items:center;gap:12px}.principles b{font:italic 28px var(--font-display);font-weight:400;color:var(--color-action)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:32px}.section-head .eyebrow{margin-bottom:12px}.section-head p{margin-top:12px;font-size:13px;color:var(--color-text-muted)}.city-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.city-tile{position:relative;min-height:228px;border-radius:var(--radius-md);overflow:hidden;padding:24px;display:flex;flex-direction:column;justify-content:space-between;background:#EBCFC4}.city-tile:nth-child(2){background:#E5DEC9}.city-tile:nth-child(3){background:#D8DFD3}.city-tile:nth-child(4){background:#E7D4C4}.city-tile:before,.city-tile:after{content:'';position:absolute;border:1px solid #7D655833;border-radius:100px 100px 0 0;width:110px;height:200px;right:20px;top:30px;transform:rotate(15deg)}.city-tile:after{right:45px;top:55px}.city-tile:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.city-tile>*{position:relative;z-index:1}.city-tile .tile-state{font-size:9px;letter-spacing:.18em;text-transform:uppercase}.city-tile h3{font:500 35px var(--font-display)}.city-tile small{font-size:10px}.tile-arrow{position:absolute;right:24px;bottom:25px;font-size:22px}.tinted-section{background:var(--color-surface-soft);border-block:1px solid var(--color-border)}.ad-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.ad-card{min-width:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;position:relative;box-shadow:var(--shadow-sm);transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.ad-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.ad-card.is-member{border-color:#D4AF3780}.card-photo{position:relative;display:block;background:#EEDDD1;aspect-ratio:4/3;overflow:hidden}.card-photo img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal)}.ad-card:hover .card-photo img{transform:scale(1.035)}.photo-count{position:absolute;bottom:12px;right:12px;background:#332824cf;color:white;border-radius:20px;padding:4px 9px;font-size:9px}.badge-stack{position:absolute;left:12px;top:12px;display:flex;flex-wrap:wrap;gap:6px;right:12px;pointer-events:none}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:4px;padding:4px 8px;font-size:9px;font-weight:600;letter-spacing:.04em;background:var(--color-member-bg);color:var(--color-member-text);border:1px solid #D4AF3766}.badge-featured{background:#FFF9F5;color:var(--color-action);border-color:#E1B4A3}.card-content{padding:20px}.card-location{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-action);margin-bottom:10px}.ad-title{font:500 14px/1.65 var(--font-body);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;min-height:46px}.card-address{font-size:11px;color:var(--color-text-muted);margin-top:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding-top:14px;border-top:1px solid var(--color-border);gap:8px}.card-bottom time{font-size:9px;color:var(--color-text-muted)}.card-bottom a{font-size:10px;font-weight:600;color:var(--color-action);padding-block:4px}.state-search{max-width:280px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--color-text-muted);padding:10px 0}.state-search input{min-width:0;width:100%;background:transparent;border:0;color:var(--color-text);padding:4px}.state-grid{display:grid;grid-template-columns:repeat(5,1fr);column-gap:32px}.state-link{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--color-border);min-height:48px;font-size:11px;gap:10px}.state-link span:last-child{color:var(--color-action)}.state-link:hover{color:var(--color-action);background:var(--color-surface-rose)}.owner-banner{background:var(--color-surface-rose);padding:48px 56px;border:1px solid #E7C6BB;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:80px}.owner-banner h2{font-size:42px}.owner-banner p{margin-top:12px;color:var(--color-text-muted);font-size:12px}.footer{background:var(--color-text);color:#F1E5DA;padding:48px 0 24px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:32px}.footer .brand i{color:var(--color-primary)}.footer p{font-size:11px;color:#C6B5AC;max-width:350px}.footer-bottom{border-top:1px solid #655046;display:flex;justify-content:space-between;gap:16px;margin-top:32px;padding-top:24px;font-size:9px;color:#C6B5AC}.breadcrumb{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:10px;color:var(--color-text-muted);padding-block:24px}.breadcrumb a:hover{color:var(--color-action)}.listing-intro{padding-bottom:40px;border-bottom:1px solid var(--color-border)}.listing-intro .intro-line{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.listing-intro h1{font-size:clamp(3.5rem,6vw,5.5rem);letter-spacing:-.025em}.listing-intro h1 em{font-weight:400;color:var(--color-action)}.listing-intro p{margin-top:16px;color:var(--color-text-muted);font-size:13px}.location-stamp{width:106px;height:106px;border:1px solid var(--color-secondary);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--color-action);transform:rotate(9deg);flex-shrink:0}.location-stamp b{font:italic 40px var(--font-display)}.location-stamp small{font-size:8px;letter-spacing:.18em}.filter-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-block:32px 24px}.filter-tabs{display:flex;gap:8px;flex-wrap:wrap}.filter-tab{border:1px solid var(--color-border);border-radius:var(--radius-full);padding:10px 18px;min-height:44px;background:transparent;color:var(--color-text-muted);font-size:11px}.filter-tab[aria-pressed=true]{background:var(--color-text);color:var(--color-text-inverse);border-color:var(--color-text)}.filter-tab:hover{border-color:var(--color-secondary)}.sort{font-size:11px;display:flex;gap:8px;align-items:center}.sort select{background:transparent;border:1px solid var(--color-border);padding:10px;border-radius:8px;color:var(--color-text);min-height:44px}.result-line{display:flex;justify-content:space-between;margin-bottom:20px;color:var(--color-text-muted);font-size:10px}.pagination{display:flex;justify-content:center;gap:8px;align-items:center;margin-block:40px 64px}.pagination button{width:44px;height:44px;border:1px solid var(--color-border);background:white;border-radius:50%;color:var(--color-text);font-size:12px}.pagination button[aria-current=page]{background:var(--color-action);color:white;border-color:var(--color-action)}.empty-state{text-align:center;padding:64px 24px;border:1px dashed var(--color-border);border-radius:24px;grid-column:1/-1;background:white}.empty-state h2{font-size:36px;margin-bottom:16px}.empty-state p{color:var(--color-text-muted);max-width:420px;margin:0 auto 24px}.detail-heading{display:flex;gap:32px;align-items:flex-start;justify-content:space-between;margin:8px 0 32px}.detail-heading h1{font-family:var(--font-body);font-size:clamp(1.2rem,2.1vw,1.9rem);font-weight:500;line-height:1.6;max-width:960px;overflow-wrap:anywhere}.detail-heading .eyebrow{margin-bottom:12px}.detail-meta{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:16px;font-size:11px;color:var(--color-text-muted)}.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:220px 220px;gap:12px;position:relative}.gallery-item{border:0;padding:0;background:#EADACD;overflow:hidden;border-radius:var(--radius-sm);position:relative;cursor:zoom-in}.gallery-item:first-child{grid-row:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover}.gallery-item:last-child{position:absolute;width:calc((100% - 24px)/4);height:48px;right:12px;bottom:12px;z-index:1;background:var(--color-bg);border-radius:var(--radius-full);border:1px solid var(--color-border);cursor:pointer}.gallery-item:last-child img{display:none}.gallery-item:last-child:after{content:'View all photos · 6';font-size:11px;color:var(--color-text)}.gallery-credit{font-size:9px;color:var(--color-text-muted);margin-top:12px;text-align:right}.detail-body{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:80px;align-items:start;margin-block:48px 80px}.detail-story h2{font-size:38px;margin-bottom:24px}.description{font-size:14px;line-height:1.95;overflow-wrap:anywhere}.description p+p{margin-top:12px}.detail-facts{margin:32px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:24px;border-top:1px solid var(--color-border);padding-top:24px}.detail-facts dt{font-size:10px;color:var(--color-text-muted);margin-bottom:8px}.detail-facts dd{margin:0;font-size:12px}.contact-card{position:sticky;top:24px;border:1px solid #D4AF3770;background:#FFFDF8;padding:32px;border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.contact-card h2{font-size:34px;margin:20px 0 16px}.contact-card p{font-size:12px;color:var(--color-text-muted);margin-bottom:24px;overflow-wrap:anywhere}.contact-card .button{width:100%;margin-top:12px}.contact-card .phone-number{font:500 25px/1 var(--font-display);letter-spacing:-.03em;display:block;margin:24px 0 0;background:transparent;color:inherit;border:0;text-align:left;padding:0;cursor:pointer;width:100%}.contact-card .phone-number:hover{color:var(--color-action)}.contact-card small{display:block;text-align:center;font-size:9px;color:var(--color-text-muted);margin-top:20px}.mobile-contact{display:none}.lightbox{border:1px solid var(--color-border);background:var(--color-bg);padding:20px;border-radius:20px;max-width:min(920px,94vw);max-height:94vh;width:920px;color:var(--color-text)}dialog::backdrop{background:#211714d9;backdrop-filter:blur(5px)}.lightbox-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;font-size:12px}.lightbox figure{margin:0}.lightbox img{height:65vh;max-height:650px;width:100%;object-fit:contain;background:var(--color-surface-soft)}.lightbox-controls{display:flex;gap:16px;align-items:center;justify-content:center;margin-top:16px}.lightbox figcaption{text-align:center;font-size:10px;margin-top:12px;color:var(--color-text-muted)}.owner-dialog{padding:40px;border:1px solid var(--color-border);border-radius:20px;background:var(--color-bg);color:var(--color-text);width:480px;max-width:90vw}.owner-dialog h2{font-size:36px;margin-bottom:20px}.owner-dialog p{font-size:13px;color:var(--color-text-muted);margin-bottom:24px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:12px 24px;border-radius:40px;background:var(--color-text);color:white;z-index:60;font-size:12px;box-shadow:var(--shadow-lg);text-align:center;max-width:90vw}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.noscript{padding:16px;background:var(--color-member-bg);color:var(--color-member-text);font-size:12px}.state-hint{font-size:11px;color:var(--color-text-muted);margin-top:24px}
@media(min-width:1600px){.container{padding-inline:0}}
@media(max-width:1050px){.hero{gap:32px;min-height:580px}.hero-art{height:450px}.art-word{font-size:90px}.header-nav{gap:20px}.ad-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-recent .ad-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-body{gap:40px;grid-template-columns:minmax(0,1fr) 310px}.state-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){.container{padding-inline:24px}.header-inner{height:80px;gap:16px}.header-nav{display:none}.header-actions{gap:12px}.header-actions .button{padding:10px 16px;min-height:44px;font-size:10px}.brand small{font-size:7px}.adult-label{display:none}.announcement{font-size:8px}.hero{grid-template-columns:1fr;gap:40px;padding-top:40px;padding-bottom:40px}.hero h1{font-size:4.8rem}.hero-copy>p{max-width:430px}.hero-art{height:360px;max-width:440px;width:100%;margin:auto;border-radius:190px 190px 12px 12px}.art-word{font-size:88px;top:24%}.art-caption{bottom:30px}.hero-footnote{gap:16px}.principles{flex-wrap:wrap;gap:12px;font-size:9px}.principles b{font-size:23px}.section{padding-block:48px}.city-tiles{grid-template-columns:repeat(2,1fr)}.city-tile{min-height:190px;padding:20px}.city-tile h3{font-size:31px}.section-head{align-items:flex-start}.section-head .text-link{font-size:10px;white-space:nowrap}.ad-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.state-grid{grid-template-columns:repeat(3,1fr);column-gap:20px}.directory-head{flex-direction:column}.state-search{max-width:none;width:100%}.owner-banner{padding:32px;flex-direction:column;align-items:flex-start;margin-bottom:48px}.owner-banner h2{font-size:35px}.footer-top{align-items:flex-start;flex-direction:column}.footer-bottom{flex-direction:column}.filter-toolbar{align-items:flex-start;flex-direction:column;gap:16px}.filter-tabs{gap:6px}.filter-tab{padding:8px 14px;font-size:10px}.location-stamp{width:82px;height:82px}.location-stamp b{font-size:32px}.location-stamp small{font-size:6px}.listing-intro h1{font-size:3.9rem}.detail-heading{gap:12px}.detail-heading h1{font-size:20px}.gallery{grid-template-rows:160px 130px;grid-template-columns:1fr 1fr 1fr;gap:8px}.gallery-item:first-child{grid-column:span 2;grid-row:span 2}.gallery-item:nth-child(4),.gallery-item:nth-child(5){display:none}.gallery-item:last-child{width:160px;bottom:12px;right:12px}.detail-body{grid-template-columns:1fr;gap:32px;margin-block:32px 48px}.contact-card{position:static}.mobile-contact{display:flex;position:fixed;z-index:20;bottom:0;left:0;right:0;justify-content:space-between;align-items:center;gap:16px;padding:12px 24px calc(12px + env(safe-area-inset-bottom));background:var(--color-bg);border-top:1px solid var(--color-border);box-shadow:var(--shadow-lg)}.mobile-contact small{display:block;color:var(--color-text-muted);font-size:9px}.mobile-contact a{min-height:44px;padding:8px 20px}.page-detail{padding-bottom:88px}.page-detail .toast{bottom:96px}}
@media(max-width:430px){.container{padding-inline:20px}.hero h1{font-size:4.2rem}.search-form{gap:8px;padding-left:16px}.search-form>.search-icon{display:none}.search-form .button{padding:12px 18px}.ad-grid,.home-recent .ad-grid{grid-template-columns:1fr}.card-photo{aspect-ratio:1.45}.ad-title{font-size:15px;min-height:0}.state-grid{grid-template-columns:repeat(2,1fr)}.section-head{gap:16px}.section-head h2{font-size:36px}.city-tile{min-height:175px;padding:16px}.city-tile h3{font-size:29px}.tile-arrow{right:16px;bottom:16px}.listing-intro h1{font-size:3.4rem}.detail-facts{grid-template-columns:1fr}.location-stamp{display:none}.result-line{gap:12px}.hero-footnote{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Style C refinements: readable utility text, robust galleries and target sizes. */
.header-nav,.button,.sort,.filter-tab,.state-link{font-size:12px}
.card-location,.card-bottom time,.badge,.photo-count,.detail-meta,.breadcrumb,.gallery-credit{font-size:11px}
.card-bottom a{font-size:12px;min-height:44px;display:inline-flex;align-items:center}
.state-hint,.contact-card small,.footer p,.footer-bottom{font-size:11px}
.hero h1{font-size:clamp(3.5rem,5.8vw,5.6rem)}
.gallery-item:last-child:after{content:attr(data-gallery-label)}
.gallery:not(:has(.gallery-item:nth-child(6))) .gallery-item:last-child{position:relative;width:auto;height:auto;right:auto;bottom:auto;border-radius:var(--radius-sm);border:0}
.gallery:not(:has(.gallery-item:nth-child(6))) .gallery-item:last-child img{display:block}
.gallery:not(:has(.gallery-item:nth-child(6))) .gallery-item:last-child:after{content:none}
.ad-card.is-member:hover{box-shadow:0 12px 32px rgb(114 89 30 / 12%)}
.empty-state .eyebrow{justify-content:center}
@media(max-width:760px){.hero h1{font-size:clamp(3rem,10vw,4.8rem)}.art-word{font-size:clamp(65px,18vw,88px)}.header-actions .button{font-size:10px}.gallery:not(:has(.gallery-item:nth-child(6))) .gallery-item:last-child{display:block}.hero-footnote{flex-wrap:wrap}.mobile-contact .button{min-width:108px}}


/* Directory thumbnails and city filtering additions. */
.state-thumb-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.state-thumb{min-height:148px;padding:24px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;background:var(--color-surface-rose);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:transform var(--transition-normal),box-shadow var(--transition-normal),background var(--transition-normal)}
.state-thumb:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);background:var(--color-action);color:var(--color-text-inverse)}
.state-thumb-name{font:500 clamp(1.5rem,2.5vw,2.1rem)/1.1 var(--font-display)}
.state-thumb-count{font-size:11px;color:var(--color-text-muted)}
.state-thumb.state-link .state-thumb-count{color:var(--color-text-muted)}
.state-thumb:hover .state-thumb-count{color:inherit;opacity:.85}
.city-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:20px;align-items:start}
.filter-sidebar{position:sticky;top:24px;padding:20px;background:var(--color-surface-rose);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}
.filter-reset{display:block;padding:10px 0 16px;color:var(--color-action);font-size:12px;font-weight:600;border-bottom:1px solid var(--color-border)}
.filter-section{border-bottom:1px solid var(--color-border);padding:14px 0}
.filter-section summary{cursor:pointer;list-style:none;font-size:12px;font-weight:600;color:var(--color-text)}
.filter-section summary::-webkit-details-marker{display:none}
.filter-section summary:after{content:'+';float:right;color:var(--color-action);font-size:16px;line-height:1}
.filter-section[open] summary:after{content:'−'}
.filter-section ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:7px}
.filter-section ul a{display:flex;justify-content:space-between;color:var(--color-text-muted);font-size:11px;padding:2px 0}
.filter-section ul a:hover{color:var(--color-action)}
@media(max-width:1050px){.state-thumb-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.state-thumb-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.state-thumb{min-height:124px;padding:18px 12px}.city-layout{grid-template-columns:1fr;gap:28px}.filter-sidebar{position:static}.city-results{min-width:0}}
@media(max-width:430px){.state-thumb-grid{grid-template-columns:1fr}}

/* 2026 pink + champagne system refresh */
body{background:var(--color-bg);color:#352c29}
.container{width:min(100%,1344px)}
.site-header{position:sticky;top:0;background:#fffbfbe8;border-bottom:0;backdrop-filter:blur(18px);z-index:40}
.header-inner{height:96px}.brand i{color:#b65d63}.brand small{color:#725f60}.header-nav a:hover,.header-login:hover{color:var(--color-action)}
.button{border-radius:7px;background:var(--color-action);border-color:var(--color-action);box-shadow:0 8px 20px #91484e13}.button:hover{background:var(--color-action-hover);border-color:var(--color-action-hover)}.button-outline{background:#fffafa;border-color:#dfc7c8;color:var(--color-text);box-shadow:none}.button-outline:hover{background:#fbecec;border-color:#d8aeb1}
.eyebrow{color:#896439}.eyebrow:before{background:var(--color-accent)}
.text-link{border-bottom-color:var(--color-accent)}
.breadcrumb{font-size:11px;color:#826e70}.breadcrumb span{color:#c4a2a5}
.footer{background:#302728;color:#f7e8e9}.footer p,.footer-bottom{color:#d7c3c4}.footer-bottom{border-top-color:#5b494b}.footer-legal{display:flex;gap:18px;flex-wrap:wrap}.footer-legal a:hover{color:#e8c7a0}
.ad-card{background:#fffafa;border-color:#ead4d5;border-radius:10px;box-shadow:0 4px 18px #91484e0d}.ad-card:hover{box-shadow:0 16px 34px #91484e1a}.ad-card.is-member{border-top:3px solid var(--color-accent)}.card-photo{background:#f1d9da}.badge{background:#fff5df;border-color:#d8bd8d;color:#805c34}.badge-featured{background:#f9e4e5;border-color:#ddb6b9;color:#91484e}.card-location{color:#a55258}.card-bottom{border-top-color:#eedddd}.card-bottom a{color:#91484e}
.empty-state{background:linear-gradient(145deg,#fffafa,#fbecec);border-color:#d8b8ba;border-radius:14px}.empty-symbol{display:block;color:var(--color-accent);font-size:34px;margin-bottom:14px}

.city-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#f8e6e6,#efd0d2);border-bottom:1px solid #dfbfc1;padding-top:64px;margin-top:12px}.city-hero:after{content:'';position:absolute;width:520px;height:520px;border:1px solid #b48a5260;border-radius:50%;right:-250px;top:-330px;box-shadow:0 0 0 75px #fff6e51f;pointer-events:none}.city-hero .breadcrumb{padding-top:24px}.city-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:48px;padding:64px 0 56px}.city-hero h1{font-size:clamp(52px,7vw,88px);letter-spacing:-3px;max-width:950px}.city-hero h1 em{display:block;color:var(--color-action);font-weight:500}.city-hero p{margin-top:18px;color:var(--color-text-muted)}.city-hero .location-stamp{border-color:var(--color-accent);color:#805c34;background:#fff8ee55}
.city-content{padding-block:38px 72px}.city-filter-card{display:grid;grid-template-columns:1.1fr 1.1fr 1fr 1fr auto auto;align-items:end;gap:14px;padding:22px;background:#fffafa;border:1px solid #e4c6c8;border-top:3px solid var(--color-accent);border-radius:12px;box-shadow:var(--shadow-sm);margin-bottom:26px}.city-filter-card label{font-size:10px;font-weight:600;letter-spacing:.04em;color:#735e60}.city-filter-card label>span{display:block;margin-bottom:7px}.city-filter-card input,.city-filter-card select{width:100%;min-height:46px;border:1px solid #dfc7c8;border-radius:6px;background:#fff;padding:10px 12px;color:var(--color-text)}.city-filter-card input:focus,.city-filter-card select:focus{outline:0;border-color:var(--color-action);box-shadow:0 0 0 4px #e8a4aa24}.filter-clear{min-height:46px;display:flex;align-items:center;font-size:11px;color:var(--color-text-muted)}.city-content .result-line{padding:8px 0 16px;border-bottom:1px solid #ead5d6;margin-bottom:22px}.city-content .pagination a{min-width:110px}.city-content .pagination>span{font-size:11px;color:var(--color-text-muted)}

.detail-page{padding-bottom:80px}.detail-heading{margin:12px 0 34px}.detail-heading h1{font-family:var(--font-display);font-size:clamp(38px,5vw,64px);line-height:1.05;letter-spacing:-1.5px;max-width:1000px}.detail-meta{margin-top:20px}.listing-carousel{padding:12px;background:#fffafa;border:1px solid #e5c9cb;border-radius:14px;box-shadow:var(--shadow-md)}.listing-carousel .carousel-slides{position:relative;height:clamp(300px,55vw,600px);background:linear-gradient(145deg,#f7e6e6,#fff7ee);border-radius:9px;overflow:hidden}.listing-carousel .gallery-item{position:static;width:100%;height:100%;border:0;border-radius:0;display:block;background:transparent}.listing-carousel .gallery-item img{display:block;width:100%;height:100%;object-fit:contain}.listing-carousel .gallery-item:after{content:none}.carousel-controls{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:12px}.carousel-dots{display:flex;flex-wrap:wrap;justify-content:center}.carousel-dot{border:0;background:transparent;color:#cbaeb0;width:40px;height:40px}.carousel-dot[aria-pressed=true]{color:var(--color-action);background:#f7e1e2;border-radius:50%}.icon-button{border-color:#dfc4c6;background:#fffafa;color:#91484e}.detail-body{grid-template-columns:minmax(0,1fr) 370px;gap:70px}.detail-story{padding:16px 0}.detail-story h2{font-size:46px;color:#4d3b3c}.description{color:#5f4e4f}.detail-facts{border-top-color:#e7d0d1}.contact-card{border-color:#d8bd8d;background:linear-gradient(145deg,#fffdf9,#fff4f4);border-top:4px solid var(--color-accent);border-radius:12px}.contact-mark{color:var(--color-accent);font-size:28px}.contact-card .phone-number{color:#91484e}.related-listings{border-top:1px solid #e7d0d1;padding-top:48px;margin-top:28px}.related-listings .ad-grid{grid-template-columns:repeat(4,minmax(0,1fr))}

.legal-document{max-width:820px;margin:0 auto;padding:72px 0 96px}.legal-document:before{content:'✦';display:block;color:var(--color-accent);font-size:32px;margin-bottom:18px}.legal-document h1{font-size:clamp(54px,7vw,84px);letter-spacing:-2.5px;margin-bottom:10px}.legal-updated{color:#896439;text-transform:uppercase;font-size:10px;letter-spacing:.15em;margin-bottom:42px}.legal-document h2{font-size:32px;margin:42px 0 16px;color:#6c3d42}.legal-document p,.legal-document li{font-size:14px;line-height:1.9;color:#655355}.legal-document ul{padding-left:22px}.legal-document li+li{margin-top:8px}.error-state{max-width:760px;margin:80px auto;padding:64px;border:1px solid #e2c4c6;border-top:4px solid var(--color-accent);border-radius:16px;background:linear-gradient(145deg,#fffafa,#f7e1e2);text-align:center}.error-state h1{font-size:clamp(44px,6vw,70px)}.error-state p{color:var(--color-text-muted);margin-top:18px}.error-state .button{margin-top:12px}

@media(max-width:1100px){.city-filter-card{grid-template-columns:repeat(2,minmax(0,1fr))}.city-filter-card .button,.filter-clear{justify-self:start}.related-listings .ad-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.site-header{position:relative}.header-login{display:none}.header-cta{padding:10px 13px!important}.city-hero-grid{grid-template-columns:1fr;padding:32px 0 42px}.city-hero .location-stamp{display:none}.city-hero h1{font-size:clamp(46px,12vw,68px)}.city-filter-card{grid-template-columns:1fr 1fr;padding:18px}.city-filter-card .button{width:100%}.detail-page{padding-bottom:48px}.detail-heading h1{font-size:42px}.listing-carousel .carousel-slides{height:clamp(280px,80vw,480px)}.detail-body{grid-template-columns:1fr;gap:28px}.related-listings .ad-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.legal-document{padding:52px 0 70px}.error-state{margin:48px auto;padding:42px 24px}}
@media(max-width:430px){.city-filter-card{grid-template-columns:1fr}.city-ad-grid,.related-listings .ad-grid{grid-template-columns:1fr}.carousel-controls{gap:4px}.carousel-dot{width:32px}.detail-heading h1{font-size:36px}.legal-document h1{font-size:48px}}

/* Unified readable type scale. Decorative text may be smaller only when redundant. */
body{font-size:16px;line-height:1.65}
h1,h2,h3{text-wrap:balance;overflow-wrap:anywhere}p,li{text-wrap:pretty}
h2{font-size:clamp(2rem,3.2vw,3rem);line-height:1.08}
.brand small{font-size:10px;line-height:1.45}
.header-nav,.header-login{font-size:14px}
.button,.header-actions .button{font-size:14px}
.eyebrow{font-size:12px;line-height:1.4}
.text-link{font-size:13px}
.announcement{font-size:12px}
.hero-copy>p{font-size:16px;line-height:1.75;max-width:520px}
.search-form label{font-size:12px}.search-form input{font-size:14px}
.hero-footnote,.principles{font-size:12px}
.art-caption{font-size:11px}
.section-head p,.owner-banner p{font-size:14px;line-height:1.7}
.city-tile .tile-state,.city-tile small{font-size:12px}
.badge,.photo-count,.card-location,.card-bottom time,.detail-meta,.breadcrumb,.gallery-credit{font-size:12px}
.ad-title{font-size:16px;line-height:1.5;min-height:48px}
.card-address{font-size:14px}.card-bottom a{font-size:13px}
.state-link,.state-thumb-count,.state-hint{font-size:13px}
.footer p,.footer-bottom{font-size:12px;line-height:1.6}
.listing-intro p{font-size:15px}.location-stamp small{font-size:10px}
.filter-tab,.sort,.result-line{font-size:13px}
.empty-state p{font-size:15px;line-height:1.7}
.description{font-size:16px;line-height:1.85;max-width:72ch}
.detail-facts dt{font-size:12px}.detail-facts dd{font-size:15px}
.contact-card p{font-size:14px;line-height:1.7}.contact-card small{font-size:12px}
.lightbox-top,.lightbox figcaption,.owner-dialog p,.toast,.noscript{font-size:13px}
.city-hero h1{font-size:clamp(44px,6vw,72px);line-height:1.02;max-width:900px}
.city-hero p{font-size:15px}.city-filter-card label{font-size:12px}.city-filter-card input,.city-filter-card select{font-size:14px}.filter-clear{font-size:13px}
.detail-heading h1{font-size:clamp(36px,4.2vw,56px);line-height:1.08;max-width:1000px}
.detail-story h2{font-size:clamp(34px,3.8vw,46px)}
.legal-document h1{font-size:clamp(44px,5.5vw,68px);line-height:1.02}.legal-updated{font-size:12px}.legal-document h2{font-size:clamp(28px,3vw,34px)}.legal-document p,.legal-document li{font-size:16px;line-height:1.8}
.error-state h1{font-size:clamp(40px,5vw,60px)}

@media(max-width:760px){
.brand small{font-size:9px}.header-actions .button{font-size:12px}
input,select,textarea{font-size:16px}
.hero h1{font-size:clamp(44px,11vw,62px)}
.city-hero h1{font-size:clamp(42px,11vw,58px)}
.detail-heading h1{font-size:clamp(34px,9vw,44px)}
.listing-intro h1{font-size:clamp(42px,10vw,58px)}
.legal-document h1{font-size:clamp(40px,11vw,54px)}
}
@media(max-width:430px){
.ad-title{font-size:16px}.card-address{font-size:13px}
.detail-heading h1{font-size:34px}.detail-story h2{font-size:34px}
}

/* Image-based site branding. */
.brand{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;white-space:nowrap;gap:0}
.brand picture{display:block;line-height:0;min-width:0}
.brand .brand-img{width:auto;height:auto;max-width:280px}
.brand small{display:block;font:500 9px/1.5 var(--font-body);letter-spacing:2.6px;margin-top:0}
.footer .brand .brand-img{max-width:120px}
@media(max-width:760px){
.brand{flex-direction:row;align-items:center;gap:0}
.brand .brand-img{max-width:160px}
}
@media(max-width:430px){.brand .brand-img{max-width:100px}.footer .brand .brand-img{max-width:100px}.header-inner>.brand small{display:none}}

/* Listing detail · editorial gallery and readable advertiser content. */
.page-detail .detail-page{max-width:1240px;padding-bottom:96px}
.page-detail .breadcrumb{padding-block:28px 18px}
.page-detail .detail-heading{margin:8px 0 30px;display:block}
.page-detail .detail-heading-copy{max-width:1120px}
.page-detail .detail-heading .eyebrow{margin-bottom:14px}
.page-detail .detail-heading h1{font-family:var(--font-body);font-size:clamp(26px,2.6vw,34px);font-weight:600;line-height:1.34;letter-spacing:-.025em;color:#352c29;text-wrap:pretty;overflow-wrap:anywhere}
.page-detail .detail-meta{margin-top:16px;gap:10px;font-size:12px}
.page-detail .detail-meta>span:not(.badge){display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border:1px solid #e5d1d2;border-radius:999px;background:#fffafa;color:#786567}

.page-detail .listing-carousel{padding:0;border:1px solid #e2c8ca;border-radius:22px;background:#fffdfd;box-shadow:0 24px 64px rgb(89 52 56 / 12%);overflow:hidden}
.page-detail .gallery-stage{position:relative;isolation:isolate;height:clamp(420px,55vw,620px);overflow:hidden;background:#3c3132}
.page-detail .gallery-backdrop{position:absolute;z-index:-2;inset:-30px;width:calc(100% + 60px);height:calc(100% + 60px);object-fit:cover;filter:blur(30px) saturate(.72);transform:scale(1.08);opacity:.62;transition:opacity var(--transition-fast)}
.page-detail .gallery-stage:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgb(34 24 26 / 35%),rgb(34 24 26 / 4%) 28%,rgb(34 24 26 / 4%) 72%,rgb(34 24 26 / 35%));pointer-events:none}
.page-detail .listing-carousel .carousel-slides{position:absolute;inset:0;height:auto;border-radius:0;background:transparent}
.page-detail .listing-carousel .gallery-item{position:absolute;inset:0;width:100%;height:100%;padding:28px 72px;background:transparent;cursor:zoom-in}
.page-detail .listing-carousel .gallery-item img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 18px 28px rgb(20 12 14 / 28%))}
.gallery-stage-meta{position:absolute;z-index:3;left:24px;right:24px;bottom:22px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}
.gallery-count,.gallery-zoom{display:inline-flex;align-items:center;min-height:36px;padding:7px 13px;border:1px solid rgb(255 255 255 / 28%);border-radius:999px;background:rgb(33 23 25 / 64%);box-shadow:0 8px 20px rgb(0 0 0 / 12%);backdrop-filter:blur(12px);color:#fff;font-size:12px;font-weight:600;letter-spacing:.04em}
.gallery-arrows{position:absolute;z-index:4;inset:50% 18px auto;display:flex;justify-content:space-between;transform:translateY(-50%);pointer-events:none}
.gallery-arrows .icon-button{pointer-events:auto;width:48px;height:48px;border-color:rgb(255 255 255 / 30%);background:rgb(255 250 250 / 88%);box-shadow:0 8px 24px rgb(35 19 21 / 18%);color:#6f3b40}
.gallery-arrows .icon-button:hover{background:#fff;transform:scale(1.04)}
.page-detail .carousel-controls{display:block;margin:0;padding:16px 18px 14px;border-top:1px solid #eededf;background:linear-gradient(180deg,#fffdfd,#fff8f8)}
.carousel-thumbnails{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.carousel-thumbnail{position:relative;min-width:0;aspect-ratio:4/3;padding:0;overflow:hidden;border:2px solid transparent;border-radius:10px;background:#f2e1e2;color:#fff;opacity:.68;transition:opacity var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}
.carousel-thumbnail:hover{opacity:1;transform:translateY(-2px)}
.carousel-thumbnail[aria-pressed=true]{opacity:1;border-color:var(--color-action);box-shadow:0 0 0 3px #e8a4aa2e}
.carousel-thumbnail img{width:100%;height:100%;object-fit:cover}
.carousel-thumbnail span{position:absolute;right:6px;bottom:5px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:rgb(42 29 31 / 70%);font-size:10px;font-weight:600;backdrop-filter:blur(6px)}
.gallery-caption{display:flex;justify-content:flex-end;gap:16px;margin-top:11px;color:#806d6f;font-size:11px;line-height:1.45}
.page-detail .detail-body{grid-template-columns:minmax(0,1fr) 340px;gap:72px;margin-block:64px 88px}
.page-detail .detail-story{padding:0}
.page-detail .detail-story h2{margin-bottom:26px;font-size:clamp(34px,4vw,46px);line-height:1.08}
.page-detail .description{max-width:68ch;font-size:16px;line-height:1.85;color:#544648}
.page-detail .description p+p{margin-top:18px}
.page-detail .detail-facts{gap:20px;margin-top:36px;padding-top:26px}
.page-detail .detail-facts dt{font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.page-detail .detail-facts dd{font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.page-detail .contact-card{top:118px;padding:30px;border:1px solid #dec6a1;border-top:4px solid var(--color-accent);border-radius:16px;background:linear-gradient(145deg,#fffdf8,#fff3f4);box-shadow:0 18px 48px rgb(91 53 58 / 11%)}
.page-detail .contact-card h2{margin:16px 0 14px;font-size:34px;line-height:1.08}
.page-detail .contact-card p{font-size:14px;line-height:1.65}
.page-detail .contact-card .phone-number{font-family:var(--font-body);font-size:22px;font-weight:600;line-height:1.25;letter-spacing:-.02em}
.page-detail .contact-card .button{min-height:52px}
.page-detail .related-listings{padding-top:56px}
.page-detail .lightbox{border-radius:18px}

@media(max-width:900px){
 .page-detail .gallery-stage{height:clamp(360px,66vw,560px)}
 .page-detail .listing-carousel .gallery-item{padding:24px 62px}
 .page-detail .detail-body{grid-template-columns:minmax(0,1fr) 290px;gap:40px}
}
@media(max-width:700px){
 .page-detail .detail-page{padding-inline:18px;padding-bottom:64px}
 .page-detail .breadcrumb{padding-block:20px 14px}
 .page-detail .detail-heading{margin-bottom:22px}
 .page-detail .detail-heading h1{font-size:clamp(24px,7vw,32px);line-height:1.34}
 .page-detail .listing-carousel{border-radius:16px}
 .page-detail .gallery-stage{height:clamp(280px,80vw,440px)}
 .page-detail .listing-carousel .gallery-item{padding:18px 42px}
 .gallery-stage-meta{left:14px;right:14px;bottom:14px}.gallery-zoom{display:none}
 .gallery-arrows{left:10px;right:10px}.gallery-arrows .icon-button{width:44px;height:44px}
 .page-detail .carousel-controls{padding:12px}
 .carousel-thumbnails{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;scroll-snap-type:x proximity;scrollbar-width:thin}
 .carousel-thumbnail{flex:0 0 92px;scroll-snap-align:start}
 .gallery-caption{font-size:10px}
 .page-detail .detail-body{grid-template-columns:1fr;gap:32px;margin-block:48px 64px}
 .page-detail .contact-card{position:static;padding:26px}
}
@media(max-width:430px){
 .page-detail .detail-page{padding-inline:14px}
 .page-detail .detail-heading h1{font-size:24px}
 .page-detail .gallery-stage{height:clamp(250px,80vw,340px)}
 .page-detail .listing-carousel .gallery-item{padding:14px 28px}
 .gallery-stage:after{background:rgb(34 24 26 / 10%)}
 .page-detail .detail-story h2{font-size:32px}
}

/* Listing detail · contact actions, nearby metadata, and compact mobile chrome. */
.header-cta-short{display:none}
.page-detail .contact-address{margin-bottom:14px}
.contact-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.contact-tools a,.contact-tools button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 11px;border:1px solid #dfc7c8;border-radius:8px;background:#fffafa;color:#6c4a4d;font-size:12px;font-weight:600}
.contact-tools a:hover,.contact-tools button:hover{border-color:#c98e93;background:#fbeaec;color:var(--color-action)}
.contact-feedback{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.related-card .card-photo{aspect-ratio:4/3}
.related-card .card-location{margin-bottom:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.related-card .ad-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;min-height:72px;line-height:1.5}
.related-updated{margin-top:12px;color:#806d6f;font-size:12px;line-height:1.45}
.mobile-contact-copy{min-width:0}
.mobile-contact-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#513d3f;font-size:15px;line-height:1.35}

@media(max-width:700px){
 body.page-detail{padding-bottom:84px}
 body.page-detail .site-header{position:sticky;top:0}
 body.page-detail .header-inner{height:72px;padding-inline:14px;gap:10px}
 body.page-detail .brand small{display:none}
 body.page-detail .brand>picture{display:flex;align-items:center}
 body.page-detail .brand>img.brand-img,body.page-detail .brand picture .brand-img{max-width:118px}
 body.page-detail .header-actions{gap:7px}
 body.page-detail .lang-trigger{width:44px;min-width:44px;height:44px;padding:8px!important;justify-content:center}
 body.page-detail .lang-current-name,body.page-detail .lang-caret{display:none}
 body.page-detail .header-cta{min-width:64px;min-height:44px;padding:8px 11px!important;font-size:12px!important}
 body.page-detail .header-cta-full{display:none}
 body.page-detail .header-cta-short{display:inline}
 .mobile-contact{z-index:50;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgb(255 249 249 / 96%);backdrop-filter:blur(16px)}
 .mobile-contact .button{min-width:116px;min-height:48px}
 .related-card .ad-title{min-height:72px}
}
.description .ad-copy{position:relative;isolation:isolate;overflow:hidden;margin:8px 0 24px;padding:clamp(28px,5vw,54px) clamp(18px,5vw,48px);border:1px solid #e3c4cf;border-radius:18px;background:linear-gradient(145deg,#fff8fb,#fff2f5);box-shadow:0 16px 42px rgb(116 52 78 / 9%);color:#71396f;text-align:center;line-height:1.75}
.description .ad-copy>*:not(.ad-heart-rain){position:relative;z-index:1}
.description .ad-gradient-title{margin:4px 0 20px;background:linear-gradient(45deg,#ee6677,#d99b43,#3d9e83,#9b63bf);background-size:180% 180%;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-size:clamp(24px,4vw,34px);font-weight:700;line-height:1.2;animation:ad-gradient-shift 8s ease-in-out infinite}
.description .ad-copy-body{font-weight:600}.description .ad-copy b{display:block;font-weight:600}
.description .ad-heart-rain{position:absolute;z-index:0;inset:0;overflow:hidden;pointer-events:none}
.description .ad-heart-rain span{position:absolute;top:-48px;font-size:24px;filter:drop-shadow(0 6px 5px rgb(0 0 0 / 20%));opacity:0;animation:ad-heart-fall 12s linear infinite}
.description .ad-heart-rain span:nth-child(1){left:4%;animation-delay:.1s}.description .ad-heart-rain span:nth-child(2){left:14%;animation-delay:1.8s;animation-duration:13.2s}.description .ad-heart-rain span:nth-child(3){left:23%;animation-delay:.7s;animation-duration:11.6s}.description .ad-heart-rain span:nth-child(4){left:32%;animation-delay:2.9s;animation-duration:13.6s}.description .ad-heart-rain span:nth-child(5){left:43%;animation-delay:1.2s;animation-duration:12.4s}.description .ad-heart-rain span:nth-child(6){left:53%;animation-delay:3.8s;animation-duration:11.2s}.description .ad-heart-rain span:nth-child(7){left:62%;animation-delay:2.1s;animation-duration:14s}.description .ad-heart-rain span:nth-child(8){left:71%;animation-delay:4.6s}.description .ad-heart-rain span:nth-child(9){left:80%;animation-delay:3.2s;animation-duration:12.8s}.description .ad-heart-rain span:nth-child(10){left:90%;animation-delay:5.4s;animation-duration:11.8s}
@keyframes ad-heart-fall{0%{top:-48px;transform:rotate(-8deg);opacity:0}8%{opacity:.78}85%{opacity:.72}100%{top:calc(100% + 48px);transform:rotate(22deg);opacity:0}}
@keyframes ad-gradient-shift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
@media(prefers-reduced-motion:reduce){.description .ad-gradient-title{animation:none}.description .ad-heart-rain{display:none}}
.location-card{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:20px;margin-top:36px;padding:24px 26px;border:1px solid #dfc4c7;border-left:4px solid #b66b73;border-radius:16px;background:linear-gradient(135deg,#fffafa 0%,#fff4f5 72%,#f8e8e1 100%);box-shadow:0 14px 34px rgb(111 61 68 / 9%);font-style:normal}
.location-card:after{content:'';position:absolute;z-index:-1;width:160px;height:160px;right:-76px;top:-88px;border:1px solid rgb(180 138 82 / 20%);border-radius:50%;box-shadow:0 0 0 34px rgb(255 248 238 / 28%)}
.location-card-icon{display:grid;place-items:center;width:56px;height:56px;border:1px solid #dbb8bd;border-radius:50%;background:#fffafa;color:#9b4f58;box-shadow:0 8px 20px rgb(145 72 78 / 10%)}
.location-card-icon svg{width:25px;height:25px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.location-card-copy{display:flex;min-width:0;flex-direction:column;gap:5px}
.location-card-label{color:#98545b;font-size:11px;font-weight:700;letter-spacing:.17em;text-transform:uppercase}
.location-card-copy strong{color:#47393b;font:500 clamp(23px,2.6vw,31px)/1.2 var(--font-display);letter-spacing:.005em;overflow-wrap:anywhere}
.location-card-context{color:#8a7476;font-size:12px;letter-spacing:.04em;text-transform:uppercase}
.location-card-link{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:46px;padding:11px 16px;border:1px solid #d8b9bc;border-radius:999px;background:rgb(255 250 250 / 80%);color:#86434b;font-size:12px;font-weight:700;white-space:nowrap}
.location-card-link:hover{border-color:#ad6870;background:#9b5058;color:#fff;transform:translateY(-1px)}
@media(max-width:760px){.location-card{grid-template-columns:48px minmax(0,1fr);gap:16px;padding:22px 20px}.location-card-icon{width:48px;height:48px}.location-card-copy strong{font-size:clamp(22px,7vw,28px)}.location-card-link{grid-column:2;justify-self:start}}
@media(max-width:430px){.location-card{margin-top:28px;padding:20px 16px}.location-card-link{width:100%}}
.ad-card.is-member,.ad-list-card.is-member{border-color:transparent;box-shadow:0 12px 34px rgb(205 127 151 / 14%),0 0 0 1px rgb(224 187 121 / 12%)}
.member-glow{position:absolute;z-index:7;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none}
.member-glow svg{display:block;width:100%;height:100%;overflow:visible;shape-rendering:geometricPrecision}
.member-glow rect{fill:none;x:2px;y:2px;width:calc(100% - 4px);height:calc(100% - 4px);rx:14px;vector-effect:non-scaling-stroke}
.member-glow-track{stroke:rgb(199 151 81 / 42%);stroke-width:1.4}
.member-glow-runner{stroke-width:3;stroke-linecap:round;filter:drop-shadow(0 0 3px rgb(243 207 125 / 90%)) drop-shadow(0 0 7px rgb(224 126 153 / 42%));animation:member-border-flow 7.2s linear infinite}
.member-glow-runner-main{stroke-dasharray:19 81}
.member-glow-runner-second{stroke-dasharray:7 93;animation-delay:-3.6s}
.member-glow-spark{stroke:#fffce5;stroke-width:3.4;stroke-linecap:round;stroke-dasharray:1.2 98.8;filter:drop-shadow(0 0 4px #fff4bd);animation:member-border-flow 7.2s linear infinite;animation-delay:-1.2s}
.is-member .badge:not(.badge-featured){border-color:#9f7e57;background:radial-gradient(circle at 18% 12%,#f1d5a4 0 12%,transparent 45%),linear-gradient(112deg,#e1c194,#c7a678 56%,#b29168);color:#2f251d;box-shadow:inset 0 1px 0 rgb(255 244 214 / 64%),0 4px 12px rgb(83 55 28 / 18%)}
.is-member .member-surface{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 16% 18%,rgb(255 233 188 / 72%) 0,transparent 42%),radial-gradient(ellipse at 78% 48%,rgb(93 59 29 / 13%) 0,transparent 58%),linear-gradient(112deg,#e1c194 0%,#d6b687 26%,#c7a678 60%,#b29168 100%);color:#2f251d;box-shadow:inset 0 1px 0 rgb(255 242 207 / 74%),inset 1px 0 0 rgb(255 231 181 / 42%),inset -18px -18px 34px rgb(91 60 31 / 10%)}
.is-member .member-surface:before{content:"";position:absolute;z-index:0;inset:0;pointer-events:none;background-image:url("/static/media/member-metal-grain.svg"),repeating-linear-gradient(96deg,rgb(255 255 255 / 11%) 0 1px,rgb(72 45 21 / 5%) 1px 2px,transparent 2px 5px);background-size:180px 180px,5px 5px;background-repeat:repeat;mix-blend-mode:soft-light;opacity:.24}
.is-member .member-surface>*{position:relative;z-index:1}
.ad-card.is-member .member-surface{border-radius:0 0 calc(var(--radius-md) - 2px) calc(var(--radius-md) - 2px)}
.ad-card.is-member .card-location,.ad-list-card.is-member .ad-list-location{color:#50381f}.ad-card.is-member .card-address,.ad-card.is-member .card-bottom time,.ad-list-card.is-member .ad-list-address,.ad-list-card.is-member .ad-list-times{color:#392b20}.ad-card.is-member .card-bottom{border-top-color:rgb(92 62 33 / 38%)}.ad-card.is-member .card-bottom a,.ad-list-card.is-member .ad-list-title a:hover{color:#50381f}
@keyframes member-border-flow{from{stroke-dashoffset:0}to{stroke-dashoffset:-100}}
@media(prefers-reduced-motion:reduce){.member-glow-runner,.member-glow-spark{animation:none}.member-glow-runner-main{stroke-dasharray:26 74}.member-glow-runner-second,.member-glow-spark{display:none}}
@media(max-width:760px){body.page-city .header-actions{gap:7px}body.page-city .lang-trigger{width:44px;min-width:44px;height:44px;padding:8px!important;justify-content:center}body.page-city .lang-current-name,body.page-city .lang-caret{display:none}body.page-city .header-cta-full{display:none}body.page-city .header-cta-short{display:inline}}
