.flora-page{--flora-scene:#f6f3eb;max-width:1440px;margin:auto;padding:24px 44px 80px;color:var(--illu-ink,#272726);font-family:var(--illu-type-body,'Source Sans 3'),sans-serif}.flora-page *{box-sizing:border-box}.flora-page h1,.flora-page h2,.flora-page h3{font-family:var(--illu-type-heading,'Londrina Solid'),sans-serif!important;font-weight:400;line-height:1.05;color:var(--illu-kaki,#564a1f)}.flora-page h1{font-size:clamp(64px,7vw,100px)!important;margin:8px 0 0!important}.flora-page h2{font-size:clamp(32px,3.5vw,46px)!important;margin:8px 0 18px}.flora-page h3{font-size:28px!important;margin:10px 0}.flora-page p{line-height:1.5;margin:0 0 14px}.flora-draft-banner{font-size:12px;letter-spacing:.08em;padding:10px 16px;background:#eee7cc;border-left:3px solid var(--illu-terracotta,#a64a32);margin-bottom:28px}.flora-opening{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:52px;align-items:start}.flora-visual-column{position:sticky;top:110px}.flora-gallery img{display:block;max-width:100%;height:auto}.flora-main-photo{display:block;border-radius:3px;overflow:hidden;background:var(--flora-scene)}.flora-main-photo img{width:100%;aspect-ratio:4/5;object-fit:contain}.flora-thumbs{display:flex;gap:8px;overflow-x:auto;padding:12px 2px 6px}.flora-thumbs button{flex:0 0 58px;padding:0!important;border:2px solid transparent!important;background:none!important;border-radius:3px;cursor:pointer}.flora-thumbs button[aria-pressed=true]{border-color:var(--illu-terracotta,#a64a32)!important}.flora-thumbs img{width:58px;height:72px;object-fit:cover}.flora-eyebrow{text-transform:uppercase;font-size:12px;font-weight:650;letter-spacing:.15em;color:var(--illu-kaki,#564a1f)}.flora-subtitle{font-size:23px;margin:5px 0 16px!important;color:var(--illu-kaki,#564a1f)}.flora-intro{font-size:18px;max-width:600px}.flora-origin{font-size:13px;padding:10px 0;color:var(--illu-kaki,#564a1f)}.flora-origin:before{content:'✳';margin-right:8px}.flora-callprice{font-size:16px;margin:18px 0!important}.flora-callprice strong{font-size:26px}.flora-config{margin-top:25px;padding-top:24px;border-top:1px solid #cfc9b6}.flora-config h2{font-size:34px!important;margin-bottom:8px}.flora-config-heading p{font-size:15px}.flora-form fieldset{border:0;padding:0;margin:25px 0;min-width:0}.flora-form legend{font-size:17px;font-weight:650;margin-bottom:14px;padding:0}.flora-step{display:inline-grid;place-items:center;width:25px;height:25px;background:var(--illu-kaki,#564a1f);color:white;border-radius:50%;font-size:13px;margin-right:9px}.flora-form button,.flora-form input{font:inherit}.flora-form button{cursor:pointer;min-height:44px;transition:background .15s,border-color .15s}.flora-formats{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:8px}.flora-formats button{padding:12px 8px;background:transparent;color:inherit;border:1px solid #bcb6a4;border-radius:6px;text-align:center}.flora-formats strong,.flora-formats span{display:block}.flora-formats strong{font-size:16px;font-weight:650}.flora-formats span{font-size:13px;margin-top:3px}.flora-formats button[aria-pressed=true]{background:var(--illu-kaki,#564a1f);border-color:var(--illu-kaki,#564a1f);color:#fffaf0}.flora-counter{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;font-size:14px}.flora-counter>div{display:flex;border:1px solid #bbb5a2;border-radius:6px;overflow:hidden}.flora-counter button{border:0;background:transparent;color:inherit;font-size:22px;min-width:42px;padding:0}.flora-counter input{width:42px!important;min-width:0;padding:0!important;border:0!important;border-radius:0;text-align:center;background:transparent;color:inherit;appearance:textfield}.flora-counter input::-webkit-inner-spin-button{appearance:none}.flora-counter button:disabled{opacity:.3;cursor:default}.flora-help{font-size:14px}.flora-scene{background:var(--flora-scene);border-radius:8px;padding:20px 12px 12px;min-height:188px;display:flex;align-items:center;justify-content:center}.flora-modules{display:flex;align-items:flex-end;justify-content:center;flex-wrap:wrap;gap:3px;max-width:100%}.flora-module{position:relative;width:clamp(43px,5vw,69px);padding:0 0 5px!important;border:0!important;border-bottom:3px solid transparent!important;border-radius:0;background:transparent!important;color:var(--illu-kaki,#564a1f)!important;min-height:0!important}.flora-module svg{width:100%;height:auto;display:block;filter:drop-shadow(1px 4px 2px #564a1f12)}.flora-module[aria-pressed=true]{border-bottom-color:var(--illu-terracotta,#a64a32)!important}.flora-module span{display:inline-grid;place-items:center;width:22px;height:22px;font-size:12px;margin-top:4px}.flora-module[aria-pressed=true] span{background:var(--illu-terracotta,#a64a32);color:white;border-radius:50%}.flora-caption{font-size:12px!important;color:#686451;margin:7px 0!important;line-height:1.4!important}.flora-active-label{font-size:14px;margin-top:18px!important}.flora-swatches{display:grid;grid-template-columns:repeat(auto-fit,minmax(60px,1fr));gap:4px}.flora-swatches button{background:transparent!important;color:inherit!important;border:1px solid transparent;border-radius:6px;display:flex;align-items:center;flex-direction:column;gap:3px;padding:5px 2px;font-size:12px;min-width:0}.flora-swatches button>span{width:24px;height:24px;background:var(--swatch);border-radius:50%;border:1px solid #0002;position:relative}.flora-swatches button[aria-pressed=true]{border-color:var(--illu-kaki,#564a1f)}.flora-swatches button[aria-pressed=true]>span:after{content:'✓';position:absolute;inset:2px;background:#fff8;border-radius:50%;color:#171717;font-size:14px;line-height:18px}.flora-play{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.flora-play button{flex:1 1 120px;background:var(--illu-kaki,#564a1f)!important;border:1px solid var(--illu-kaki,#564a1f);border-radius:6px;color:#fffaf0!important;text-decoration:none;padding:10px 12px;font-size:13px;font-weight:600;min-height:44px}.flora-play button:hover{background:var(--illu-terracotta,#a64a32)!important;border-color:var(--illu-terracotta,#a64a32)}.flora-personal{border-top:1px solid #cfc9b6;border-bottom:1px solid #cfc9b6;padding:15px 0;font-size:14px}.flora-personal summary{cursor:pointer}.flora-personal summary span{float:right;font-size:12px}.flora-personal p{margin:12px 0 0}.flora-summary{margin-top:20px}.flora-summary>div{display:flex;align-items:center;justify-content:space-between;gap:16px}.flora-summary strong{font-size:29px;color:var(--illu-kaki,#564a1f);white-space:nowrap}.flora-summary small{font-size:12px;font-weight:400}.flora-summary [data-summary-colors]{font-size:13px;margin:8px 0}.flora-form .flora-buy{display:block;width:100%;background:var(--illu-terracotta,#a64a32);color:white;border:0;border-radius:5px;padding:15px 12px;font-weight:650;font-size:16px;margin-top:14px;min-height:52px}.flora-form .flora-buy:hover{background:var(--illu-terracotta-dark,#943f2d)}.flora-draft-message{font-size:14px;color:var(--illu-kaki,#564a1f);margin-top:12px!important}.flora-page :is(button,a,input,summary):focus-visible{outline:3px solid var(--illu-terracotta,#a64a32);outline-offset:4px}.flora-editorial{padding-top:76px}.flora-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:28px}.flora-benefits article{border-top:1px solid #bcb6a4;padding-top:20px}.flora-benefits p{font-size:16px}.flora-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:28px}.flora-detail-grid img{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;border-radius:3px}.flora-detail-grid .flora-eyebrow{display:block;margin-top:20px}.flora-specs{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:40px;background:var(--flora-scene);border-radius:6px;margin-top:70px}.flora-specs dl{margin:0}.flora-specs dt{font-weight:650;margin:14px 0 4px}.flora-specs dd{margin:0;font-size:15px;line-height:1.6}.flora-tariffs{width:100%;border-collapse:collapse;font-size:16px}.flora-tariffs td,.flora-tariffs th{padding:12px 0;border-bottom:1px solid #d9d3c3;text-align:left}.flora-tariffs td:last-child,.flora-tariffs th:last-child{text-align:right}.flora-closing{text-align:center;margin-top:65px}.flora-link{display:inline-block;padding:13px 24px;background:var(--illu-kaki,#564a1f);color:white!important;border-radius:5px;text-decoration:none;margin:10px 0}
@media(min-width:1100px){.flora-modules:has(.flora-module:nth-child(7)) .flora-module{width:46px}}
@media(max-width:900px){.flora-page{padding:18px 22px 55px}.flora-opening{gap:28px}.flora-visual-column{top:90px}.flora-page h1{font-size:68px!important}.flora-formats strong{font-size:14px}.flora-formats span{font-size:12px}.flora-personal summary span{float:none;display:block;margin-top:4px}.flora-specs{gap:30px;padding:28px}}
@media(max-width:680px){.flora-page{padding:12px 20px 45px}.flora-draft-banner{font-size:10px;margin-bottom:20px}.flora-opening{display:flex;flex-direction:column;gap:20px}.flora-visual-column{position:static;width:100%}.flora-gallery{max-width:430px;margin:auto}.flora-main-photo img{max-height:55svh;object-fit:contain;aspect-ratio:auto}.flora-thumbs button{flex-basis:46px}.flora-thumbs img{width:46px;height:58px}.flora-page h1{font-size:64px!important}.flora-subtitle{font-size:22px}.flora-intro{font-size:17px}.flora-content-column{width:100%}.flora-config{margin-top:20px;padding-top:20px}.flora-module{width:51px}.flora-scene{padding:16px 9px 10px;min-height:165px}.flora-modules:has(.flora-module:nth-child(6)) .flora-module{width:43px}.flora-editorial{padding-top:48px}.flora-benefits,.flora-detail-grid{grid-template-columns:1fr;gap:22px}.flora-detail-grid article{display:grid;grid-template-columns:38% 1fr;gap:18px;align-items:center}.flora-detail-grid .flora-eyebrow{margin-top:0}.flora-detail-grid p{font-size:14px}.flora-detail-grid h3{font-size:25px!important}.flora-specs{grid-template-columns:1fr;gap:26px;padding:22px;margin-top:45px}.flora-closing{margin-top:40px}.flora-play{gap:8px}.flora-play button{font-size:12px}.flora-summary strong{font-size:27px}}
@media(prefers-reduced-motion:reduce){.flora-page *{transition:none!important;scroll-behavior:auto!important}}

.flora-mobile-bar{display:none}
@media(max-width:680px){.flora-page{padding-bottom:110px}.flora-in-view .flora-mobile-bar{position:fixed;bottom:0;left:0;right:0;z-index:990;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 20px calc(10px + env(safe-area-inset-bottom));background:var(--illu-cream,#f0ebd6);border-top:1px solid #c2baa5;box-shadow:0 -3px 15px #564a1f12}.flora-mobile-bar strong{font-size:23px;white-space:nowrap;color:var(--illu-kaki,#564a1f)}.flora-mobile-bar small{font-size:11px}.flora-mobile-bar button{background:var(--illu-terracotta,#a64a32);color:#fff;border:0;border-radius:5px;padding:11px 14px;font-size:13px;font-weight:650;min-height:44px}.flora-in-view~*{scroll-margin-bottom:90px}}

.flora-palette-pending{font-size:12px!important;padding:9px 12px;background:#eee7cc;border-left:2px solid var(--illu-terracotta,#a64a32);margin-top:12px!important}
@media(max-width:680px){body:has(.flora-in-view) .illu-back-to-top{display:none!important}}

/* Keep the FLORA cover within the available mobile width. */
@media(max-width:680px){.flora-opening .flora-gallery{width:100%;min-width:0}}

/* Append after the existing FLORA stylesheet. Native Elementor hero only. */
main.flora-page {
  --flora-sticky-top: calc(68px + var(--wp-admin--admin-bar--height, 0px));
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0 !important;
}

.flora-page .flora-luma-hero {
  width: 100%;
  max-width: none;
  padding: 0 !important;
  gap: 0 !important;
  flex-direction: row !important;
  align-items: stretch;
  overflow: visible;
}

.flora-page .flora-luma-visual {
  flex: 0 0 47.382% !important;
  width: 47.382% !important;
  min-width: 0;
  padding: 0 !important;
  background: #f0ebd6;
  justify-content: flex-start !important;
  overflow: visible;
}

.flora-page .flora-luma-copy {
  flex: 0 0 52.618% !important;
  width: 52.618% !important;
  min-width: 0;
  padding: 40px 36px !important;
  gap: 20px;
  background: #a64a32;
  color: #fffaf0;
  justify-content: flex-start !important;
}

.flora-page .flora-luma-copy h1 {
  margin: 0 !important;
  color: #f0ebd6;
  font-family: 'Londrina Solid', sans-serif !important;
  font-size: 48px !important;
  font-weight: 900;
  line-height: 1.05;
  text-transform: uppercase;
}

.flora-page .flora-luma-copy > .elementor-widget-heading:first-child .elementor-heading-title {
  color: #f0ebd6;
  font-family: 'Source Sans 3', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700;
  line-height: 1.4;
  text-transform: none;
}

/* Ines's existing inline spans remain intact, with readable hero colours. */
.flora-page .flora-luma-copy > .elementor-widget-text-editor :is(p, span, strong) {
  color: #fffaf0 !important;
}

.flora-page .flora-luma-copy > .elementor-widget-text-editor p:last-child {
  margin-bottom: 0;
}

.flora-page .flora-luma-copy .flora-config {
  width: 100%;
  margin: 0;
  padding: 24px;
  border: 0;
  border-radius: 4px;
  background: #f0ebd6;
  color: var(--illu-ink, #272726);
}

.flora-page .flora-luma-visual .elementor-widget-illu-gallery {
  position: sticky;
  top: var(--flora-sticky-top);
  flex: 0 0 auto;
  align-self: stretch;
  width: 100% !important;
  max-width: 100%;
  min-height: 0;
  height: auto;
}

.flora-page .flora-luma-visual .illu-gallery {
  --gallery-height: min(640px, calc(100svh - var(--flora-sticky-top) - 28px));
  align-items: start;
}

.flora-page .flora-luma-visual .illu-gallery-main img {
  object-fit: contain !important;
}

/* Keep the native stage ratio and scrollable vertical thumbnails unchanged. */
.flora-page .flora-editorial-content {
  width: 100% !important;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 44px 80px !important;
}

@media (max-width: 1024px) {
  .flora-page .flora-luma-hero {
    flex-direction: column !important;
  }

  .flora-page .flora-luma-visual,
  .flora-page .flora-luma-copy {
    flex-basis: auto !important;
    width: 100% !important;
  }

  .flora-page .flora-luma-visual {
    padding: 0 !important;
  }

  .flora-page .flora-luma-visual .elementor-widget-illu-gallery {
    position: static;
  }

  .flora-page .flora-luma-visual .illu-gallery {
    --gallery-height: min(640px, 72svh);
    margin-inline: auto;
  }
}

@media (max-width: 900px) {
  .flora-page .flora-editorial-content {
    padding: 0 22px 55px !important;
  }
}

@media (max-width: 767px) {
  .flora-page .flora-luma-copy {
    padding: 28px 24px !important;
  }

  .flora-page .flora-luma-copy h1 {
    font-size: 36px !important;
  }
}

@media (max-width: 680px) {
  .flora-page .flora-editorial-content {
    padding: 0 20px 110px !important;
  }
}

/* FLORA: stacked benefit cards, matching LUMA on phones only. */
@media (max-width: 767px) {
  body.postid-1010 .flora-page .flora-editorial-content {
    --flora-editorial-gutter: 22px;
  }
  body.postid-1010 .flora-page .flora-editorial {
    margin-inline: calc(-1 * var(--flora-editorial-gutter));
    padding: 40px var(--flora-editorial-gutter);
    background: #564a1f;
  }
  body.postid-1010 .flora-page .flora-editorial > .flora-eyebrow {
    color: #fffaf0;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: none;
  }
  body.postid-1010 .flora-page .flora-editorial > h2 {
    color: #fffaf0;
    font-size: 36px !important;
    font-weight: 900;
    margin: 14px 0 0;
  }
  body.postid-1010 .flora-page .flora-detail-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
    margin-top: 40px;
  }
  body.postid-1010 .flora-page .flora-detail-grid article {
    display: block;
    min-width: 0;
    padding: 0 0 28px;
    background: #f0ebd6;
  }
  body.postid-1010 .flora-page .flora-detail-grid article > br {
    display: none;
  }
  body.postid-1010 .flora-page .flora-detail-grid article > div {
    display: contents;
  }
  body.postid-1010 .flora-page .flora-detail-grid img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    margin: 0;
    border-radius: 0;
    object-fit: contain;
  }
  body.postid-1010 .flora-page .flora-detail-grid h3 {
    margin: 26px 28px 14px;
    color: #564a1f;
    font-size: 26px !important;
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: 0;
  }
  body.postid-1010 .flora-page .flora-detail-grid p {
    margin: 0 28px;
    color: #272726;
    font-size: 17px;
    line-height: 1.55;
    letter-spacing: 0;
  }
}
@media (max-width: 680px) {
  body.postid-1010 .flora-page .flora-editorial-content {
    --flora-editorial-gutter: 20px;
  }
}
