/* Local continuation of v41. Each floral scene belongs to its photo in the document flow. */
.subpage{background:linear-gradient(110deg,#fff7e9,#fbf0dd 55%,#f5e6d3)}
.organic-main{overflow:clip;display:flow-root;isolation:isolate}
.subpage .wrap{width:min(1240px,calc(100% - 96px))}
.subpage .site-header{z-index:30}
.subpage .organic-main h1,.subpage .passage-title{font-family:var(--serif);font-size:clamp(1.75rem,2.5cqw,2.6rem);color:#742c43;font-weight:600;line-height:1.25}
.subpage .calligraphy,.subpage .passage-tagline{font-family:'Finca Pinyon',Georgia,serif;font-size:clamp(2.4rem,3.8cqw,3.9rem);font-weight:400;line-height:1.2;color:#573b37;letter-spacing:0;margin:20px 0 28px}
.subpage h2{font-size:clamp(1.8rem,2.7cqw,2.6rem);line-height:1.2;color:#743849}
.subpage p{color:#493b31}
.editorial-section,.cabane-page .page-section{position:relative;padding:65px 0;isolation:isolate}
.organic-hero,.cabane-page .intro-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:40px;align-items:center}
.organic-copy,.cabane-page .intro-copy,.cabane-page .section-copy{position:relative;min-width:0;z-index:5}
.organic-copy>p:not(.calligraphy),.intro-description,.section-copy>p{max-width:550px;margin-top:22px;line-height:1.8}
.organic-copy>.btn,.organic-copy>.text-link{margin-top:26px}
.organic-figure,.cabane-page .photo-card{margin:0;min-width:0}
.floral-scene{position:relative;isolation:isolate;padding:7% 7% 9%;overflow:visible;background:none;min-width:0}
.scene-photo{position:relative;z-index:3;min-width:0}
.scene-photo img:not(.plant){display:block;width:100%!important;height:auto!important;object-fit:contain!important;max-height:none!important;border:0!important;border-radius:0!important;mask-image:var(--photo-fade-a);mask-size:100% 100%;mask-repeat:no-repeat}
.scene-photo .photo-button{display:block;padding:0!important;border:0;background:none!important;box-shadow:none!important;transform:none!important}
.plant{display:block;position:absolute;height:auto!important;max-width:none!important;object-fit:contain!important;pointer-events:none!important;user-select:none;transition:none!important;animation:none!important;filter:none;mask-size:100% 100%;mask-repeat:no-repeat}
.plant-0{left:-8%;top:-5%;width:40%!important;z-index:1;transform:scaleX(-1);mask-image:linear-gradient(to bottom,transparent 0%,#000 14%,#000 78%,transparent 100%)}
.plant-1{right:-8%;top:-9%;width:42%!important;z-index:2;transform:scaleX(-1);mask-image:linear-gradient(to bottom,transparent 0%,#000 14%,#000 78%,transparent 100%)}
.plant-2{left:-3%;bottom:0;width:32%!important;z-index:2;transform:rotate(-16deg);mask-image:linear-gradient(to top,transparent 0%,#000 16%,#0008 70%,transparent)}
.plant-3{right:-1%;bottom:-3%;width:27%!important;z-index:4;transform:rotate(8deg);mask-image:linear-gradient(to top,#000 55%,#000c 90%,transparent)}
.floral-scene.garden .plant-0{left:-4%;width:33%!important;top:-1%;opacity:.9}
.floral-scene.garden .plant-1{right:-6%;width:36%!important;top:4%}
.floral-scene.garden .plant-3{right:0;bottom:1%;width:20%!important;transform:rotate(12deg);mask-image:linear-gradient(to top,transparent 0%,#000 12%,#000 95%,transparent)}
.organic-figure figcaption,.cabane-page .photo-caption{position:relative;z-index:6;font-size:.8rem;line-height:1.5;text-align:center;color:#685043;margin:10px 7% 0;max-width:86%;background:none}
.organic-split,.cabane-page .split-section,.cabane-page .terrace-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:65px;align-items:center}
.prose-pair{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start}
.prose-pair .eyebrow{margin-bottom:20px}
.prose-pair p{line-height:1.8}
.two-photos,.cabane-page .rooms-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;margin-top:48px}
.coffee-process{background:radial-gradient(ellipse at 50% 45%,#e9e4bd44,transparent 73%)}
.cabane-page .section-heading{max-width:850px;text-align:center;margin:0 auto 30px}
.cabane-page .section-heading p:not(.passage-tagline){max-width:720px;margin:18px auto;line-height:1.8}
.cabane-page .facts{grid-template-columns:1fr 1fr;border:0;gap:20px;margin:22px 0 0;padding:0}
.cabane-page .fact{border:0;justify-content:start;min-width:0}
.cabane-page .facts .fact strong{font-size:.92rem}
.cabane-page .facts .fact span{font-size:.78rem}
.cabane-page .photo-actions{text-align:center;margin:24px 0 0}
.cabane-page .comfort-photos{display:grid;gap:38px}
.cabane-page .detail-list{grid-template-columns:1fr;margin-top:25px;gap:12px}
.cabane-page .terrace-grid{grid-template-columns:1fr 1fr}
.subpage .reservation-card{position:static;border:0;border-radius:0;background:radial-gradient(ellipse,#edd7ca88,transparent 75%);padding:30px 0 0;margin-top:25px;max-width:520px}
.subpage .reservation-card .btn{width:auto;margin-top:20px}
.gallery-door,.cabane-page .album-section{text-align:center;padding:70px 0 85px;background:radial-gradient(ellipse at center,#f1d8bd77,transparent 70%)}
.gallery-door .garden-category-links,.cabane-page .album-section .garden-category-links{justify-content:center;margin:28px 0}
.gallery-cross-link,.separate-gallery{margin-top:22px}
.subpage .booking-banner{margin-top:25px}
.subpage .booking-banner p,.subpage .booking-banner h2{color:#fff0e4}
.contact-hero{padding-top:55px;padding-bottom:35px}
.contact-hero .page-intro{width:100%;padding:0;min-width:0}
.contact-hero .page-intro h1{font-size:clamp(2.3rem,3.5cqw,3.5rem)}
.subpage .contact-grid{padding-top:35px;gap:65px;align-items:start}
.subpage .booking-form{border:1px solid #d7bca180;background:#fff7e980;border-radius:6px;box-shadow:none}
.subpage .contact-copy{position:relative;z-index:5}
.subpage .contact-copy h2{font-size:2.4rem}
.subpage .region-intro{padding-top:55px}
.subpage .region-cover{overflow:visible!important;background:none;border-radius:0;min-width:0;height:auto!important}
.subpage .region-cover .floral-scene{padding:6% 8% 8%}
.subpage .region-cover .scene-photo>img{width:100%!important;height:auto!important;max-height:520px!important;object-fit:contain!important}
.subpage .region-place-photo{overflow:visible!important;background:none!important;border-radius:0!important;min-width:0}
.subpage .region-place-photo .floral-scene{padding:7% 6% 8%}
.subpage .region-place figcaption,.subpage .region-cover figcaption{position:relative;z-index:6}
.subpage .region-place{background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;border-bottom:1px solid #ccb29966!important}
.subpage .region-place-copy{position:relative;z-index:5}
body.composition-v41.subpage .video-section>.wrap{display:block}
.subpage .video-preview{position:relative;display:grid;place-items:center;min-height:210px;width:100%;max-width:860px;margin:26px auto 0;overflow:hidden;border-radius:6px;color:white;background:#203f32}
.subpage .video-preview img{display:block;width:100%;height:clamp(210px,32vw,420px);object-fit:cover;opacity:.62}
.subpage .video-preview span{position:absolute;display:flex;align-items:center;gap:16px;padding:16px 24px;background:#6f2940e8;border-radius:40px;font-weight:600;font-size:1rem}
.subpage .video-preview b{font-size:1.5rem}
.subpage .video-preview:focus-visible{outline:3px solid #b88628;outline-offset:6px}
.subpage .region-cover .plant,.subpage .region-place-photo .plant{max-height:none!important}
.subpage .garden-lightbox .garden-photo-stage{overflow:visible}
.subpage .finca-lightbox:not(.without-garden) .lightbox-image{mask-image:var(--photo-fade-a);mask-size:100% 100%}
.subpage .finca-lightbox.without-garden .lightbox-image{mask:none!important}
.subpage .finca-lightbox .garden-category-status{min-height:24px}
.cabane-page .intro-copy .passage-tagline span{display:block}
/* A continuous, translucent botanical sweep crosses chapter edges, as on v41. */
.chapter-growth{position:absolute;z-index:0;pointer-events:none;user-select:none;overflow:visible;width:min(36%,470px);left:0;top:45%;opacity:.65;mask-image:linear-gradient(to bottom,transparent,#000 12%,#000 84%,transparent)}
.chapter-growth img{width:100%;height:auto;object-fit:contain;mask-image:linear-gradient(to right,#000b 0%,#0005 28%,#0002 58%,transparent 93%)}
.growth-finca{top:52%;width:min(29%,420px)}
.growth-terrace{left:auto;right:0;top:43%;width:min(25%,350px);transform:scaleX(-1)}
.cabane-page .rooms-grid .photo-card:first-child .plant-1{width:27%!important;right:0;top:18%}
.cabane-page .rooms-grid .photo-card:nth-child(2) .plant-0{opacity:.3;top:10%}
.cabane-page .comfort-photos .plant-3{width:19%!important}
.finca-page .organic-hero .plant-0{left:-3%;top:4%;width:35%!important}
.finca-page .coffee-process .organic-split .plant-0{left:-6%;width:42%!important;opacity:.65}
.finca-page .two-photos .organic-figure:first-child .plant-1{opacity:.28;width:25%!important}
.finca-page .two-photos .organic-figure:last-child .plant-2{opacity:.4}
@media(max-width:1100px){
 .chapter-growth{opacity:.38}
 .subpage .wrap{width:calc(100% - 48px)}
 .organic-hero,.cabane-page .intro-grid{gap:24px;grid-template-columns:.8fr 1.2fr}
 .organic-split,.cabane-page .split-section,.cabane-page .terrace-grid{gap:38px}
 .prose-pair{gap:35px}
 .two-photos,.cabane-page .rooms-grid{gap:24px}
 .subpage .calligraphy,.subpage .passage-tagline{font-size:3rem}
 .subpage .contact-grid{gap:32px}
 .subpage .mobile-nav:not([hidden]){display:flex;flex-wrap:wrap;gap:4px 20px;padding:12px 24px}
 .subpage .mobile-nav a{min-height:44px;display:flex;align-items:center}
}
@media(max-width:760px){
 .subpage .wrap{width:calc(100% - 36px)}
 .editorial-section,.cabane-page .page-section{padding:35px 0}
 .organic-hero,.cabane-page .intro-grid,.organic-split,.cabane-page .split-section,.cabane-page .terrace-grid,.prose-pair{grid-template-columns:minmax(0,1fr);gap:28px}
 .subpage .organic-main h1,.subpage .passage-title{font-size:1.9rem}
 .subpage .calligraphy,.subpage .passage-tagline{font-size:2.8rem;margin-top:18px;margin-bottom:22px}
 .organic-hero .organic-copy,.cabane-page .intro-copy{padding:8px 6px}
 .organic-copy>p:not(.calligraphy),.intro-description,.section-copy>p{max-width:100%}
 .floral-scene{padding:7% 5% 8%;margin-top:15px}
 .plant-0{left:-4%;width:34%!important;top:1%}
 .plant-1{right:-3%;width:34%!important;top:-3%}
 .plant-2{width:28%!important;left:0;bottom:0}
 .plant-3{width:24%!important;right:0;bottom:0}
 .two-photos,.cabane-page .rooms-grid{grid-template-columns:1fr;gap:34px;margin-top:30px}
 .cabane-page .rooms-grid .photo-card{width:100%;max-width:540px;margin:auto}
 .organic-figure figcaption,.cabane-page .photo-caption{margin-top:6px;font-size:.78rem}
 .cabane-page .facts{gap:18px 10px}
 .cabane-page .facts .icon{width:20px;height:20px}
 .cabane-page .comfort-photos{gap:24px}
 .subpage .reservation-card{max-width:100%}
 .gallery-door,.cabane-page .album-section{padding:44px 0}
 .contact-hero{padding-top:32px;padding-bottom:20px}
 .subpage .contact-grid{display:flex;flex-direction:column;gap:40px}
 .subpage .contact-grid>*{width:100%;min-width:0}
 .subpage .contact-grid .booking-form{order:0}
 .subpage .contact-grid .contact-copy{order:1}
 .subpage .form-row{grid-template-columns:1fr}
 .subpage .booking-form{padding:25px 18px}
 .subpage .site-footer{padding-bottom:95px!important}
 .subpage .garden-lightbox{max-width:calc(100vw - 14px);width:calc(100vw - 14px)}
 .subpage .finca-lightbox .garden-photo-frame figcaption{max-width:100%;width:100%;margin-bottom:16px}
 .subpage .region-intro{padding-top:35px}
 .chapter-growth{top:25%;width:62%;max-width:270px;opacity:.25}
 .growth-finca{top:27%;width:55%}
 .growth-terrace{top:auto;bottom:-70px;width:44%;opacity:.35}
}
@media(prefers-reduced-motion:reduce){.plant{transition:none!important;animation:none!important}}
