/* Isolated detail styles. Approved hub and shared assets are never edited. */
body.villa-detail .villa-page{--d-accent:#8d7141}
.villa-detail .villa-page .v-hero{min-height:760px}
.villa-detail .villa-page .v-hero .v-photo img{position:static;height:100%;object-position:56% 54%}
.villa-detail .villa-page .v-hero:after{background:linear-gradient(90deg,rgba(8,32,26,.86),rgba(8,32,26,.55) 48%,rgba(8,32,26,.13)),linear-gradient(0deg,rgba(8,32,26,.3),transparent 50%)}
.villa-detail .villa-page .v-hero-inner{padding:65px 0 115px}
.villa-detail .villa-page .v-hero h1{font-size:clamp(37px,4vw,54px);line-height:1.68;letter-spacing:.045em;margin:22px 0 24px}
.villa-detail .villa-page .v-hero p{max-width:640px;line-height:2;font-size:17px}
.villa-detail .villa-page .v-hero .eyebrow{font-size:13px}
.villa-detail .villa-page .v-hero .d-hero-place{letter-spacing:.12em;font-size:14px}
.villa-detail .villa-page .hero-credit{max-width:430px}
.villa-detail .villa-page .d-breadcrumb{display:flex;gap:9px;flex-wrap:wrap;margin:25px 35px 0;font-size:12px;line-height:1.8;color:#667362}
.villa-detail .villa-page .d-breadcrumb a{color:inherit}
.villa-detail .villa-page .v-section h2{margin-bottom:27px}
.villa-detail .villa-page .v-section h3{line-height:1.7}
.villa-detail .villa-page .owner-lens h3{font:500 16px/1.8 var(--sans);color:#65713e;margin:0 0 13px}
.villa-detail .villa-page .timeline .v-card{background:#faf8f1}
.villa-detail .villa-page .timeline h3{font-size:23px}
.villa-detail .villa-page .timeline .era{font-size:12px}
.villa-detail .villa-page .d-reading-path{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:8px 13px;border-top:1px solid var(--v-line);border-bottom:1px solid var(--v-line);padding:20px 0;margin-top:30px;font-size:13px}
.villa-detail .villa-page .d-reading-path span{font-size:12px;color:var(--d-accent);margin-right:12px}
.villa-detail .villa-page .d-reading-path i{font-style:normal;color:#9b865d}
.villa-detail .villa-page .d-photo-note{font-size:12px;margin-top:16px}
.villa-detail .villa-page .d-jurisdiction{display:grid;grid-template-columns:60px 1fr;gap:12px 20px;border:1px solid var(--v-line);border-radius:20px;background:#e9ede3;padding:25px 28px;margin:30px 0}
.villa-detail .villa-page .d-jurisdiction span{font-size:13px;color:var(--d-accent);padding-top:3px}
.villa-detail .villa-page .d-jurisdiction p{font-size:15px;line-height:1.9;margin:0}
.villa-detail .villa-page .d-area-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:38px}
.villa-detail .villa-page .d-area{padding:28px 29px;display:flex;flex-direction:column;scroll-margin-top:125px}
.villa-detail .villa-page .d-area h3{font-size:25px;margin:8px 0 21px}
.villa-detail .villa-page .d-area h3 small{display:block;font:400 14px/1.9 var(--sans);color:#68745d;margin-top:10px}
.villa-detail .villa-page .d-area .eyebrow{font-size:11px;margin:0}
.villa-detail .villa-page .d-area p{font-size:16px;line-height:2}
.villa-detail .villa-page .d-area .d-owner-note{font-size:14px;line-height:1.95;border-top:1px solid #cdd5c4;padding-top:17px;margin-top:auto;color:#627059}
.villa-detail .villa-page .d-owner-note strong{display:block;font-weight:500;color:var(--d-accent);font-size:12px;letter-spacing:.06em;margin-bottom:8px}
.villa-detail .villa-page .d-experiences{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:30px}
.villa-detail .villa-page .d-experiences .eyebrow{font-size:11px;letter-spacing:.1em}
.villa-detail .villa-page .d-experiences h3{font-size:24px}
.villa-detail .villa-page .d-experiences p{font-size:16px;line-height:2}
.villa-detail .villa-page .d-experiences a{font-size:13px}
.villa-detail .villa-page .d-culture{align-items:start;gap:34px}
.villa-detail .villa-page .d-culture>.v-figure .v-photo{height:540px}
.villa-detail .villa-page .d-culture p{font-size:16px}
.villa-detail .villa-page .d-food{background:#e9ede3;border-radius:24px;padding:35px 38px;margin-top:35px}
.villa-detail .villa-page .d-food h3{font-size:26px}
.villa-detail .villa-page .d-food p{font-size:16px}
.villa-detail .villa-page .d-seasons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:23px;margin:30px 0}
.villa-detail .villa-page .d-seasons article{border-top:1px solid #b6c2aa;padding-top:18px}
.villa-detail .villa-page .d-seasons span{font:400 12px/1.6 Georgia,serif;letter-spacing:.12em;color:var(--d-accent)}
.villa-detail .villa-page .d-seasons h3{font-size:22px;margin:9px 0 15px}
.villa-detail .villa-page .d-seasons p{font-size:15px;line-height:2;margin:0}
.villa-detail .villa-page .d-care-list{margin-top:33px}
.villa-detail .villa-page .d-care-list article{display:grid;grid-template-columns:50px 1fr;gap:20px;border-top:1px solid var(--v-line);padding:25px 0}
.villa-detail .villa-page .d-care-list h3{font-size:24px;margin:0 0 12px}
.villa-detail .villa-page .d-care-list p{font-size:16px;margin:0;line-height:2}
.villa-detail .villa-page .d-care-list .number{font-size:29px;min-width:45px;white-space:nowrap}
.villa-detail .villa-page .d-editorial-note{border-left:3px solid #aa9361;padding:13px 0 13px 25px;margin:28px 0}
.villa-detail .villa-page .d-editorial-note h3{font:500 17px/1.8 var(--sans);margin:0 0 14px}
.villa-detail .villa-page .d-editorial-note p{font-size:15px;line-height:2;margin:0}
.villa-detail .villa-page table{font-size:15px}
.villa-detail .villa-page caption{caption-side:top;padding:17px 20px;text-align:left;background:#f0f0e5;color:#6d653e;font-size:13px}
.villa-detail .villa-page th[scope=row]{width:22%;background:#f2f3e9}
.villa-detail .villa-page .d-routes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:30px 0}
.villa-detail .villa-page .d-routes .v-card{padding:27px 23px}
.villa-detail .villa-page .d-routes .eyebrow{font-size:11px;letter-spacing:.06em;line-height:1.9}
.villa-detail .villa-page .d-routes h3{font-size:23px}
.villa-detail .villa-page .d-routes p{font-size:15px;line-height:2}
.villa-detail .villa-page .d-rules{border-radius:25px;background:#e8ede2;padding:35px 36px;margin:38px 0 30px}
.villa-detail .villa-page .d-rules h3{font-size:29px}
.villa-detail .villa-page .d-rule-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:27px}
.villa-detail .villa-page .d-rule-grid h4{font-size:21px;line-height:1.7;margin:15px 0}
.villa-detail .villa-page .d-rule-grid p{font-size:15px;line-height:2}
.villa-detail .villa-page .d-pref-label{display:inline-flex;border:1px solid #b8c4ae;border-radius:24px;padding:5px 12px;color:#526c51;font-size:12px;line-height:1.7}
.villa-detail .villa-page .d-value-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}
.villa-detail .villa-page .d-value-grid h3{font-size:24px}
.villa-detail .villa-page .d-value-grid p{font-size:16px}
.villa-detail .villa-page .d-statement{padding:44px 38px;border-radius:25px;background:#173f35;color:#f6f3ec;margin:35px 0 43px}
.villa-detail .villa-page .d-statement>.eyebrow{color:#d8bd80;font-size:12px}
.villa-detail .villa-page .d-statement>p:not(.eyebrow){font-family:var(--serif);font-size:29px;line-height:1.8}
.villa-detail .villa-page .d-statement .v-btn{margin-top:5px;font-size:14px}
.villa-detail .villa-page .d-steps{list-style:none;counter-reset:step;margin:32px 0 35px;padding:0}
.villa-detail .villa-page .d-steps li{counter-increment:step;position:relative;border-top:1px solid var(--v-line);padding:26px 0 26px 72px}
.villa-detail .villa-page .d-steps li:before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:22px;font:400 30px/1.5 Georgia,serif;color:#9d8250}
.villa-detail .villa-page .d-steps h3{font-size:23px;margin:0 0 12px}
.villa-detail .villa-page .d-steps p{font-size:16px;margin:0}
.villa-detail .villa-page .d-guide-panel-intro{font-size:14px;color:#677261}
.villa-detail .villa-page .d-source-checked{font-size:12px}
.villa-detail .villa-page .d-return{margin-top:32px;border-top:1px solid var(--v-line);padding-top:25px;font-size:14px}
.villa-detail .villa-page section[id],.villa-detail .villa-page article[id]{scroll-margin-top:115px}
.villa-detail .villa-page :focus-visible{outline:2px solid #9f8248;outline-offset:4px}
@media(max-width:1150px){.villa-detail .villa-page .d-seasons{grid-template-columns:1fr 1fr}.villa-detail .villa-page .d-routes{grid-template-columns:1fr}.villa-detail .villa-page .d-routes .v-card{padding:28px}.villa-detail .villa-page .d-routes h3 br{display:none}}
@media(max-width:999px){.villa-detail .villa-page section[id],.villa-detail .villa-page article[id]{scroll-margin-top:145px}.villa-detail .villa-page .v-hero h1{font-size:43px}.villa-detail .villa-page .d-breadcrumb{margin-left:30px;margin-right:30px}}
@media(max-width:759px){.villa-detail .villa-page .v-hero{min-height:730px}.villa-detail .villa-page .v-hero .v-photo img{position:static;height:100%;object-position:60% 50%}.villa-detail .villa-page .v-hero-inner{padding:45px 0 120px}.villa-detail .villa-page .v-hero h1{font-size:clamp(31px,7.8vw,40px);line-height:1.75;margin:23px 0}.villa-detail .villa-page .v-hero p{font-size:15px;line-height:2}.villa-detail .villa-page .v-hero .eyebrow{font-size:10px;line-height:1.8;letter-spacing:.12em}.villa-detail .villa-page .hero-credit{max-width:calc(100% - 44px);font-size:10px}.villa-detail .villa-page .d-breadcrumb{margin:20px 20px 0;font-size:11px}.villa-detail .villa-page .d-reading-path{font-size:12px;gap:6px 10px}.villa-detail .villa-page .d-reading-path>span{width:100%}.villa-detail .villa-page .d-jurisdiction{grid-template-columns:45px 1fr;padding:22px 20px;gap:15px}.villa-detail .villa-page .d-jurisdiction p{font-size:14px}.villa-detail .villa-page .d-area-grid,.villa-detail .villa-page .d-experiences,.villa-detail .villa-page .d-rule-grid,.villa-detail .villa-page .d-value-grid{grid-template-columns:1fr;gap:20px}.villa-detail .villa-page .d-area{padding:25px 23px}.villa-detail .villa-page .d-area h3{font-size:24px}.villa-detail .villa-page .d-area p{font-size:16px}.villa-detail .villa-page .d-area .d-owner-note{font-size:14px}.villa-detail .villa-page .d-experiences .v-card{padding:24px}.villa-detail .villa-page .d-experiences h3{font-size:23px}.villa-detail .villa-page .d-culture>.v-figure .v-photo{height:350px}.villa-detail .villa-page .d-food{padding:27px 23px}.villa-detail .villa-page .d-food h3{font-size:25px}.villa-detail .villa-page .d-seasons{gap:25px 18px}.villa-detail .villa-page .d-seasons h3{font-size:20px}.villa-detail .villa-page .d-seasons p{font-size:14px}.villa-detail .villa-page .d-care-list article{grid-template-columns:38px 1fr;gap:13px}.villa-detail .villa-page .d-care-list h3{font-size:22px}.villa-detail .villa-page .d-care-list .number{font-size:25px;min-width:32px}.villa-detail .villa-page .d-care-list p{font-size:16px}.villa-detail .villa-page .d-editorial-note{padding-left:20px}.villa-detail .villa-page .d-rules{padding:28px 23px;border-radius:21px}.villa-detail .villa-page .d-rules h3{font-size:25px}.villa-detail .villa-page .d-rule-grid>article+article{border-top:1px solid #bec9b5;padding-top:25px}.villa-detail .villa-page .d-statement{padding:32px 24px}.villa-detail .villa-page .d-statement>p:not(.eyebrow){font-size:25px}.villa-detail .villa-page .d-steps li{padding-left:52px}.villa-detail .villa-page .d-steps h3{font-size:21px}.villa-detail .villa-page .d-steps li:before{font-size:27px}.villa-detail .villa-page .d-value-grid h3{font-size:23px}.villa-detail .villa-page .sources .source-list a{overflow-wrap:anywhere}.villa-detail .villa-page .photo-credits a{overflow-wrap:anywhere}}
@media(max-width:359px){.villa-detail .villa-page .v-hero h1{font-size:28px;letter-spacing:.02em}.villa-detail .villa-page .d-seasons{grid-template-columns:1fr}.villa-detail .villa-page .d-reading-path i{display:none}.villa-detail .villa-page .d-jurisdiction{grid-template-columns:1fr;gap:7px}.villa-detail .villa-page .d-jurisdiction p+span{margin-top:10px}}
@media(max-width:759px){.villa-detail .villa-page .v-hero .d-hero-place{font-size:12px;letter-spacing:.05em}.villa-detail .villa-page .v-hero .d-hero-lead br{display:none}}
@media(min-width:601px) and (max-width:999px){.villa-detail .villa-page .villa-toc{top:77px}}
@media(max-width:600px){.villa-detail .villa-page .villa-toc{top:65px}}
@media print{.villa-detail .villa-page .d-breadcrumb{display:none}.villa-detail .villa-page .d-area,.villa-detail .villa-page .d-experiences .v-card{break-inside:avoid}.villa-detail .villa-page .d-rule-grid{display:block}.villa-detail .villa-page .d-seasons{grid-template-columns:1fr 1fr}}
