/*
Theme Name: Villa Lena Premium Multilingual V14
Theme URI: https://villalena-istria.com/
Author: OpenAI
Description: Premium editorial one-page theme for Villa Lena Istria, inspired by the supplied Manus design.
Version: 14.0.0
Text Domain: villa-lena-premium-multilingual-v7
*/
:root{--forest:#496f5d;--forest-deep:#5b7f6e;--green:#7fa58d;--green-soft:#d7e4d6;--yellow:#e6cc73;--paper:#f6f8f3;--cream:#eef4ea;--white:#fff;--ink:#2d4738;--muted:#64766b;--line:#d8e3d6;--shell:1540px;--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--script:"Allura",cursive}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}svg{display:block}.shell{width:min(var(--shell),calc(100% - 72px));margin-inline:auto}.site-header{position:fixed;inset:0 0 auto;z-index:100;padding:26px 0;color:#fff;transition:.35s}.site-header.is-scrolled{padding:14px 0;background:rgba(16,45,32,.94);backdrop-filter:blur(18px);box-shadow:0 10px 40px rgba(7,25,17,.16)}.nav-shell{display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:baseline;gap:9px;font-family:var(--serif);font-size:30px;line-height:1;color:#fff}.brand small{font:600 9px/1 var(--sans);letter-spacing:.28em;text-transform:uppercase}.custom-logo{max-height:56px;width:auto}.primary-menu{display:flex;align-items:center;gap:30px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.primary-menu>a:not(.nav-cta){position:relative}.primary-menu>a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:currentColor;transition:.25s}.primary-menu>a:hover:after{right:0}.nav-cta{padding:12px 20px;border:1px solid rgba(255,255,255,.65);border-radius:4px}.menu-toggle{display:none;background:none;border:0;width:42px;height:42px;padding:8px}.menu-toggle span{display:block;height:1px;background:#fff;margin:9px 0}.hero{position:relative;min-height:92vh;display:grid;align-items:end;color:#fff;overflow:hidden}.hero-media{position:absolute;inset:0;background:url('assets/img/hero.webp') center/cover;transform:scale(1.015)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,31,20,.76) 0%,rgba(9,31,20,.35) 48%,rgba(9,31,20,.1) 100%),linear-gradient(0deg,rgba(8,28,18,.42),transparent 45%)}.hero-content{position:relative;z-index:2;padding:180px 0 105px}.hero-label,.eyebrow{font-size:11px;font-weight:750;letter-spacing:.2em;text-transform:uppercase}.hero-label{display:flex;align-items:center;gap:13px}.hero-label span{width:34px;height:1px;background:var(--yellow)}.hero h1{max-width:970px;margin:22px 0 28px;font-family:var(--serif);font-size:clamp(60px,8.4vw,136px);font-weight:400;line-height:.88;letter-spacing:-.045em}.hero p{max-width:650px;margin:0;font-size:19px;color:rgba(255,255,255,.88)}.hero-actions{display:flex;align-items:center;gap:34px;margin-top:38px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:54px;padding:0 26px;border-radius:5px;font-size:14px;font-weight:800}.button-yellow{background:var(--yellow);color:#244225;box-shadow:0 12px 35px rgba(7,28,17,.15)}.button:hover{transform:translateY(-2px)}.text-link,.arrow-link{display:inline-flex;gap:15px;align-items:center;font-weight:700}.hero-index{position:absolute;right:38px;bottom:44px;z-index:2;display:flex;align-items:center;gap:14px;font-size:10px;letter-spacing:.17em;text-transform:uppercase;writing-mode:vertical-rl}.hero-index i{height:55px;width:1px;background:rgba(255,255,255,.55)}.booking-strip{background:linear-gradient(105deg,var(--green-soft),var(--green));color:#fff}.booking-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:30px}.booking-highlights{display:flex;align-items:center;gap:34px;flex-wrap:wrap}.booking-highlights span,.amenity-list span{display:inline-flex;align-items:center;gap:10px;white-space:nowrap}.booking-highlights svg,.amenity-list svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.booking-highlights .review-star svg{fill:var(--yellow);stroke:var(--yellow)}.availability-button{display:inline-flex;align-items:center;gap:13px;padding:15px 27px;border-radius:5px;background:var(--yellow);color:#244225;font-weight:800;white-space:nowrap;transition:.2s}.availability-button:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(23,64,36,.17)}.amenity-band{padding:42px 0;background:#f8fbf7}.amenity-list{display:flex;justify-content:center;gap:27px 37px;flex-wrap:wrap;color:#365c38}.amenity-list svg{color:#5ca458}.section{padding:125px 0}.split-layout{display:grid;grid-template-columns:1fr .85fr;gap:10vw;align-items:center}.eyebrow{margin:0 0 18px;color:var(--green)}h2{margin:0;font-family:var(--serif);font-size:clamp(44px,5.4vw,80px);font-weight:400;line-height:1.02;letter-spacing:-.035em}.section-copy .lead{max-width:660px;margin:30px 0 18px;font-family:var(--serif);font-size:25px;line-height:1.45}.section-copy>p:not(.eyebrow):not(.lead){max-width:650px;color:var(--muted)}.arrow-link{margin-top:24px;border-bottom:1px solid var(--ink);padding-bottom:4px}.editorial-image{position:relative;padding:0 34px 34px 0}.editorial-image:after{content:"";position:absolute;inset:32px 0 0 32px;border:1px solid #a6bf9f;z-index:-1}.editorial-image img{width:100%;aspect-ratio:4/5;object-fit:cover}.image-caption{position:absolute;right:0;bottom:7px;padding:12px 18px;background:var(--yellow);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.amenities-section{background:var(--cream)}.section-heading{display:grid;grid-template-columns:1.35fr .65fr;gap:80px;align-items:end;margin-bottom:60px}.section-heading>p{max-width:520px;margin:0;color:var(--muted)}.amenity-cards{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ced8cb;border-left:1px solid #ced8cb}.amenity-card{min-height:285px;padding:35px;border-right:1px solid #ced8cb;border-bottom:1px solid #ced8cb;background:rgba(255,255,255,.28);transition:.3s}.amenity-card:hover{background:#fff;transform:translateY(-4px);box-shadow:0 22px 55px rgba(40,71,46,.08)}.amenity-card>span{font-size:11px;font-weight:800;color:var(--green)}.amenity-card h3{margin:35px 0 13px;font:400 29px/1.15 var(--serif)}.amenity-card p{margin:0;color:var(--muted)}.gallery-section{background:var(--forest-deep);color:#fff}.section-heading.light>p{color:#b8c9bd}.section-heading.light .eyebrow{color:#8fc287}.gallery-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;grid-auto-rows:260px;gap:14px}.gallery-item{position:relative;margin:0;overflow:hidden}.gallery-item-1{grid-column:span 2;grid-row:span 2}.gallery-item-2{grid-column:span 2}.gallery-item-5{grid-column:span 2}.gallery-item-8{grid-column:span 2}.gallery-item-9{grid-column:span 1}.gallery-item-10{grid-column:span 1}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.7s;filter:saturate(.9)}.gallery-item-2 img{object-position:center 35%}.gallery-item-3 img{object-position:left center}.gallery-item-4 img{object-position:right center}.gallery-item:hover img{transform:scale(1.045)}.gallery-item figcaption{position:absolute;left:20px;bottom:17px;padding:7px 10px;background:rgba(16,45,32,.73);backdrop-filter:blur(10px);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.gallery-note{margin:20px 0 0;color:#adc1b3;font-size:12px}.istria-section{background:#f8fbf7}.istria-intro{max-width:930px}.istria-intro>p:last-child{max-width:680px;margin:28px 0 0;color:var(--muted);font-size:18px}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:70px}.experience-card{min-height:400px;padding:38px;border:1px solid var(--line);display:flex;flex-direction:column;background:#fff}.experience-card>span{font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--green)}.experience-card h3{margin:65px 0 17px;font:400 35px/1.15 var(--serif)}.experience-card p{color:var(--muted)}.experience-card a{margin-top:auto;font-size:13px;font-weight:800}.review-section{background:var(--yellow)}.review-layout{display:grid;grid-template-columns:.35fr 1fr;gap:10vw;align-items:center}.review-score strong{font:400 88px/1 var(--serif)}.stars{letter-spacing:.12em;margin:8px 0}.review-score span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.review-layout blockquote{margin:0;font:400 clamp(30px,3.4vw,51px)/1.3 var(--serif)}.review-layout cite{display:block;margin-top:25px;font:700 11px/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase}.review-links{display:flex;flex-wrap:wrap;gap:14px;margin-top:22px}.review-links a{display:inline-flex;align-items:center;border-bottom:1px solid rgba(27,51,35,.45);font:800 12px/1.2 var(--sans);letter-spacing:.08em;text-transform:uppercase}.contact-section{background:var(--paper)}.contact-panel{display:grid;grid-template-columns:1fr .65fr;gap:80px;background:var(--forest);color:#fff;padding:70px}.contact-panel h2{max-width:760px}.contact-panel>div>p:last-child{max-width:620px;color:#c5d4c9}.contact-actions{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:18px}.contact-actions>a:not(.button){border-bottom:1px solid rgba(255,255,255,.5)}.site-footer{padding:72px 0 28px;background:#0c2318;color:#dbe8de}.footer-grid{display:grid;grid-template-columns:1.4fr .5fr .7fr;gap:80px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.footer-brand{font:400 35px/1 var(--serif);margin-bottom:12px}.footer-brand em{font-size:18px}.footer-grid h3{margin:0 0 14px;font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:#87b083}.footer-location-title{margin-top:22px!important}.footer-grid p{max-width:380px;color:#9fb2a4}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.12);margin-top:55px;padding-top:25px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#91a596}.content-page{min-height:70vh;padding:160px 0 90px}.content-page h1{font:400 clamp(45px,7vw,80px)/1 var(--serif)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}.reveal.is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
@media(max-width:1100px){.shell{width:min(var(--shell),calc(100% - 44px))}.primary-menu{gap:18px}.booking-inner{padding:22px 0}.booking-highlights{gap:18px 25px}.split-layout{gap:60px}.section{padding:95px 0}.amenity-cards{grid-template-columns:repeat(2,1fr)}.experience-grid{gap:14px}.experience-card{padding:30px}.gallery-grid{grid-auto-rows:240px}}
@media(max-width:800px){.site-header{padding:17px 0}.menu-toggle{display:block;z-index:2}.primary-menu{position:fixed;inset:0;background:var(--forest-deep);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:70px 11vw;gap:22px;font:400 30px/1.2 var(--serif);letter-spacing:0;text-transform:none;transform:translateX(100%);transition:.35s}.primary-menu.is-open{transform:none}.nav-cta{font:800 13px/1 var(--sans);text-transform:uppercase;letter-spacing:.1em;margin-top:15px}.hero{min-height:830px}.hero-content{padding:150px 0 80px}.hero h1{font-size:clamp(58px,17vw,90px)}.hero-index{display:none}.booking-inner{flex-direction:column;align-items:stretch}.booking-highlights{display:grid}.availability-button{justify-content:center}.amenity-list{display:grid;grid-template-columns:repeat(2,1fr)}.amenity-list span{white-space:normal}.split-layout,.section-heading,.review-layout,.contact-panel,.footer-grid{grid-template-columns:1fr}.section-heading{gap:24px}.editorial-image{margin-top:20px}.amenity-cards{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:220px}.gallery-item-1,.gallery-item-2,.gallery-item-5,.gallery-item-8{grid-column:1/3;grid-row:auto}.experience-grid{grid-template-columns:1fr}.experience-card{min-height:330px}.review-layout{gap:45px}.contact-panel{padding:48px 28px;gap:45px}.footer-grid{gap:38px}.footer-bottom{gap:20px;flex-wrap:wrap}}
@media(max-width:480px){.shell{width:calc(100% - 30px)}.hero{min-height:760px}.hero-actions{align-items:flex-start;flex-direction:column}.booking-highlights span{font-size:14px}.amenity-list{grid-template-columns:1fr}.section{padding:75px 0}h2{font-size:43px}.gallery-grid{display:block}.gallery-item{height:260px;margin-bottom:12px}.amenity-card{min-height:260px}.review-score strong{font-size:70px}}

/* Multilingual premium enhancements */
.language-switcher{display:inline-flex;align-items:center;gap:4px;margin-left:4px;padding:4px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(255,255,255,.08);backdrop-filter:blur(12px)}
.language-switcher a{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:28px;padding:0 8px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.08em;color:rgba(255,255,255,.78);transition:.25s}
.language-switcher a:hover,.language-switcher a.is-active{background:var(--yellow);color:var(--forest)}
.site-header.is-scrolled .language-switcher{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.06)}
.vlp-lang-de .hero h1,.vlp-lang-da .hero h1{max-width:980px;font-size:clamp(58px,8.2vw,138px)}
.vlp-lang-fr .hero h1,.vlp-lang-it .hero h1{max-width:1030px;font-size:clamp(58px,8.7vw,146px)}
.vlp-lang-de .primary-menu,.vlp-lang-fr .primary-menu,.vlp-lang-da .primary-menu{gap:22px}
.vlp-lang-de .nav-cta,.vlp-lang-it .nav-cta,.vlp-lang-fr .nav-cta,.vlp-lang-da .nav-cta{padding-inline:18px}
@media(max-width:1200px){.primary-menu{gap:18px}.language-switcher{order:20}.nav-cta{order:21}}
@media(max-width:800px){.language-switcher{margin:12px 0 0;padding:6px}.language-switcher a{min-width:44px;height:38px;font:800 13px/1 var(--sans);letter-spacing:.08em}.vlp-lang-de .hero h1,.vlp-lang-da .hero h1,.vlp-lang-fr .hero h1,.vlp-lang-it .hero h1{font-size:clamp(50px,14vw,80px)}.primary-menu .language-switcher{flex-direction:row}}


/* Villa Lena premium refinements v4.1 */
.site-header.is-scrolled{background:rgba(84,117,101,.94);box-shadow:0 10px 36px rgba(42,65,53,.14)}
.brand{gap:10px;font-family:var(--script);font-size:44px;line-height:.88;letter-spacing:.01em}
.brand .brand-name{display:inline-block}
.brand small{font:700 11px/1 var(--sans);letter-spacing:.34em;text-transform:uppercase;color:rgba(255,255,255,.92);margin-bottom:6px}
.booking-strip{background:linear-gradient(105deg,#bcd3bf,#8eaf99);color:#fff}
.amenity-band{background:#f4f8f2}
.amenity-list{color:#4f705c}
.amenity-list svg{color:#7fa58d}
.gallery-section{background:#607f6a}
.review-section{background:#ead279}
.contact-panel{background:#577866}
.site-footer{background:#4b6d5a;color:#e7f0ea}
.footer-brand{display:inline-flex;align-items:flex-end;gap:10px;font-family:var(--script);font-size:56px;line-height:.85;margin-bottom:12px}
.footer-brand em{font:700 11px/1 var(--sans);font-style:normal;letter-spacing:.34em;text-transform:uppercase;margin-bottom:7px}
.footer-about-link{display:inline-flex;align-items:center;gap:8px;margin-top:8px;padding-bottom:4px;border-bottom:1px solid rgba(231,240,234,.65);font:700 12px/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase}
.pricing-section{background:#f2f5ee;padding-top:120px;padding-bottom:125px}
.pricing-heading{max-width:980px;margin:0 auto 62px;text-align:center}
.pricing-eyebrow{display:inline-flex;flex-direction:column;align-items:center;gap:16px;margin-bottom:24px;color:#5e7f64}
.pricing-eyebrow:after{content:"";display:block;width:118px;height:4px;border-radius:999px;background:var(--yellow)}
.pricing-heading h2{max-width:980px;margin:0 auto 22px;color:#274032}
.pricing-heading>p:last-child{max-width:920px;margin:0 auto;color:#5f7266;font-size:20px}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}
.price-card{padding:56px 42px 52px;border-radius:24px;box-shadow:0 10px 26px rgba(76,102,85,.10);text-align:center}
.price-card-low{background:#dfe7dd}
.price-card-mid{background:#c9dac3}
.price-card-high{background:#e7cf72}
.price-card-label{display:block;margin-bottom:10px;color:#799072;font:800 12px/1.2 var(--sans);letter-spacing:.18em;text-transform:uppercase}
.price-card h3{margin:0;color:#45604d;font:500 28px/1.2 var(--sans)}
.price-value{margin-top:34px;color:#1f392a;font-family:var(--serif);font-size:clamp(42px,4.25vw,60px);font-weight:600;line-height:1.08}
.price-from,.price-suffix{font-size:.72em}
.price-suffix{display:block;margin-top:2px}
@media (max-width: 1100px){.pricing-grid{grid-template-columns:1fr;max-width:760px;margin:0 auto}.brand{font-size:38px}.footer-brand{font-size:48px}}
@media (max-width: 720px){.brand{font-size:34px}.brand small{font-size:10px;letter-spacing:.24em;margin-bottom:5px}.pricing-section{padding-top:90px;padding-bottom:90px}.pricing-heading>p:last-child{font-size:18px}.price-card{padding:42px 28px}.price-card h3{font-size:24px}.footer-brand{font-size:42px}.footer-brand em{font-size:10px}}


/* Exact pricing section replacement v4.2 */
.pricing-section-contact{background:#f9fcf8;padding-top:98px;padding-bottom:118px}
.pricing-section-contact .shell{width:min(1460px,calc(100% - 72px))}
.pricing-section-contact .pricing-heading{max-width:1240px;margin:0 auto 82px;text-align:center}
.pricing-section-contact .pricing-eyebrow{display:inline-flex;flex-direction:column;align-items:center;gap:20px;margin:0 0 34px;color:#4f7a4e;font-size:23px;font-weight:700;letter-spacing:.18em}
.pricing-section-contact .pricing-eyebrow:after{content:"";display:block;width:114px;height:4px;border-radius:999px;background:#e8ca63}
.pricing-section-contact .pricing-heading h2{max-width:1040px;margin:0 auto 34px;color:#193c24;font:600 clamp(64px,5.4vw,96px)/1 var(--serif);letter-spacing:-.02em}
.pricing-section-contact .pricing-heading>p:last-child{max-width:1140px;margin:0 auto;color:#47674b;font:500 clamp(22px,2vw,30px)/1.35 var(--sans)}
.pricing-grid-exact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:52px;max-width:1540px;margin:0 auto}
.pricing-grid-exact .price-card{padding:62px 46px 54px;border-radius:27px;box-shadow:0 8px 18px rgba(68,95,75,.12);text-align:center}
.pricing-grid-exact .price-card-low{background:#eaf4e7}
.pricing-grid-exact .price-card-mid{background:#cbddc4}
.pricing-grid-exact .price-card-high{background:#f0d87e}
.pricing-grid-exact .price-card-label{display:block;margin-bottom:18px;color:#7a9671;font:800 22px/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase}
.pricing-grid-exact .price-card h3{margin:0;color:#466a4a;font:500 32px/1.25 var(--sans)}
.pricing-grid-exact .price-value{margin-top:50px;color:#173b24;font:600 clamp(50px,4.2vw,70px)/1.06 var(--serif);letter-spacing:-.018em}
.pricing-grid-exact .price-from,.pricing-grid-exact .price-suffix{font-size:1em;font-weight:600}
.pricing-grid-exact .price-suffix{display:inline}
@media (max-width: 1280px){.pricing-grid-exact{gap:28px}.pricing-grid-exact .price-card{padding:52px 34px 46px}.pricing-grid-exact .price-card-label{font-size:18px}.pricing-grid-exact .price-card h3{font-size:28px}.pricing-section-contact .pricing-heading h2{font-size:clamp(54px,7vw,84px)}}
@media (max-width: 980px){.pricing-grid-exact{grid-template-columns:1fr;max-width:740px}.pricing-section-contact .pricing-heading{margin-bottom:54px}.pricing-section-contact .pricing-heading>p:last-child{font-size:21px}}
@media (max-width: 720px){.pricing-section-contact{padding-top:82px;padding-bottom:90px}.pricing-section-contact .shell{width:min(100%,calc(100% - 32px))}.pricing-section-contact .pricing-eyebrow{font-size:16px;gap:14px;margin-bottom:24px}.pricing-section-contact .pricing-eyebrow:after{width:84px;height:3px}.pricing-section-contact .pricing-heading h2{margin-bottom:22px;font-size:clamp(40px,11vw,56px)}.pricing-section-contact .pricing-heading>p:last-child{font-size:18px}.pricing-grid-exact .price-card{padding:40px 24px}.pricing-grid-exact .price-card-label{font-size:15px}.pricing-grid-exact .price-card h3{font-size:22px}.pricing-grid-exact .price-value{margin-top:30px;font-size:clamp(40px,13vw,56px)}}


/* Pricing section: pixel-matched desktop pass v9 */
.pricing-section-contact{
  background:#f9fcf8;
  padding:45px 0 116px;
}
.pricing-section-contact .shell{
  width:min(1560px,calc(100% - 80px));
  margin-inline:auto;
}
.pricing-section-contact .pricing-heading{
  max-width:none;
  margin:0 auto 108px;
  text-align:center;
}
.pricing-section-contact .pricing-eyebrow{
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  gap:26px;
  margin:0 0 50px;
  color:#4d754c;
  font:700 22px/1 var(--sans);
  letter-spacing:.18em;
  text-transform:uppercase;
}
.pricing-section-contact .pricing-eyebrow:after{
  content:"";
  display:block;
  width:114px;
  height:3px;
  border-radius:0;
  background:linear-gradient(90deg,#a9c795 0%,#f0d76d 100%);
}
.pricing-section-contact .pricing-heading h2{
  max-width:none;
  margin:0 0 26px;
  color:#1d3d27;
  font:600 72px/.98 var(--serif);
  letter-spacing:-.025em;
}
.pricing-section-contact .pricing-heading>p:last-child{
  max-width:none;
  margin:0;
  color:#48694c;
  font:500 28px/1.35 var(--sans);
  letter-spacing:-.018em;
}
.pricing-section-contact .pricing-grid-exact{
  display:grid;
  grid-template-columns:repeat(3,480px);
  justify-content:center;
  gap:48px;
  max-width:none;
  margin:0 auto;
}
.pricing-section-contact .pricing-grid-exact .price-card{
  width:480px;
  min-height:347px;
  padding:55px 38px 48px;
  border-radius:24px;
  box-shadow:0 6px 12px rgba(62,88,69,.13);
  text-align:center;
}
.pricing-section-contact .pricing-grid-exact .price-card-low{background:#eaf4e7}
.pricing-section-contact .pricing-grid-exact .price-card-mid{background:#cbddc4}
.pricing-section-contact .pricing-grid-exact .price-card-high{background:#f0d87e}
.pricing-section-contact .pricing-grid-exact .price-card-label{
  display:block;
  margin:0 0 13px;
  color:#7b9975;
  font:800 22px/1.2 var(--sans);
  letter-spacing:.105em;
  text-transform:uppercase;
}
.pricing-section-contact .pricing-grid-exact .price-card h3{
  margin:0;
  color:#466a4a;
  font:500 28px/1.25 var(--sans);
}
.pricing-section-contact .pricing-grid-exact .price-value{
  margin-top:43px;
  color:#193d25;
  font:600 58px/1.08 var(--serif);
  letter-spacing:-.02em;
}
.pricing-section-contact .pricing-grid-exact .price-from,
.pricing-section-contact .pricing-grid-exact .price-suffix{
  display:inline;
  font:inherit;
}
@media (max-width:1600px){
  .pricing-section-contact .pricing-grid-exact{grid-template-columns:repeat(3,minmax(0,480px));gap:32px}
  .pricing-section-contact .pricing-grid-exact .price-card{width:auto}
}
@media (max-width:1180px){
  .pricing-section-contact .pricing-grid-exact{grid-template-columns:1fr;max-width:720px;gap:28px}
  .pricing-section-contact .pricing-grid-exact .price-card{width:100%;min-height:310px}
  .pricing-section-contact .pricing-heading{margin-bottom:64px}
}
@media (max-width:720px){
  .pricing-section-contact{padding:70px 0 86px}
  .pricing-section-contact .shell{width:calc(100% - 32px)}
  .pricing-section-contact .pricing-eyebrow{font-size:15px;gap:16px;margin-bottom:28px}
  .pricing-section-contact .pricing-eyebrow:after{width:82px;height:3px}
  .pricing-section-contact .pricing-heading h2{font-size:45px;margin-bottom:20px}
  .pricing-section-contact .pricing-heading>p:last-child{font-size:18px}
  .pricing-section-contact .pricing-heading{margin-bottom:48px}
  .pricing-section-contact .pricing-grid-exact .price-card{min-height:280px;padding:42px 24px 36px;border-radius:22px}
  .pricing-section-contact .pricing-grid-exact .price-card-label{font-size:16px}
  .pricing-section-contact .pricing-grid-exact .price-card h3{font-size:23px}
  .pricing-section-contact .pricing-grid-exact .price-value{font-size:48px;margin-top:34px}
}

.footer-address{display:block;margin-top:5px;color:#b8c8bd;font-size:14px}.footer-location-title+ a{margin-top:1px}


/* Pricing typography refinement v14 — aligned with the rest of the page */
.pricing-section-contact{
  padding:88px 0 100px;
}
.pricing-section-contact .pricing-heading{
  margin-bottom:58px;
}
.pricing-section-contact .pricing-eyebrow{
  gap:16px;
  margin-bottom:26px;
  font:750 11px/1 var(--sans);
  letter-spacing:.20em;
}
.pricing-section-contact .pricing-eyebrow:after{
  width:86px;
  height:2px;
}
.pricing-section-contact .pricing-heading h2{
  max-width:900px;
  margin:0 auto 20px;
  font-family:var(--serif);
  font-size:clamp(44px,4.4vw,64px);
  font-weight:400;
  line-height:1.02;
  letter-spacing:-.035em;
}
.pricing-section-contact .pricing-heading>p:last-child{
  max-width:900px;
  margin:0 auto;
  font-family:var(--sans);
  font-size:18px;
  font-weight:400;
  line-height:1.6;
  letter-spacing:0;
}
.pricing-section-contact .pricing-grid-exact{
  grid-template-columns:repeat(3,420px);
  gap:30px;
}
.pricing-section-contact .pricing-grid-exact .price-card{
  width:420px;
  min-height:260px;
  padding:38px 30px 34px;
  border-radius:18px;
  box-shadow:0 8px 22px rgba(62,88,69,.10);
}
.pricing-section-contact .pricing-grid-exact .price-card-label{
  margin-bottom:9px;
  font:800 11px/1.2 var(--sans);
  letter-spacing:.16em;
}
.pricing-section-contact .pricing-grid-exact .price-card h3{
  font:500 22px/1.3 var(--sans);
}
.pricing-section-contact .pricing-grid-exact .price-value{
  margin-top:28px;
  font-family:var(--serif);
  font-size:44px;
  font-weight:500;
  line-height:1.08;
  letter-spacing:-.025em;
}
@media (max-width:1400px){
  .pricing-section-contact .pricing-grid-exact{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1200px;gap:24px}
  .pricing-section-contact .pricing-grid-exact .price-card{width:auto}
}
@media (max-width:980px){
  .pricing-section-contact .pricing-grid-exact{grid-template-columns:1fr;max-width:620px}
  .pricing-section-contact .pricing-grid-exact .price-card{width:100%}
}
@media (max-width:720px){
  .pricing-section-contact{padding:72px 0 82px}
  .pricing-section-contact .pricing-heading{margin-bottom:42px}
  .pricing-section-contact .pricing-heading h2{font-size:clamp(38px,10vw,48px);margin-bottom:16px}
  .pricing-section-contact .pricing-heading>p:last-child{font-size:16px;line-height:1.55}
  .pricing-section-contact .pricing-grid-exact .price-card{min-height:230px;padding:34px 22px 30px;border-radius:16px}
  .pricing-section-contact .pricing-grid-exact .price-card h3{font-size:20px}
  .pricing-section-contact .pricing-grid-exact .price-value{font-size:40px;margin-top:24px}
}
