:root {
  --cam-ivory: #f6f3ec;
  --cam-white: #fff;
  --cam-green: #183c32;
  --cam-green-dark: #102d25;
  --cam-charcoal: #202522;
  --cam-brown: #6f5742;
  --cam-sage: #dce3d9;
  --cam-blush: #d8b7b0;
  --cam-gold: #a48a57;
  --cam-stone: #ded8ce;
  --cam-serif: Baskerville, "Times New Roman", Times, serif;
  --cam-sans: Arial, Helvetica, sans-serif;
  --cam-shadow: 0 18px 50px rgba(24, 60, 50, .11);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.camellia-site { margin: 0; background: var(--cam-ivory); color: var(--cam-charcoal); font-family: var(--cam-sans); font-size: 15px; line-height: 1.55; }
body.camellia-site a { color: inherit; text-decoration: none; }
body.camellia-site button, body.camellia-site input, body.camellia-site select, body.camellia-site textarea { font: inherit; }
body.camellia-site button { color: inherit; cursor: pointer; }
body.camellia-site img { display: block; height: auto; max-width: 100%; }
body.camellia-site :focus-visible { outline: 3px solid rgba(164, 138, 87, .72); outline-offset: 3px; }
.screen-reader-text { clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute !important; width: 1px; word-wrap: normal !important; }
.sr-only { clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute !important; white-space: nowrap; width: 1px; }
.screen-reader-text:focus { background: #fff; clip: auto !important; clip-path: none; color: var(--cam-green); display: block; font-weight: 700; height: auto; left: 10px; padding: 14px 20px; top: 10px; width: auto; z-index: 100000; }
.camellia-site h1, .camellia-site h2, .camellia-site h3 { font-family: var(--cam-serif); font-weight: 400; line-height: 1.05; letter-spacing: -.035em; }
.camellia-site .elementor-heading-title { font-family: var(--cam-serif); font-weight: 400; letter-spacing: -.035em; }
.camellia-site .elementor-widget-text-editor { font-family: var(--cam-sans); }
.camellia-site h1 { font-size: clamp(3rem, 6vw, 6.3rem); }
.camellia-site h2 { font-size: clamp(2.2rem, 4vw, 4.25rem); }
.camellia-site h3 { font-size: 1.45rem; }
.cam-eyebrow, .camellia-site .cam-eyebrow { color: var(--cam-brown); font-size: .73rem; font-weight: 700; letter-spacing: .19em; margin: 0 0 14px; text-transform: uppercase; }
.cam-eyebrow--light { color: rgba(255, 255, 255, .72); }
.cam-muted { color: #69716c; }
.cam-text-link { border-bottom: 1px solid currentColor; color: var(--cam-green); display: inline-block; font-weight: 700; padding-bottom: 2px; }

.cam-btn, .camellia-site .elementor-button, .camellia-site .button, .camellia-site button.button, .camellia-site input.button {
  align-items: center; border: 1px solid transparent; border-radius: 0; display: inline-flex; font-size: .79rem; font-weight: 700; justify-content: center; letter-spacing: .08em; min-height: 50px; padding: 0 28px; text-transform: uppercase; transition: .25s ease;
}
.cam-btn--primary, .camellia-site .button, .camellia-site button.button, .camellia-site input.button { background: var(--cam-green); color: #fff; }
.cam-btn--primary:hover, .camellia-site .button:hover { background: var(--cam-green-dark); color: #fff; transform: translateY(-2px); }
.cam-btn--secondary { background: transparent; border-color: var(--cam-green); color: var(--cam-green); }
.cam-btn--secondary:hover { background: var(--cam-green); color: #fff; }
.cam-btn--light { background: #fff; color: var(--cam-green); }
.cam-btn--ghost-light { border-color: rgba(255, 255, 255, .65); color: #fff; }
.cam-btn--ghost-light:hover { background: #fff; color: var(--cam-green); }
.cam-btn--full { width: 100%; }

/* Header */
.cam-header { background: var(--cam-ivory); position: relative; z-index: 90; }
.cam-announcement { align-items: center; background: var(--cam-green); color: #fff !important; display: flex; font-size: .74rem; justify-content: center; letter-spacing: .06em; min-height: 32px; padding: 6px 14px; text-align: center; }
.cam-announcement span { border-bottom: 1px solid rgba(255, 255, 255, .6); font-weight: 700; margin-left: 10px; }
.cam-nav-shell { align-items: center; background: rgba(246, 243, 236, .97); border-bottom: 1px solid rgba(32, 37, 34, .1); display: grid; grid-template-columns: 190px 1fr auto; min-height: 84px; padding: 0 clamp(22px, 4vw, 70px); }
.cam-brand { align-items: end; display: inline-grid; grid-template-columns: auto auto; line-height: 1; width: max-content; }
.cam-brand strong { font-family: var(--cam-serif); font-size: 1.46rem; font-weight: 500; grid-column: 1; letter-spacing: .09em; }
.cam-brand em { color: var(--cam-gold); font-family: var(--cam-serif); font-size: .78rem; font-style: italic; grid-column: 2; margin: 0 0 2px 2px; }
.cam-brand small { font-size: .48rem; grid-column: 1 / -1; letter-spacing: .28em; line-height: 2.4; }
.custom-logo-link img { max-height: 58px; width: auto; }
.cam-desktop-nav { min-width: 0; }
.cam-menu { align-items: center; display: flex; gap: clamp(15px, 1.55vw, 27px); justify-content: center; list-style: none; margin: 0; padding: 0; }
.cam-menu > li { position: relative; }
.cam-menu > li > a { display: block; font-size: .73rem; font-weight: 700; letter-spacing: .045em; padding: 31px 0; white-space: nowrap; }
.cam-menu .sub-menu { background: #fff; border-top: 2px solid var(--cam-gold); box-shadow: var(--cam-shadow); display: none; left: -20px; list-style: none; margin: 0; min-width: 230px; padding: 14px; position: absolute; top: 70px; z-index: 20; }
.cam-menu li:hover > .sub-menu, .cam-menu li:focus-within > .sub-menu { display: grid; }
.cam-menu .sub-menu a { display: block; padding: 10px 12px; }
.cam-menu .sub-menu a:hover { background: var(--cam-ivory); }
.cam-header-actions { align-items: center; display: flex; gap: 17px; justify-self: end; }
.cam-header-actions a { font-size: .68rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.cam-cart-count { align-items: center; background: var(--cam-green); border-radius: 50%; color: #fff; display: inline-flex; height: 20px; justify-content: center; margin-left: 3px; min-width: 20px; }
.cam-menu-toggle { background: transparent; border: 0; display: none; gap: 4px; padding: 12px; }
.cam-menu-toggle i { background: var(--cam-green); display: block; height: 1px; width: 22px; }
.cam-mobile-menu { animation: cam-slide-in .28s ease; background: var(--cam-ivory); bottom: 0; overflow: auto; padding: 0 28px 30px; position: fixed; right: 0; top: 0; width: min(430px, 92vw); z-index: 120; }
.cam-mobile-head { align-items: center; border-bottom: 1px solid var(--cam-stone); display: flex; font-family: var(--cam-serif); font-size: 1.8rem; justify-content: space-between; min-height: 80px; }
.cam-menu-close { background: none; border: 0; font-size: 2rem; }
.cam-mobile-links, .cam-mobile-links ul { list-style: none; margin: 0; padding: 0; }
.cam-mobile-links > li { border-bottom: 1px solid var(--cam-stone); }
.cam-mobile-links a { display: block; font-family: var(--cam-serif); font-size: 1.22rem; padding: 17px 0; }
.cam-mobile-links .sub-menu { padding: 0 0 12px 15px; }
.cam-mobile-links .sub-menu a { font-family: var(--cam-sans); font-size: .88rem; padding: 8px 0; }
.cam-menu-backdrop { background: rgba(12, 25, 21, .55); inset: 0; position: fixed; z-index: 110; }
@keyframes cam-slide-in { from { transform: translateX(100%); } }

/* Elementor design system */
.cam-page-content, .cam-elementor-full-width { overflow: hidden; }
.cam-elementor-full-width .elementor-section.elementor-section-full_width > .elementor-container { max-width: none; }
.cam-elementor-full-width .elementor-column-gap-no > .elementor-column > .elementor-element-populated { padding: 0; }
.camellia-site .elementor-section.elementor-section-boxed > .elementor-container { max-width: 1500px; }
.cam-section { padding: clamp(70px, 8vw, 125px) clamp(22px, 5vw, 76px); }
.cam-section--white { background: #fff; }
.cam-section--sage { background: var(--cam-sage); }
.cam-section--green { background: var(--cam-green); color: #fff; }
.cam-section--blush { background: var(--cam-blush); }
.cam-section-heading { margin-bottom: 42px; }
.cam-section-heading .elementor-heading-title { max-width: 800px; }
.cam-section-heading .elementor-widget-text-editor { color: #66706b; max-width: 680px; }
.cam-standard-content > .elementor-widget-heading .elementor-heading-title { max-width: 820px; }
.cam-standard-content > .elementor-widget-text-editor { color: #66706b; max-width: 680px; }
.cam-standard-content > .elementor-widget-shortcode, .cam-standard-content > .elementor-widget-accordion, .cam-standard-content > .elementor-widget-button { margin-top: 30px; }
.cam-hero { align-items: center; background: linear-gradient(90deg, rgba(8, 25, 21, .92), rgba(8, 25, 21, .48) 43%, rgba(8, 25, 21, .03) 72%), url(../images/camellia-hero.webp) center/cover; color: #fff; display: flex; min-height: min(760px, calc(100vh - 116px)); padding: 80px clamp(28px, 8vw, 126px); }
.cam-hero > .elementor-background-overlay { background: linear-gradient(90deg, rgba(8, 25, 21, .92), rgba(8, 25, 21, .48) 43%, rgba(8, 25, 21, .03) 72%) !important; opacity: 1 !important; }
.cam-hero > .elementor-container { margin: 0; width: 100%; }
.cam-hero-content { max-width: 730px; }
.cam-hero .elementor-heading-title { color: #fff; font-size: clamp(3.4rem, 6vw, 6.5rem); line-height: 1.01; margin: 0; }
.cam-hero .elementor-heading-title em { color: #efd3cd; font-weight: 400; }
.cam-hero .elementor-widget-text-editor { color: rgba(255, 255, 255, .84); font-size: 1.12rem; max-width: 610px; }
.cam-hero .elementor-widget-button { display: inline-block; margin: 10px 8px 0 0; width: auto; }
.cam-hero .elementor-widget-button .elementor-button { background: var(--cam-green); color: #fff; }
.cam-hero .cam-ghost-button .elementor-button { background: transparent; border-color: rgba(255, 255, 255, .65); }
.cam-hero .cam-ghost-button .elementor-button:hover { background: #fff; color: var(--cam-green); }
.cam-hero .cam-hero-trust { border-top: 1px solid rgba(255, 255, 255, .24); display: block; margin-top: 30px; max-width: 370px; padding-top: 16px; width: 100%; }
.cam-hero .cam-hero-trust, .cam-hero .cam-hero-trust p { color: rgba(255, 255, 255, .72); font-size: .72rem; margin-bottom: 0; white-space: nowrap; }
.cam-hero .cam-hero-trust p, .cam-fallback-hero-trust { display: flex; gap: 28px; }
.cam-page-hero { background: var(--cam-sage); padding: clamp(75px, 10vw, 145px) clamp(25px, 8vw, 120px); text-align: center; }
.cam-page-hero h1, .cam-page-hero .elementor-heading-title { font-size: clamp(3rem, 6vw, 6rem); margin: 0 auto 20px; }
.cam-page-hero .elementor-widget-text-editor { color: #5f6b65; font-size: 1.06rem; margin: auto; max-width: 680px; }
.cam-dark-hero { align-items: center; background: linear-gradient(90deg, rgba(13, 32, 27, .93), rgba(13, 32, 27, .25)), url(../images/camellia-hero.webp) center/cover; color: #fff; display: flex; min-height: 690px; padding: 110px 8vw; }
.cam-dark-hero > .elementor-background-overlay { background: linear-gradient(90deg, rgba(13, 32, 27, .93), rgba(13, 32, 27, .25)) !important; opacity: 1 !important; }
.cam-dark-hero .elementor-heading-title { color: #fff; }
.cam-dark-hero .elementor-widget-text-editor { color: rgba(255, 255, 255, .8); font-size: 1.08rem; max-width: 660px; }

/* Dynamic components and shortcodes */
.cam-finder-wrap { background: #fff; padding: 0 clamp(20px, 4vw, 65px) 35px; }
.cam-finder { align-items: end; background: #fff; box-shadow: var(--cam-shadow); display: grid; gap: 18px; grid-template-columns: 1.15fr repeat(3, 1fr) auto; margin: 0 auto; max-width: 1400px; padding: 28px; position: relative; top: -35px; z-index: 5; }
.cam-finder h2 { font-size: 2rem; margin: 0; }
.cam-finder label, .camellia-site .form-row label { display: grid; font-size: .7rem; font-weight: 700; gap: 7px; letter-spacing: .04em; text-transform: uppercase; }
.camellia-site select, .camellia-site input[type="text"], .camellia-site input[type="email"], .camellia-site input[type="tel"], .camellia-site input[type="password"], .camellia-site input[type="number"], .camellia-site input[type="date"], .camellia-site textarea {
  background: #fff; border: 1px solid #cfc9bf; border-radius: 0; color: var(--cam-charcoal); min-height: 49px; padding: 12px; width: 100%;
}
.camellia-site textarea { resize: vertical; }
.cam-product-shortcode .products, .camellia-site ul.products { display: grid !important; gap: 24px; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0 !important; }
.camellia-site ul.products::before, .camellia-site ul.products::after { display: none !important; }
.camellia-site ul.products li.product { float: none !important; margin: 0 !important; width: auto !important; }
.camellia-site ul.products li.product a img { aspect-ratio: .82; background: #eee9e0; margin: 0 0 17px !important; object-fit: cover; transition: transform .5s ease; width: 100%; }
.camellia-site ul.products li.product:hover a img { transform: scale(1.02); }
.camellia-site ul.products li.product .woocommerce-loop-product__title { color: var(--cam-charcoal); font-family: var(--cam-serif); font-size: 1.38rem !important; font-weight: 400; padding: 0 !important; }
.camellia-site ul.products li.product .price { color: var(--cam-charcoal) !important; font-size: .85rem !important; font-weight: 700 !important; }
.camellia-site ul.products li.product .button { background: none; border: 0; border-bottom: 1px solid; color: var(--cam-green); display: inline-block; font-size: .67rem; min-height: 0; padding: 5px 0; }
.camellia-site ul.products li.product .onsale, .camellia-site span.onsale { background: rgba(255, 255, 255, .94); border-radius: 0; color: var(--cam-green); font-size: .63rem; left: 12px; line-height: 1.3; min-height: 0; min-width: 0; padding: 8px 9px; right: auto; text-transform: uppercase; top: 12px; }
.cam-occasion-grid { display: grid; gap: 14px; grid-template-columns: repeat(4, 1fr); }
.cam-occasion-card { align-items: end; aspect-ratio: 1.04; background: linear-gradient(transparent 42%, rgba(12, 25, 21, .78)), url(../images/bouquet-grid.webp) center/cover; color: #fff !important; display: flex; font-family: var(--cam-serif); font-size: 1.6rem; overflow: hidden; padding: 22px; position: relative; }
.cam-occasion-card:nth-child(2n) { background-position: 66% center; }
.cam-occasion-card:nth-child(3n) { background-position: 100% center; }
.cam-occasion-heading { padding-bottom: 35px; }
.cam-editable-card-grid { padding: 0 clamp(22px, 5vw, 76px) 18px; }
.cam-editable-card-grid > .elementor-container { display: grid !important; gap: 14px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.cam-editable-card-grid .elementor-column { min-width: 0; width: 100% !important; }
.cam-editable-card-grid--row-1 { padding-bottom: clamp(70px, 8vw, 125px); }
.cam-editable-image-card, .cam-editable-image-card .elementor-widget-container, .cam-editable-image-card .elementor-image-box-wrapper { height: 100%; }
.cam-editable-image-card .elementor-image-box-wrapper { aspect-ratio: 1.04; overflow: hidden; position: relative; }
.cam-editable-image-card .elementor-image-box-img { height: 100%; margin: 0 !important; overflow: hidden; width: 100% !important; }
.cam-editable-image-card .elementor-image-box-img img { height: 100%; object-fit: cover; transition: transform .45s ease; width: 100%; }
.cam-editable-image-card:hover .elementor-image-box-img img { transform: scale(1.025); }
.cam-editable-image-card .elementor-image-box-content { background: linear-gradient(transparent, rgba(12, 25, 21, .82)); bottom: 0; color: #fff; left: 0; padding: 65px 22px 20px; position: absolute; right: 0; text-align: left; }
.cam-editable-image-card .elementor-image-box-title { color: #fff; font-family: var(--cam-serif); font-size: 1.6rem; font-weight: 400; margin: 0; }
.cam-editable-image-card .elementor-image-box-description { display: none; }
.cam-trust-strip { background: var(--cam-green); color: #fff; }
.cam-trust-strip .elementor-column { border-left: 1px solid rgba(255, 255, 255, .2); padding: 25px 35px; }
.cam-trust-strip .elementor-heading-title { color: #fff; font-size: 1.35rem; }
.cam-trust-strip .elementor-widget-text-editor { color: rgba(255, 255, 255, .68); }
.cam-steps .elementor-column { border-top: 1px solid var(--cam-gold); padding: 25px 20px 0 0; }
.cam-choice { background: #fff; }
.cam-choice .elementor-column:first-child { min-height: 630px; }
.cam-choice .elementor-column:first-child .elementor-widget-image, .cam-choice .elementor-column:first-child .elementor-widget-container, .cam-choice .elementor-column:first-child img { height: 100%; }
.cam-choice .elementor-column:first-child img { object-fit: cover; }
.cam-choice .elementor-column:last-child { align-items: center; padding: clamp(45px, 7vw, 110px); }
.cam-fallback-hero h1 { color: #fff; font-size: clamp(3.4rem, 6vw, 6.5rem); margin-bottom: 25px; }
.cam-fallback-hero h1 em { color: #e6cbc4; font-weight: 400; }
.cam-fallback-hero .cam-hero-content > p:not(.cam-eyebrow) { color: rgba(255, 255, 255, .84); font-size: 1.05rem; max-width: 610px; }
.cam-fallback-actions { display: flex; gap: 12px; margin: 28px 0; }
.cam-fallback-hero-trust { border-top: 1px solid rgba(255, 255, 255, .25); font-size: .75rem !important; max-width: 370px; padding-top: 18px; }
.cam-fallback-choice { align-items: stretch; background: #fff; display: grid; grid-template-columns: 1fr 1fr; }
.cam-fallback-choice > div:first-child { min-height: 620px; }
.cam-fallback-choice img { height: 100% !important; object-fit: cover; width: 100%; }
.cam-fallback-choice > div:last-child { align-self: center; padding: clamp(45px, 7vw, 110px); }
.cam-fallback-grid { display: grid; gap: 24px; grid-template-columns: repeat(4, 1fr); }
.cam-fallback-grid > div { padding: 24px; }
.cam-fallback-grid h3 { color: inherit; }
.cam-fallback-steps > div { border-top: 1px solid var(--cam-gold); }
.cam-fallback-banner > div { max-width: 680px; }
.cam-fallback-faqs { border-top: 1px solid var(--cam-stone); }
.cam-fallback-faqs details { border-bottom: 1px solid var(--cam-stone); padding: 20px 0; }
.cam-fallback-faqs summary { font-family: var(--cam-serif); font-size: 1.35rem; }
.cam-fallback-faqs details p { color: #626b66; max-width: 760px; padding-top: 12px; }
.cam-store-grid { display: grid; gap: 24px; grid-template-columns: 1fr 1fr; }
.cam-store-card { background: var(--cam-ivory); display: grid; grid-template-columns: 1.05fr .95fr; }
.cam-store-photo { background: linear-gradient(145deg, #aeb9ad, #4d655d); min-height: 400px; overflow: hidden; position: relative; }
.cam-store-photo::before { background: url(../images/camellia-hero.webp) center/cover; content: ""; inset: 0; opacity: .52; position: absolute; }
.cam-store-card:nth-child(2) .cam-store-photo { background: linear-gradient(145deg, var(--cam-blush), #725e56); }
.cam-store-copy { align-self: center; padding: 34px; }
.cam-store-copy h3 { font-size: 1.8rem; margin: 0 0 7px; }
.cam-store-copy small { color: #737a76; display: block; margin-bottom: 20px; }
.cam-store-heading { padding-bottom: 35px; }
.cam-editable-store-grid { padding: 0 clamp(22px, 5vw, 76px) clamp(70px, 8vw, 125px); }
.cam-editable-store-grid > .elementor-container { display: grid !important; gap: 24px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.cam-editable-store-card { background: var(--cam-ivory); min-width: 0; width: 100% !important; }
.cam-editable-store-card > .elementor-widget-wrap { align-content: center; display: grid !important; grid-template-columns: 1.05fr .95fr; padding: 0 !important; }
.cam-editable-store-card > .elementor-widget-wrap > .cam-store-editable-image { align-self: stretch; grid-column: 1; grid-row: 1 / 6; height: 100%; margin: 0 !important; }
.cam-store-editable-image .elementor-widget-container, .cam-store-editable-image img { height: 100%; }
.cam-store-editable-image img { min-height: 400px; object-fit: cover; width: 100%; }
.cam-editable-store-card > .elementor-widget-wrap > :not(.cam-store-editable-image) { grid-column: 2; margin-left: 34px; margin-right: 34px; }
.cam-editable-store-card > .elementor-widget-wrap > .elementor-widget-text-editor:nth-child(2) { margin-top: 34px; }
.cam-editable-store-card > .elementor-widget-wrap > .elementor-widget-button { margin-bottom: 34px; }
.cam-editable-store-card .elementor-heading-title { font-size: 1.8rem; }
.cam-wedding-banner { background: linear-gradient(90deg, rgba(14, 34, 28, .95), rgba(14, 34, 28, .48)), url(../images/camellia-hero.webp) center/cover; color: #fff; padding: clamp(85px, 11vw, 175px) clamp(25px, 9vw, 140px); }
.cam-wedding-banner > .elementor-background-overlay { background: linear-gradient(90deg, rgba(14, 34, 28, .95), rgba(14, 34, 28, .48)) !important; opacity: 1 !important; }
.cam-wedding-banner .elementor-heading-title { color: #fff; }
.cam-wedding-banner .elementor-widget-wrap { max-width: 680px; }
.cam-gallery { display: grid; gap: 7px; grid-template-columns: repeat(6, 1fr); }
.cam-gallery span { aspect-ratio: 1; background: url(../images/bouquet-grid.webp) 0 0/300% 200% no-repeat; }
.cam-gallery span:nth-child(2) { background-position: 50% 0; }
.cam-gallery span:nth-child(3) { background-position: 100% 0; }
.cam-gallery span:nth-child(4) { background-position: 0 100%; }
.cam-gallery span:nth-child(5) { background-position: 50% 100%; }
.cam-gallery span:nth-child(6) { background-position: 100% 100%; }
.cam-gallery-heading { padding-bottom: 35px; }
.cam-editable-gallery-grid { padding: 0 clamp(22px, 5vw, 76px) clamp(70px, 8vw, 125px); }
.cam-editable-gallery-grid > .elementor-container { display: grid !important; gap: 7px; grid-template-columns: repeat(6, minmax(0, 1fr)); }
.cam-editable-gallery-grid .elementor-column { min-width: 0; width: 100% !important; }
.cam-gallery-editable-image img { aspect-ratio: 1; object-fit: cover; width: 100%; }
.cam-newsletter { align-items: center; background: var(--cam-brown); color: #fff; display: grid; gap: 40px; grid-template-columns: 1fr 1fr; padding: 75px clamp(25px, 8vw, 125px); }
.cam-newsletter h2 { color: #fff; font-size: clamp(2.3rem, 4vw, 4rem); margin: 0; }
.cam-newsletter form { display: flex; }
.cam-newsletter input[type="email"] { background: transparent; border-color: rgba(255, 255, 255, .5); color: #fff; }
.cam-newsletter button { background: #fff; border: 0; color: var(--cam-green); font-size: .7rem; font-weight: 700; letter-spacing: .08em; min-width: 170px; text-transform: uppercase; }
.cam-advice-grid { display: grid; gap: 28px; grid-template-columns: repeat(3, 1fr); }
.cam-advice-card { background: #fff; }
.cam-advice-card__image { aspect-ratio: 1.15; background: url(../images/bouquet-grid.webp) center/300% 200%; }
.cam-advice-card:nth-child(2) .cam-advice-card__image { background-position: 50% 0; }
.cam-advice-card:nth-child(3) .cam-advice-card__image { background-position: 100% 0; }
.cam-advice-card:nth-child(4) .cam-advice-card__image { background-position: 0 100%; }
.cam-advice-card:nth-child(5) .cam-advice-card__image { background-position: 50% 100%; }
.cam-advice-card:nth-child(6) .cam-advice-card__image { background-position: 100% 100%; }
.cam-advice-card__copy { padding: 25px; }
.cam-advice-card__copy h3 { font-size: 1.8rem; }
.cam-blog-section { overflow: hidden; }
.cam-blog-grid { display: grid; gap: 28px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cam-blog-card { background: #fff; box-shadow: 0 14px 40px rgba(24, 60, 50, .08); min-width: 0; }
.cam-blog-card__media { display: block; overflow: hidden; }
.cam-blog-card__image { aspect-ratio: 1.15; background-position: 0 0; background-repeat: no-repeat; background-size: 300% 200%; transition: transform .35s ease; width: 100%; }
.cam-blog-card__image--1 { background-position: 50% 0; }
.cam-blog-card__image--2 { background-position: 100% 0; }
.cam-blog-card__image--3 { background-position: 0 100%; }
.cam-blog-card__image--4 { background-position: 50% 100%; }
.cam-blog-card__image--5 { background-position: 100% 100%; }
.cam-blog-card__media:hover .cam-blog-card__image { transform: scale(1.025); }
.cam-blog-card__copy { padding: 26px; }
.cam-blog-card__copy h2, .cam-blog-card__copy h3 { font-size: 1.8rem; margin: 0 0 12px; }
.cam-blog-card__copy > p:not(.cam-eyebrow) { color: #69716c; }
.cam-blog-pagination { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-top: 50px; }
.cam-blog-pagination .page-numbers { align-items: center; border: 1px solid var(--cam-stone); display: inline-flex; justify-content: center; min-height: 42px; min-width: 42px; padding: 8px 13px; }
.cam-blog-pagination .current, .cam-blog-pagination a:hover { background: var(--cam-green); border-color: var(--cam-green); color: #fff; }
.cam-blog-empty { background: #fff; padding: 55px; text-align: center; }
.cam-contact-form { display: grid; gap: 16px; grid-template-columns: 1fr 1fr; }
.cam-contact-form .cam-wide, .cam-contact-form button, .cam-form-status { grid-column: 1 / -1; }
.cam-contact-form label { display: grid; font-size: .7rem; font-weight: 700; gap: 7px; letter-spacing: .04em; text-transform: uppercase; }
.cam-form-status { background: var(--cam-sage); color: var(--cam-green); padding: 14px; }
.cam-policy-copy { background: #fff; margin: 70px auto 110px; max-width: 900px; padding: 65px; }
.cam-policy-copy h2 { font-size: 2.2rem; margin-top: 45px; }
.cam-owner-note { background: var(--cam-sage); color: var(--cam-green); font-weight: 700; padding: 18px; }

/* WooCommerce */
.cam-shop-shell { margin: 0 auto; max-width: 1500px; min-height: 600px; padding: 65px clamp(22px, 5vw, 75px) 110px; }
.camellia-site .woocommerce-products-header { background: var(--cam-sage); margin: -65px calc(-1 * clamp(22px, 5vw, 75px)) 50px; padding: 90px 25px; text-align: center; }
.camellia-site .woocommerce-products-header__title { margin: 0; }
.camellia-site .woocommerce-result-count, .camellia-site .woocommerce-ordering { margin-bottom: 30px; }
.camellia-site .woocommerce-ordering select { min-height: 42px; }
.camellia-site div.product { display: grid; gap: clamp(35px, 5vw, 80px); grid-template-columns: 1.05fr .95fr; }
.camellia-site div.product div.images, .camellia-site div.product div.summary { float: none; width: auto; }
.camellia-site div.product .product_title { font-size: clamp(3rem, 5vw, 5.2rem); }
.camellia-site div.product p.price, .camellia-site div.product span.price { color: var(--cam-green); font-family: var(--cam-serif); font-size: 2rem; }
.camellia-site div.product form.cart .variations { margin: 25px 0; }
.camellia-site div.product form.cart .variations th, .camellia-site div.product form.cart .variations td { display: block; text-align: left; width: 100%; }
.camellia-site div.product form.cart .variations label { font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; }
.camellia-site div.product form.cart div.quantity { margin-right: 10px; }
.camellia-site .quantity .qty { min-height: 50px; width: 72px; }
.camellia-site .woocommerce-tabs { grid-column: 1 / -1; }
.camellia-site .related.products { grid-column: 1 / -1; }
.camellia-site .woocommerce-message, .camellia-site .woocommerce-info, .camellia-site .woocommerce-error { background: #fff; border-top-color: var(--cam-gold); }
.camellia-site .woocommerce-message::before, .camellia-site .woocommerce-info::before { color: var(--cam-green); }
.camellia-site table.shop_table { background: #fff; border: 1px solid var(--cam-stone); border-collapse: collapse; border-radius: 0; }
.camellia-site table.shop_table th, .camellia-site table.shop_table td { border-color: var(--cam-stone); padding: 16px; }
.camellia-site .cart-collaterals .cart_totals, .camellia-site .woocommerce-checkout-review-order { background: #fff; box-shadow: var(--cam-shadow); padding: 28px; }
.camellia-site #payment { background: var(--cam-sage); border-radius: 0; }
.camellia-site .woocommerce-breadcrumb { color: #6a716d; font-size: .75rem; }
.camellia-site .woocommerce-pagination ul.page-numbers { border: 0; }
.camellia-site .woocommerce-pagination ul.page-numbers li { border: 0; margin: 3px; }
.camellia-site .woocommerce-pagination ul.page-numbers li span, .camellia-site .woocommerce-pagination ul.page-numbers li a { background: #fff; padding: 12px 16px; }
.camellia-site .woocommerce-pagination ul.page-numbers li span.current { background: var(--cam-green); color: #fff; }
.camellia-order-details{border-top:1px solid var(--cam-stone);margin-top:25px;padding-top:5px}.camellia-order-step{align-items:center;display:flex;font-weight:700;gap:12px;margin:22px 0 16px}.camellia-order-step b{align-items:center;border:1px solid var(--cam-gold);border-radius:50%;color:var(--cam-gold);display:inline-flex;font-family:var(--cam-serif);font-size:1rem;height:28px;justify-content:center;width:28px}.camellia-order-details>label,.camellia-order-field-grid label{display:grid;font-size:.7rem;font-weight:700;gap:7px;letter-spacing:.04em;margin-bottom:14px;text-transform:uppercase}.camellia-order-details label small{color:#69716c;font-size:.68rem;font-weight:400;letter-spacing:0;text-transform:none}.camellia-delivery-area[hidden]{display:none!important}.camellia-order-field-grid{display:grid;gap:0 16px;grid-template-columns:1fr 1fr}.camellia-order-field-grid .wide{grid-column:1/-1}.camellia-order-note{background:var(--cam-sage);color:var(--cam-green);font-size:.75rem;padding:14px}.camellia-site div.product form.cart{display:block}.camellia-site div.product form.cart .single_add_to_cart_button{min-width:220px}
.camellia-product-addons{border-top:1px solid var(--cam-stone);margin-top:28px;padding-top:4px}.camellia-addon-grid{display:grid;gap:8px;grid-template-columns:1fr 1fr;margin-bottom:15px}.camellia-addon{align-items:center;background:#fff;border:1px solid var(--cam-stone);display:grid;gap:10px;grid-template-columns:65px 1fr auto;padding:7px}.camellia-addon img{height:65px;object-fit:cover;width:65px}.camellia-addon span{font-size:.72rem;font-weight:700}.camellia-addon strong{display:block;font-size:.7rem;margin-top:5px}.camellia-addon em{color:var(--cam-green);font-size:.65rem;font-style:normal;font-weight:700}
.woocommerce-cart .cam-page-content,.woocommerce-checkout .cam-page-content,.woocommerce-account .cam-page-content{margin:0;max-width:none;min-height:600px;padding:0}.woocommerce-cart .cam-page-content>.woocommerce,.woocommerce-checkout .cam-page-content>.woocommerce,.woocommerce-account .cam-page-content>.woocommerce{margin:auto;max-width:1350px;padding:70px 45px 120px}.woocommerce-cart .cam-page-content>.woocommerce{display:grid;gap:45px;grid-template-columns:1fr 390px}.woocommerce-cart .woocommerce-notices-wrapper,.woocommerce-cart .woocommerce-cart-form{grid-column:1}.woocommerce-cart .cart-collaterals{grid-column:2;grid-row:1/4}.woocommerce-cart .cart-collaterals .cart_totals{float:none;position:sticky;top:25px;width:100%}.woocommerce-cart table.shop_table .product-thumbnail img{height:120px;object-fit:cover;width:120px}.woocommerce-cart table.shop_table .product-name a{font-family:var(--cam-serif);font-size:1.35rem}.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{font-size:.79rem;margin:0;width:100%}.camellia-checkout-head{align-items:center;border-bottom:1px solid var(--cam-stone);display:flex;justify-content:space-between;padding:24px 7vw}.camellia-checkout-head>span{color:#66706b;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.woocommerce-checkout .woocommerce-form-login-toggle,.woocommerce-checkout .woocommerce-form-coupon-toggle{margin-bottom:16px}.woocommerce-checkout form.checkout{align-items:start;display:grid;gap:20px 55px;grid-template-columns:1fr 390px}.woocommerce-checkout form.checkout>.col2-set{grid-column:1;grid-row:1/4;width:100%}.woocommerce-checkout #order_review_heading{grid-column:2;margin:0}.woocommerce-checkout #order_review{grid-column:2;position:sticky;top:25px}.woocommerce-checkout .col2-set .col-1,.woocommerce-checkout .col2-set .col-2{float:none;width:100%}.woocommerce-checkout .col2-set .col-2{margin-top:35px}.woocommerce-checkout h3{font-size:2rem}.woocommerce-account .woocommerce{display:grid;gap:45px;grid-template-columns:250px 1fr}.woocommerce-account .woocommerce-notices-wrapper{grid-column:1/-1}.woocommerce-account .woocommerce-MyAccount-navigation{width:auto}.woocommerce-account .woocommerce-MyAccount-navigation ul{background:#fff;list-style:none;margin:0;padding:18px}.woocommerce-account .woocommerce-MyAccount-navigation a{display:block;padding:10px}.woocommerce-account .woocommerce-MyAccount-content{background:#fff;padding:35px;width:auto}.woocommerce-order-received .woocommerce-order{background:#fff;margin:auto;max-width:1000px;padding:55px}.woocommerce-order-received .woocommerce-notice--success{font-family:var(--cam-serif);font-size:2rem;text-align:center}

/* Content and footer */
.cam-content-shell { display: grid; gap: 30px; grid-template-columns: repeat(3, 1fr); margin: auto; max-width: 1400px; padding: 80px 5vw 120px; }
.cam-article-card { background: #fff; padding: 30px; }
.cam-single { margin: auto; max-width: 1180px; padding: 55px 30px 0; }
.cam-single > header { text-align: center; }
.cam-single > header h1 { font-size: clamp(3rem, 6vw, 5.8rem); margin: 0 auto 24px; max-width: 1000px; }
.cam-single-deck { color: #626b66; font-size: 1.1rem; margin: 0 auto 40px; max-width: 760px; }
.cam-visible-breadcrumbs { align-items: center; color: #6b716e; display: flex; flex-wrap: wrap; font-size: .74rem; gap: 9px; margin-bottom: 60px; }
.cam-visible-breadcrumbs a { border-bottom: 1px solid var(--cam-stone); }
.cam-single-featured { margin: 0; }
.cam-single-featured img { display: block; height: auto; max-height: 720px; object-fit: cover; width: 100%; }
.cam-single-copy { background: #fff; font-size: 1.05rem; margin: 0 auto; max-width: 900px; padding: clamp(32px, 7vw, 80px); }
.cam-single-copy h2 { font-size: clamp(2rem, 4vw, 3rem); margin: 55px 0 18px; }
.cam-single-copy h3 { font-size: 1.55rem; margin: 36px 0 12px; }
.cam-single-copy p, .cam-single-copy li { color: #4f5853; line-height: 1.8; }
.cam-single-copy a { border-bottom: 1px solid var(--cam-gold); color: var(--cam-green); font-weight: 700; }
.cam-single-cta { align-items: center; background: var(--cam-green); color: #fff; display: grid; gap: 40px; grid-template-columns: 1fr auto; margin: 70px 0; padding: 55px clamp(28px, 6vw, 70px); }
.cam-single-cta h2 { color: #fff; font-size: clamp(2.2rem, 4vw, 3.7rem); margin: 0 0 14px; }
.cam-single-cta > div:last-child { display: flex; flex-wrap: wrap; gap: 10px; }
.cam-related-posts { padding: 35px 0 90px; }
.cam-related-posts > h2 { font-size: clamp(2.3rem, 4vw, 4rem); margin-bottom: 40px; }
.cam-single > .cam-newsletter { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
.cam-not-found, .cam-empty { align-items: center; display: flex; flex-direction: column; justify-content: center; min-height: 680px; padding: 80px 25px; text-align: center; }
.cam-not-found > div { display: flex; gap: 12px; }
.cam-footer { background: #112d26; color: rgba(255, 255, 255, .78); }
.cam-footer-main { display: grid; gap: 50px; grid-template-columns: 1.5fr repeat(3, 1fr); padding: 80px clamp(25px, 7vw, 105px); }
.cam-footer-main > div { align-content: start; display: grid; gap: 11px; }
.cam-footer-main h2 { color: #fff; font-size: 1.2rem; }
.cam-footer-main ul { list-style: none; margin: 0; padding: 0; }
.cam-footer-main li { margin: 9px 0; }
.cam-footer-main a:hover { color: #fff; }
.cam-footer-about p { max-width: 350px; }
.cam-brand--footer { color: #fff !important; margin-bottom: 12px; }
.cam-footer small { color: rgba(255, 255, 255, .52); }
.cam-footer-bottom { border-top: 1px solid rgba(255, 255, 255, .13); display: flex; font-size: .65rem; justify-content: space-between; padding: 22px clamp(25px, 7vw, 105px); }

/* Elementor editor: keep clickable canvas layers predictable. */
.elementor-editor-active .cam-hero, .elementor-editor-active .cam-dark-hero { min-height: 640px; }
.elementor-editor-active .cam-finder { top: 0; }

@media (max-width: 1180px) {
  .cam-nav-shell { grid-template-columns: 160px 1fr auto; }
  .cam-menu { gap: 13px; }
  .cam-menu > li > a { font-size: .65rem; }
  .cam-finder { grid-template-columns: 1fr 1fr 1fr; }
  .cam-finder > div:first-child { grid-column: 1 / -1; }
  .cam-product-shortcode .products, .camellia-site ul.products { grid-template-columns: repeat(3, 1fr); }
  .cam-store-card { grid-template-columns: 1fr; }
  .cam-store-photo { min-height: 320px; }
  .cam-editable-store-card > .elementor-widget-wrap { grid-template-columns: 1fr; }
  .cam-editable-store-card > .elementor-widget-wrap > .cam-store-editable-image { grid-column: 1; grid-row: auto; }
  .cam-editable-store-card > .elementor-widget-wrap > :not(.cam-store-editable-image) { grid-column: 1; }
  .cam-store-editable-image img { min-height: 320px; }
}

@media (max-width: 900px) {
  .cam-nav-shell { grid-template-columns: 44px 1fr auto; min-height: 72px; padding: 0 16px; }
  .cam-menu-toggle { display: grid; }
  .cam-nav-shell > .cam-brand, .cam-nav-shell > .custom-logo-link { justify-self: center; transform: scale(.9); }
  .cam-desktop-nav { display: none; }
  .cam-header-actions > :not(:last-child) { display: none; }
  .cam-hero { min-height: 680px; }
  .cam-finder { grid-template-columns: 1fr 1fr; top: 0; }
  .cam-finder-wrap { padding-top: 30px; }
  .cam-product-shortcode .products, .camellia-site ul.products { grid-template-columns: 1fr 1fr; }
  .cam-occasion-grid { grid-template-columns: 1fr 1fr; }
  .cam-choice > .elementor-container { display: block; }
  .cam-choice .elementor-column { width: 100%; }
  .cam-fallback-choice { grid-template-columns: 1fr; }
  .cam-fallback-choice > div:first-child { min-height: 480px; }
  .cam-fallback-grid { grid-template-columns: 1fr 1fr; }
  .cam-editable-card-grid > .elementor-container { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cam-editable-gallery-grid > .elementor-container { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cam-trust-strip > .elementor-container, .cam-steps > .elementor-container { flex-wrap: wrap; }
  .cam-trust-strip .elementor-column, .cam-steps .elementor-column { width: 50%; }
  .cam-store-grid { grid-template-columns: 1fr; }
  .cam-editable-store-grid > .elementor-container { grid-template-columns: 1fr; }
  .cam-newsletter { grid-template-columns: 1fr; }
  .cam-advice-grid, .cam-blog-grid { grid-template-columns: 1fr 1fr; }
	.cam-single-cta { grid-template-columns: 1fr; }
  .camellia-site div.product { grid-template-columns: 1fr; }
  .cam-content-shell { grid-template-columns: 1fr 1fr; }
  .cam-footer-main { grid-template-columns: 1.5fr 1fr 1fr; }
  .cam-footer-main > div:last-child { grid-column: 2 / -1; }
}

@media (max-width: 620px) {
  body.camellia-site { font-size: 14px; }
  .cam-announcement span { display: none; }
  .cam-header-actions .cam-bag { font-size: 0; }
  .cam-header-actions .cam-bag::before { content: "Bag"; font-size: .65rem; }
  .cam-cart-count { font-size: .65rem; }
  .cam-hero { background-position: 66% center; min-height: 650px; padding: 75px 24px 40px; }
  .cam-hero .elementor-heading-title { font-size: 3.25rem; }
  .cam-fallback-hero h1 { font-size: 3.25rem; }
  .cam-hero .cam-hero-trust, .cam-hero .cam-hero-trust p { font-size: .65rem; white-space: normal; }
  .cam-hero .cam-hero-trust p, .cam-fallback-hero-trust { flex-wrap: wrap; gap: 6px 16px; }
  .cam-fallback-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .cam-fallback-choice > div:first-child { min-height: 380px; }
  .cam-fallback-choice > div:last-child { padding: 55px 24px; }
  .cam-fallback-grid { grid-template-columns: 1fr; }
  .cam-editable-card-grid > .elementor-container { gap: 7px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cam-editable-gallery-grid > .elementor-container { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cam-editable-image-card .elementor-image-box-content { padding: 42px 13px 12px; }
  .cam-editable-image-card .elementor-image-box-title { font-size: 1.25rem; }
  .cam-finder { grid-template-columns: 1fr; padding: 22px; }
  .cam-finder > div:first-child { grid-column: auto; }
  .cam-section { padding: 65px 18px; }
  .cam-product-shortcode .products, .camellia-site ul.products { gap: 12px; grid-template-columns: 1fr 1fr; }
  .camellia-site ul.products li.product .woocommerce-loop-product__title { font-size: 1.1rem !important; }
  .cam-occasion-grid { gap: 7px; }
  .cam-occasion-card { font-size: 1.25rem; padding: 13px; }
  .cam-choice .elementor-column:first-child { min-height: 380px; }
  .cam-choice .elementor-column:last-child { padding: 55px 24px; }
  .cam-trust-strip .elementor-column, .cam-steps .elementor-column { border-bottom: 1px solid rgba(255, 255, 255, .2); border-left: 0; width: 100%; }
  .cam-gallery { grid-template-columns: repeat(3, 1fr); }
  .cam-newsletter { padding: 55px 22px; }
  .cam-newsletter form { display: grid; }
  .cam-newsletter button { min-height: 50px; }
  .cam-page-hero { padding: 65px 22px; }
  .cam-page-hero h1, .cam-page-hero .elementor-heading-title { font-size: 3.2rem; }
  .cam-dark-hero { min-height: 640px; padding: 90px 24px; }
  .cam-advice-grid, .cam-blog-grid, .cam-content-shell { grid-template-columns: 1fr; }
	.cam-single { padding-left: 16px; padding-right: 16px; }
	.cam-visible-breadcrumbs { margin-bottom: 40px; }
	.cam-single-copy { padding: 32px 22px; }
	.cam-single-cta { margin: 45px 0; padding: 40px 24px; }
	.cam-single-cta > div:last-child { display: grid; }
  .cam-contact-form { grid-template-columns: 1fr; }
  .cam-contact-form > * { grid-column: 1 !important; }
  .cam-policy-copy { margin: 30px 15px 80px; padding: 30px; }
  .cam-shop-shell { padding: 40px 14px 80px; }
  .camellia-site .woocommerce-products-header { margin: -40px -14px 35px; padding: 65px 18px; }
  .camellia-site div.product .product_title { font-size: 3.2rem; }
  .cam-footer-main { grid-template-columns: 1fr; padding: 60px 25px; }
  .cam-footer-main > div:last-child { grid-column: auto; }
  .cam-footer-bottom { display: grid; gap: 7px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* -------------------------------------------------------------------------
   Version 3: full-site literal port of the approved Sites source.
   These rules intentionally mirror app/globals.css from the original build.
   ------------------------------------------------------------------------- */
body.camellia-site { background: #f6f3ec; color: #202522; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 1.55; }
.camellia-site .site-header, .camellia-site .footer, .camellia-original-home, .camellia-original-page, .camellia-original-shop { --ivory:#f6f3ec;--white:#fff;--green:#183c32;--green-dark:#102d25;--charcoal:#202522;--brown:#6f5742;--sage:#dce3d9;--blush:#d8b7b0;--gold:#a48a57;--stone:#ded8ce;--serif:Georgia,"Times New Roman",serif;--sans:Arial,Helvetica,sans-serif;--shadow:0 18px 50px rgba(24,60,50,.11); }
.camellia-original-home h1,.camellia-original-home h2,.camellia-original-home h3,.camellia-original-shop h1,.camellia-original-shop h2,.camellia-original-shop h3{font-family:var(--serif);font-weight:400;line-height:1.02;letter-spacing:-.035em}
.camellia-original-home .sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}
.camellia-original-home h1,.camellia-original-shop h1{font-size:clamp(3rem,6vw,6.3rem)}.camellia-original-home h2,.camellia-original-shop h2{font-size:clamp(2.2rem,4vw,4.25rem)}
.camellia-original-home .eyebrow,.camellia-original-shop .eyebrow{color:var(--brown);font-size:.73rem;font-weight:700;letter-spacing:.19em;margin-bottom:14px;text-transform:uppercase}.camellia-original-home .eyebrow.light{color:rgba(255,255,255,.72)}
.camellia-original-home .text-link,.camellia-original-shop .text-link{border-bottom:1px solid currentColor;color:var(--green);display:inline-block;font-weight:700;padding-bottom:2px}
.camellia-original-home .btn,.camellia-original-shop .btn,.mobile-drawer .btn{align-items:center;border:1px solid transparent;border-radius:0;display:inline-flex;font-size:.79rem;font-weight:700;justify-content:center;letter-spacing:.08em;min-height:50px;padding:0 28px;text-transform:uppercase;transition:.25s ease}.camellia-original-home .btn.primary,.camellia-original-shop .btn.primary,.mobile-drawer .btn.primary{background:var(--green);color:#fff}.camellia-original-home .btn.primary:hover,.camellia-original-shop .btn.primary:hover{background:var(--green-dark);transform:translateY(-2px)}.camellia-original-home .btn.secondary,.camellia-original-shop .btn.secondary{background:transparent;border-color:var(--green);color:var(--green)}.camellia-original-home .btn.secondary:hover,.camellia-original-shop .btn.secondary:hover{background:var(--green);color:#fff}.camellia-original-home .btn.light{background:#fff;color:var(--green)}.camellia-original-home .btn.ghost-light{border-color:rgba(255,255,255,.65);color:#fff}.camellia-original-home .btn.ghost-light:hover{background:#fff;color:var(--green)}.camellia-original-home .btn.full,.camellia-original-shop .btn.full,.mobile-drawer .btn.full{width:100%}

/* Exact original header. */
.site-header{background:var(--ivory);position:relative;z-index:90}.announcement{align-items:center;background:var(--green);border:0;box-shadow:none;color:#fff!important;display:flex;font-size:.74rem;letter-spacing:.06em;min-height:32px;outline:0;overflow:hidden;padding:0 16px;text-decoration:none;white-space:nowrap}
.announcement-track{-webkit-backface-visibility:hidden;backface-visibility:hidden;border:0;box-shadow:none;display:flex;flex-shrink:0;outline:0;white-space:nowrap;width:max-content}
.announcement-copy{border:0;box-shadow:none;color:#fff;filter:none;font-family:Inter,Arial,Helvetica,sans-serif;font-size:.8rem;font-weight:560;letter-spacing:.15px;opacity:1;outline:0;padding-right:3.5em;text-rendering:geometricPrecision;text-shadow:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;white-space:nowrap}
.announcement-copy[aria-hidden]{display:none}
@media(prefers-reduced-motion:no-preference){
.announcement .announcement-copy[aria-hidden]{display:block}
.announcement .announcement-track{animation:cam-marquee 42s linear infinite}
.announcement:hover .announcement-track,.announcement:focus-within .announcement-track{animation-play-state:paused}
}
@keyframes cam-marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}.nav-shell{align-items:center;background:rgba(246,243,236,.96);border-bottom:1px solid rgba(32,37,34,.1);display:grid;grid-template-columns:188px 1fr auto;min-height:84px;padding:0 clamp(22px,4vw,70px);position:relative}.brand{display:inline-flex;flex-direction:column;line-height:.8;width:max-content}.brand b{font-family:var(--serif);font-size:1.46rem;font-weight:500;letter-spacing:.09em}.brand span{color:var(--gold);font-family:var(--serif);font-size:.85rem;font-style:italic;margin-left:auto}.brand small{font-size:.48rem;letter-spacing:.28em;line-height:2.4}.desktop-nav{align-items:center;display:flex;gap:clamp(15px,1.55vw,27px);justify-content:center}.desktop-nav>a{font-size:.73rem;font-weight:700;letter-spacing:.045em;padding:31px 0;white-space:nowrap}.header-actions{align-items:center;display:flex;gap:17px;justify-self:end}.header-actions a{background:transparent;border:0;font-size:.68rem;font-weight:700;letter-spacing:.06em;padding:10px 0;text-transform:uppercase}.header-actions em{align-items:center;background:var(--green);border-radius:50%;color:#fff;display:inline-flex;font-style:normal;height:20px;justify-content:center;margin-left:3px;min-width:20px}.mobile-menu-button{background:transparent;border:0;display:none;gap:4px;padding:12px}.mobile-menu-button i{background:var(--green);display:block;height:1px;width:22px}.mobile-drawer{animation:cam-slide-in .28s ease;background:var(--ivory);bottom:0;height:100%;overflow:auto;padding:0 28px 30px;position:fixed;right:0;top:0;width:min(430px,92vw);z-index:120}.drawer-head{align-items:center;border-bottom:1px solid var(--stone);display:flex;font-family:var(--serif);font-size:1.8rem;justify-content:space-between;min-height:80px}.drawer-head button{background:none;border:0;font-size:2rem}.drawer-search{background:#fff;border:1px solid var(--stone);color:#777;display:block;margin:24px 0;padding:15px;text-align:left;width:100%}.drawer-link{border-bottom:1px solid var(--stone);display:block;font-family:var(--serif);font-size:1.22rem;padding:18px 0}.mobile-drawer>.btn{margin-top:25px}
.desktop-nav details{position:relative}.desktop-nav summary{cursor:pointer;font-size:.73rem;font-weight:700;letter-spacing:.045em;list-style:none;padding:31px 0;white-space:nowrap}.desktop-nav summary::-webkit-details-marker{display:none}.desktop-nav summary:after{content:" +";font-size:.72em}.desktop-nav details[open] summary:after{content:" −"}.mega-menu{background:#fff;border-top:2px solid var(--gold);box-shadow:var(--shadow);display:grid;left:-22px;min-width:235px;padding:15px;position:absolute;top:69px;z-index:30}.mega-menu.two-col{grid-template-columns:1fr 1fr;min-width:390px}.mega-menu a{padding:10px 12px;white-space:nowrap}.mega-menu a:hover{background:var(--ivory)}.header-actions button{background:transparent;border:0;font-size:.68rem;font-weight:700;letter-spacing:.06em;padding:10px 0;text-transform:uppercase}.drawer-group{border-bottom:1px solid var(--stone)}.drawer-group>button{align-items:center;background:none;border:0;display:flex;font-family:var(--serif);font-size:1.22rem;justify-content:space-between;padding:18px 0;width:100%}.drawer-group>div{display:grid;padding:0 0 14px 15px}.drawer-group>div a{font-size:.86rem;padding:7px 0}.cam-menu-backdrop{background:rgba(12,25,21,.55);inset:0;position:fixed;z-index:110}.drawer-backdrop{background:rgba(12,25,21,.58);inset:0;position:fixed;z-index:140}.mini-cart{background:var(--ivory);bottom:0;display:flex;flex-direction:column;overflow:auto;padding:0 28px 30px;position:absolute;right:0;top:0;width:min(480px,94vw)}.mini-cart .woocommerce-mini-cart{list-style:none;margin:0;padding:0}.mini-cart .woocommerce-mini-cart-item{border-bottom:1px solid var(--stone);display:grid;gap:12px;grid-template-columns:82px 1fr;padding:18px 25px 18px 0;position:relative}.mini-cart .woocommerce-mini-cart-item img{grid-row:1/4;height:82px;object-fit:cover;width:82px}.mini-cart .remove_from_cart_button{font-size:1.4rem;position:absolute;right:0;top:18px}.mini-cart .quantity{color:#6d746f;font-size:.78rem}.mini-cart .woocommerce-mini-cart__total{border-top:1px solid var(--stone);display:flex;font-family:var(--serif);font-size:1.25rem;justify-content:space-between;margin-top:auto;padding-top:20px}.mini-cart .woocommerce-mini-cart__buttons{display:grid;gap:8px}.mini-cart .woocommerce-mini-cart__buttons .button{width:100%}.mini-cart .woocommerce-mini-cart__empty-message{margin:auto;text-align:center}.search-overlay{align-items:flex-start;background:rgba(246,243,236,.985);display:flex;inset:0;justify-content:center;padding:16vh 24px;position:fixed;z-index:150}.search-overlay>div{max-width:850px;position:relative;width:100%}.search-close{background:none;border:0;font-size:2.5rem;position:absolute;right:0;top:-70px}.search-overlay h2{font-size:clamp(2.5rem,5vw,4.5rem)}.search-overlay form{display:flex}.search-overlay input{background:transparent!important;border-width:0 0 1px!important;font-family:var(--serif)!important;font-size:1.3rem}.search-overlay form button{background:var(--green);border:0;color:#fff;padding:0 35px}.search-overlay>div>p:last-child{display:flex;flex-wrap:wrap;gap:16px;margin-top:25px}.search-overlay a{border-bottom:1px solid}.site-header [hidden]{display:none!important}

/* Remove every Elementor wrapper measurement around the exact page. */
.cam-original-elementor-shell,.cam-original-elementor-shell>.elementor-container,.cam-original-elementor-shell .elementor-column,.cam-original-elementor-shell .elementor-widget-wrap,.cam-original-elementor-shell .elementor-widget-container{margin:0!important;max-width:none!important;padding:0!important;width:100%!important}.cam-original-elementor-shell .elementor-widget-camellia-original-home,.cam-original-elementor-shell .elementor-widget-camellia-original-page{margin:0!important;width:100%!important}

/* Exact original homepage. */
.camellia-original-home{background:var(--ivory);color:var(--charcoal);font-family:var(--sans);overflow:hidden}
.camellia-original-home .hero{color:#fff;height:min(760px,calc(100vh - 116px));min-height:610px;overflow:hidden;position:relative}.camellia-original-home .hero-image{background-position:center;background-repeat:no-repeat;background-size:cover;inset:0;position:absolute}.camellia-original-home .hero-shade{background:linear-gradient(90deg,rgba(12,25,21,.82),rgba(12,25,21,.4) 40%,rgba(12,25,21,.02) 68%);inset:0;position:absolute}.camellia-original-home .hero-content{left:clamp(28px,8vw,126px);max-width:730px;position:absolute;top:50%;transform:translateY(-50%)}.camellia-original-home .hero-content h1{font-size:clamp(3.4rem,6vw,6.5rem);margin-bottom:25px}.camellia-original-home .hero-content h1 em{color:#e6cbc4;font-weight:400}.camellia-original-home .hero-content>p:not(.eyebrow){color:rgba(255,255,255,.84);font-size:1.12rem;max-width:600px}.camellia-original-home .hero-actions{display:flex;gap:12px;margin:30px 0}.camellia-original-home .hero-trust{border-top:1px solid rgba(255,255,255,.23);display:flex;gap:28px;padding-top:18px}.camellia-original-home .hero-trust span{color:rgba(255,255,255,.78);font-size:.75rem}
.camellia-original-home .finder-wrap{background:#fff;padding:0 clamp(20px,4vw,65px) 35px}.camellia-original-home .finder{align-items:end;background:#fff;box-shadow:var(--shadow);display:grid;gap:18px;grid-template-columns:1.15fr repeat(3,1fr) auto;margin:0 auto;max-width:1400px;padding:28px;position:relative;top:-35px;z-index:5}.camellia-original-home .finder h2{font-size:2rem;margin:0}.camellia-original-home .finder label,.camellia-original-shop .filter-label{display:grid;font-size:.7rem;font-weight:700;gap:7px;letter-spacing:.04em;text-transform:uppercase}.camellia-original-home select,.camellia-original-shop select{background:#fff;border:1px solid #cfc9bf;border-radius:0;color:var(--charcoal);min-height:49px;padding:12px;width:100%}
.camellia-original-home .section{margin:0 auto;max-width:1500px;padding:clamp(70px,8vw,125px) clamp(22px,5vw,76px)}.camellia-original-home .section-heading{display:grid;grid-template-columns:.55fr 1.45fr;margin-bottom:45px}.camellia-original-home .section-heading h2{margin:0 0 15px;max-width:750px}.camellia-original-home .section-heading>div>p{color:#66706b;font-size:1rem;max-width:580px}.camellia-original-home .section-heading .text-link{margin-top:10px}.camellia-original-home .most-loved{background:var(--sage);max-width:none}.camellia-original-home .most-loved>*{margin-left:auto;margin-right:auto;max-width:1350px}
.camellia-original-home .product-grid,.camellia-original-shop .product-grid{display:grid;gap:24px;grid-template-columns:repeat(4,1fr)}.camellia-original-home .product-card,.camellia-original-shop .product-card{min-width:0}.camellia-original-home .product-card>a,.camellia-original-shop .product-card>a{display:block}.camellia-original-home .product-media,.camellia-original-shop .product-media{aspect-ratio:.82;background:#eee9e0;overflow:hidden;position:relative}.camellia-original-home .product-image,.camellia-original-shop .product-image{background-repeat:no-repeat;height:100%;min-height:120px;transition:transform .5s ease;width:100%}.camellia-original-home .product-card:hover .product-image,.camellia-original-shop .product-card:hover .product-image{transform:scale(1.025)}.camellia-original-home .availability-badge,.camellia-original-shop .availability-badge{background:rgba(255,255,255,.92);font-size:.63rem;font-weight:700;left:12px;letter-spacing:.09em;padding:8px 9px;position:absolute;text-transform:uppercase;top:12px}.camellia-original-home .wish,.camellia-original-shop .wish{align-items:center;background:rgba(255,255,255,.88);border:0;border-radius:50%;display:flex;font-size:1.3rem;height:36px;justify-content:center;position:absolute;right:12px;top:12px;width:36px}.camellia-original-home .quick-view,.camellia-original-shop .quick-view{background:rgba(24,60,50,.9);bottom:-42px;color:#fff;font-size:.67rem;left:0;letter-spacing:.1em;padding:12px;position:absolute;text-align:center;text-transform:uppercase;transition:.25s;width:100%}.camellia-original-home .product-card:hover .quick-view,.camellia-original-shop .product-card:hover .quick-view{bottom:0}.camellia-original-home .product-info,.camellia-original-shop .product-info{padding:17px 3px 0}.camellia-original-home .product-info>p,.camellia-original-shop .product-info>p{color:#777f7a;font-size:.68rem;letter-spacing:.1em;margin-bottom:7px;text-transform:uppercase}.camellia-original-home .product-info h3,.camellia-original-shop .product-info h3{font-family:var(--serif);font-size:1.38rem;font-weight:400;margin:0 0 11px}.camellia-original-home .product-info>div,.camellia-original-shop .product-info>div{align-items:center;display:flex;justify-content:space-between}.camellia-original-home .product-info strong,.camellia-original-shop .product-info strong{font-size:.83rem}.camellia-original-home .product-action,.camellia-original-shop .product-action{border-bottom:1px solid;font-size:.67rem;font-weight:700;letter-spacing:.08em;padding:4px 0;text-transform:uppercase}
.camellia-original-home .occasion-grid{display:grid;gap:14px;grid-template-columns:repeat(4,1fr)}.camellia-original-home .occasion-card{aspect-ratio:1.04;overflow:hidden;position:relative}.camellia-original-home .occasion-card:after{background:linear-gradient(transparent 48%,rgba(12,25,21,.72));content:"";inset:0;position:absolute}.camellia-original-home .occasion-card .product-image{filter:saturate(.85)}.camellia-original-home .occasion-card:hover .product-image{transform:scale(1.04)}.camellia-original-home .occasion-card span{bottom:22px;color:#fff;font-family:var(--serif);font-size:1.7rem;left:22px;position:absolute;z-index:2}
.camellia-original-home .choice-section{align-items:stretch;background:#fff;display:grid;grid-template-columns:1fr 1fr}.camellia-original-home .choice-image{min-height:630px;overflow:hidden}.camellia-original-home .choice-image .product-image{min-height:630px}.camellia-original-home .choice-content{align-self:center;max-width:680px;padding:clamp(45px,7vw,110px)}.camellia-original-home .choice-content p:not(.eyebrow){color:#626b66;font-size:1rem}.camellia-original-home .choice-options{display:grid;gap:9px;margin:26px 0}.camellia-original-home .choice-options span{border:1px solid var(--stone);padding:12px 15px}.camellia-original-home .choice-options .popular{border-color:var(--gold);color:var(--green);font-weight:700}
.camellia-original-home .trust-strip{background:var(--green);color:#fff;display:grid;grid-template-columns:repeat(4,1fr);padding:55px clamp(22px,6vw,90px)}.camellia-original-home .trust-strip>div{border-left:1px solid rgba(255,255,255,.2);padding:0 35px}.camellia-original-home .trust-strip b{color:var(--gold);font-family:var(--serif);font-size:1.5rem}.camellia-original-home .trust-strip h3{font-family:var(--serif);font-size:1.3rem;font-weight:400;margin:9px 0}.camellia-original-home .trust-strip p{color:rgba(255,255,255,.67);margin:0}.camellia-original-home .steps{display:grid;gap:30px;grid-template-columns:repeat(4,1fr)}.camellia-original-home .steps>div{border-top:1px solid var(--gold);padding-top:25px}.camellia-original-home .steps b{color:var(--gold);font-family:var(--serif);font-size:1.6rem}.camellia-original-home .steps h3{font-family:var(--serif);font-size:1.35rem;font-weight:400}.camellia-original-home .steps p{color:#6a716d}
.camellia-original-home .stores-section{background:#fff;max-width:none}.camellia-original-home .stores-section>*{margin-left:auto;margin-right:auto;max-width:1350px}.camellia-original-home .store-grid{display:grid;gap:24px;grid-template-columns:1fr 1fr}.camellia-original-home .store-grid article{background:var(--ivory);display:grid;grid-template-columns:1.1fr 1fr}.camellia-original-home .store-photo{align-items:flex-end;background:linear-gradient(145deg,#aeb9ad,#4d655d);display:flex;min-height:400px;overflow:hidden;padding:18px;position:relative}.camellia-original-home .store-photo.roskill{background:linear-gradient(145deg,#d8b7b0,#725e56)}.camellia-original-home .store-photo:before{background-image:var(--store-image);background-position:right;background-size:cover;content:"";inset:0;opacity:.22;position:absolute}.camellia-original-home .store-photo span{background:rgba(255,255,255,.88);font-size:.65rem;letter-spacing:.05em;padding:9px;position:relative;text-transform:uppercase}.camellia-original-home .store-grid article>div:last-child{align-self:center;padding:34px}.camellia-original-home .store-grid h3{font-family:var(--serif);font-size:1.75rem;font-weight:400;margin-bottom:7px}.camellia-original-home .store-grid small{color:#737a76;display:block}.camellia-original-home .store-grid article>div:last-child>div{align-items:center;display:flex;flex-wrap:wrap;gap:17px;margin-top:25px}.camellia-original-home .wedding-banner{background-position:center;background-size:cover;color:#fff;padding:clamp(85px,11vw,175px) clamp(25px,9vw,140px)}.camellia-original-home .wedding-banner>div{max-width:660px}.camellia-original-home .wedding-banner p:not(.eyebrow){color:rgba(255,255,255,.75);font-size:1.05rem}.camellia-original-home .reviews{text-align:center}.camellia-original-home .reviews .section-heading{display:block}.camellia-original-home .reviews .section-heading h2,.camellia-original-home .reviews .section-heading p{margin-left:auto;margin-right:auto}.camellia-original-home .gallery{padding-top:40px}.camellia-original-home .gallery-grid{display:grid;gap:7px;grid-template-columns:repeat(6,1fr)}.camellia-original-home .gallery-grid .product-image{aspect-ratio:1;min-height:0}
.camellia-original-home .store-grid .store-phone{display:block;margin:8px 0}
.camellia-original-home .faq-section{max-width:1200px;padding:80px 40px}.camellia-original-home .faq-list{border-top:1px solid var(--stone)}.camellia-original-home .faq-list details{border-bottom:1px solid var(--stone)}.camellia-original-home .faq-list summary{align-items:center;display:flex;font-family:var(--serif);font-size:1.35rem;justify-content:space-between;list-style:none;padding:22px 0}.camellia-original-home .faq-list summary::-webkit-details-marker{display:none}.camellia-original-home .faq-list details[open] summary span{transform:rotate(45deg)}.camellia-original-home .faq-list p{color:#626b66;max-width:780px;padding:0 0 24px}.camellia-original-home .compact-faq>.text-link{margin-top:25px}.camellia-original-home .newsletter{align-items:center;background:var(--brown);color:#fff;display:grid;gap:40px;grid-template-columns:1fr 1fr;padding:75px clamp(25px,8vw,125px)}.camellia-original-home .newsletter h2{font-size:clamp(2.3rem,4vw,4rem);margin:0}.camellia-original-home .newsletter form{display:flex}.camellia-original-home .newsletter input{background:transparent;border:1px solid rgba(255,255,255,.5);border-radius:0;color:#fff;min-height:49px;padding:12px;width:100%}.camellia-original-home .newsletter input::placeholder{color:rgba(255,255,255,.7)}.camellia-original-home .newsletter button{background:#fff;border:0;color:var(--green);font-size:.7rem;font-weight:700;letter-spacing:.08em;min-width:170px;text-transform:uppercase}

/* Exact original Shop archive. */
.camellia-original-shop{background:var(--ivory);color:var(--charcoal);font-family:var(--sans)}.camellia-original-shop .page-hero{background:var(--sage);padding:clamp(75px,10vw,145px) clamp(25px,8vw,120px);text-align:center}.camellia-original-shop .page-hero h1{margin:0 auto 20px;text-transform:capitalize}.camellia-original-shop .page-hero>p:last-child{color:#5f6b65;font-size:1.06rem;margin:auto;max-width:660px}.camellia-original-shop .category-scroll{align-items:center;background:#fff;display:flex;gap:25px;overflow-x:auto;padding:20px clamp(22px,5vw,70px);scrollbar-width:none}.camellia-original-shop .category-scroll a{border-bottom:1px solid transparent;font-size:.74rem;font-weight:700;padding-bottom:4px;white-space:nowrap}.camellia-original-shop .category-scroll a.active{border-color:var(--green);color:var(--green)}.camellia-original-shop .shop-shell{margin:auto;max-width:1500px;padding:35px clamp(22px,5vw,75px) 100px}.camellia-original-shop .shop-toolbar{align-items:center;border-bottom:1px solid var(--stone);display:flex;justify-content:space-between;margin-bottom:28px;padding-bottom:18px}.camellia-original-shop .shop-toolbar .woocommerce-ordering{margin:0}.camellia-original-shop .shop-toolbar select{min-height:40px;width:auto}.camellia-original-shop .shop-layout{display:grid;gap:28px;grid-template-columns:180px 1fr}.camellia-original-shop .filters{height:max-content;position:sticky;top:20px}.camellia-original-shop .filters form{display:grid;gap:24px}.camellia-original-shop ul.products{display:grid!important;gap:24px;grid-template-columns:repeat(4,1fr);margin:0!important}.camellia-original-shop ul.products li.product{float:none!important;margin:0!important;width:auto!important}.camellia-original-shop ul.products li.product a img{aspect-ratio:.82;object-fit:cover}.camellia-original-shop ul.products li.product .woocommerce-loop-product__title{font-family:var(--serif);font-size:1.38rem!important;font-weight:400}.camellia-original-shop .shop-grid{grid-template-columns:repeat(4,1fr)}.camellia-original-shop .catalogue-note{border-top:1px solid var(--stone);display:grid;grid-template-columns:.4fr 1.6fr;margin-top:70px;padding-top:25px}.camellia-original-shop .catalogue-note p{color:#68716c;margin:0}
.camellia-original-shop .filter-toggle{background:transparent;border:1px solid var(--stone);display:none;font-size:.7rem;font-weight:700;letter-spacing:.08em;min-height:40px;padding:0 16px;text-transform:uppercase}
/* Wider desktop use of available width: this section's own boxed content width, on the Shop page only. */
.elementor-element-2134439.elementor-element > .elementor-container{max-width:1600px!important}
/* Medium desktop / tablet landscape: 3 columns between the 2-column tablet breakpoint (900px) and large desktop (above here, 4 columns). */
@media(max-width:1240px){.camellia-original-shop ul.products,.camellia-original-shop .shop-grid{grid-template-columns:repeat(3,1fr)}}

/* Exact original inner pages. */
.camellia-original-page{background:var(--ivory);color:var(--charcoal);font-family:var(--sans);overflow:hidden}.camellia-original-page h1,.camellia-original-page h2,.camellia-original-page h3{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:1.02}.camellia-original-page h1{font-size:clamp(3rem,6vw,6.3rem)}.camellia-original-page h2{font-size:clamp(2.2rem,4vw,4.25rem)}.camellia-original-page .eyebrow{color:var(--brown);font-size:.73rem;font-weight:700;letter-spacing:.19em;margin:0 0 14px;text-transform:uppercase}.camellia-original-page .eyebrow.light{color:rgba(255,255,255,.72)}.camellia-original-page .btn{align-items:center;border:1px solid transparent;border-radius:0;display:inline-flex;font-size:.79rem;font-weight:700;justify-content:center;letter-spacing:.08em;min-height:50px;padding:0 28px;text-transform:uppercase;transition:.25s ease}.camellia-original-page .btn.primary{background:var(--green);color:#fff}.camellia-original-page .btn.secondary{background:transparent;border-color:var(--green);color:var(--green)}.camellia-original-page .btn.light{background:#fff;color:var(--green)}.camellia-original-page .btn.ghost-light{border-color:rgba(255,255,255,.65);color:#fff}.camellia-original-page .text-link{border-bottom:1px solid currentColor;color:var(--green);display:inline-block;font-weight:700;padding-bottom:2px}.camellia-original-page .product-image{background-repeat:no-repeat;height:100%;min-height:120px;transition:transform .5s ease;width:100%}.camellia-original-page .section{margin:0 auto;max-width:1500px;padding:clamp(70px,8vw,125px) clamp(22px,5vw,76px)}.camellia-original-page .section-heading{display:grid;grid-template-columns:.55fr 1.45fr;margin-bottom:45px}.camellia-original-page .section-heading h2{margin:0 0 15px;max-width:750px}.camellia-original-page .section-heading>div>p{color:#66706b;font-size:1rem;max-width:580px}.camellia-original-page .page-hero{background:var(--sage);padding:clamp(75px,10vw,145px) clamp(25px,8vw,120px);text-align:center}.camellia-original-page .page-hero h1{margin:0 auto 20px}.camellia-original-page .page-hero>p:last-child{color:#5f6b65;font-size:1.06rem;margin:auto;max-width:680px}.camellia-original-page .product-grid{display:grid;gap:24px;grid-template-columns:repeat(4,1fr)}.camellia-original-page .product-card{min-width:0}.camellia-original-page .product-card>a{display:block}.camellia-original-page .product-media{aspect-ratio:.82;background:#eee9e0;overflow:hidden;position:relative}.camellia-original-page .product-card:hover .product-image{transform:scale(1.025)}.camellia-original-page .wish{align-items:center;background:rgba(255,255,255,.88);border:0;border-radius:50%;display:flex;font-size:1.3rem;height:36px;justify-content:center;position:absolute;right:12px;top:12px;width:36px}.camellia-original-page .quick-view{background:rgba(24,60,50,.9);bottom:-42px;color:#fff;font-size:.67rem;left:0;letter-spacing:.1em;padding:12px;position:absolute;text-align:center;text-transform:uppercase;transition:.25s;width:100%}.camellia-original-page .product-card:hover .quick-view{bottom:0}.camellia-original-page .availability-badge{background:rgba(255,255,255,.92);font-size:.63rem;font-weight:700;left:12px;letter-spacing:.09em;padding:8px 9px;position:absolute;text-transform:uppercase;top:12px}.camellia-original-page .product-info{padding:17px 3px 0}.camellia-original-page .product-info>p{color:#777f7a;font-size:.68rem;letter-spacing:.1em;margin-bottom:7px;text-transform:uppercase}.camellia-original-page .product-info h3{font-size:1.38rem;margin:0 0 11px}.camellia-original-page .product-info>div{align-items:center;display:flex;justify-content:space-between}.camellia-original-page .product-info strong{font-size:.83rem}.camellia-original-page .product-action{border-bottom:1px solid;font-size:.67rem;font-weight:700;letter-spacing:.08em;padding:4px 0;text-transform:uppercase}
.camellia-original-page .gifts-hero{background:var(--green);color:#fff;display:grid;grid-template-columns:1fr 1fr;min-height:600px;overflow:hidden}.camellia-original-page .gifts-hero>div:first-child{align-self:center;max-width:680px;padding:clamp(55px,8vw,125px)}.camellia-original-page .gifts-hero>.product-image{min-height:600px}.camellia-original-page .gifts-hero p:not(.eyebrow){color:rgba(255,255,255,.74);font-size:1.05rem}.camellia-original-page .gift-categories{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:35px}.camellia-original-page .gift-categories a{background:#fff;border:1px solid var(--stone);padding:11px 17px}.camellia-original-page .gift-categories a.active{background:var(--green);color:#fff}.camellia-original-page .gift-callout{align-items:center;background:var(--blush);display:grid;gap:70px;grid-template-columns:1.2fr 1fr;padding:85px clamp(25px,9vw,140px)}.camellia-original-page .gift-list{display:grid}.camellia-original-page .gift-list span{border-bottom:1px solid rgba(32,37,34,.22);font-family:var(--serif);font-size:1.25rem;padding:16px 0}
.camellia-original-page .empty-state,.camellia-original-shop .empty-state{align-items:center;display:flex;flex-direction:column;grid-column:1/-1;justify-content:center;min-height:320px;padding:55px 20px;text-align:center}.camellia-original-page .empty-state h2,.camellia-original-shop .empty-state h2{font-size:2.4rem}
.camellia-original-page .delivery-page{display:grid;gap:65px;grid-template-columns:1.1fr .9fr;margin:auto;max-width:1250px;padding:90px 35px}.camellia-original-page .delivery-tool{background:#fff;box-shadow:var(--shadow);padding:clamp(30px,5vw,65px)}.camellia-original-page .delivery-tool h2{font-size:3rem}.camellia-original-page .delivery-tool form{display:flex}.camellia-original-page .delivery-result{background:var(--sage);color:var(--green);margin:12px 0 0;padding:14px}.camellia-original-page .delivery-points{display:grid;grid-template-columns:1fr 1fr}.camellia-original-page .delivery-points article{border-bottom:1px solid var(--stone);padding:25px}.camellia-original-page .delivery-points article:nth-child(odd){border-right:1px solid var(--stone)}.camellia-original-page .delivery-points b{font-family:var(--serif);font-size:1.2rem;font-weight:400}.camellia-original-page .delivery-points p{color:#68716c;font-size:.8rem;margin:9px 0 0}.camellia-original-page .policy-copy{display:grid;gap:50px;grid-template-columns:1fr 1fr}.camellia-original-page .policy-copy h2{font-size:3rem}.camellia-original-page .policy-copy p{border-bottom:1px solid var(--stone);color:#68716c;padding-bottom:17px}
.camellia-original-page .stores-section{background:#fff;max-width:none}.camellia-original-page .stores-section>*{margin-left:auto;margin-right:auto;max-width:1350px}.camellia-original-page .store-grid{display:grid;gap:24px;grid-template-columns:1fr 1fr}.camellia-original-page .store-grid article{background:var(--ivory);display:grid;grid-template-columns:1.1fr 1fr}.camellia-original-page .store-photo{align-items:flex-end;background:linear-gradient(145deg,#aeb9ad,#4d655d);display:flex;min-height:400px;overflow:hidden;padding:18px;position:relative}.camellia-original-page .store-photo.roskill{background:linear-gradient(145deg,#d8b7b0,#725e56)}.camellia-original-page .store-photo:before{background-image:var(--store-image);background-position:center;background-size:cover;content:"";inset:0;opacity:.35;position:absolute}.camellia-original-page .store-photo span{background:rgba(255,255,255,.88);font-size:.65rem;letter-spacing:.05em;padding:9px;position:relative;text-transform:uppercase}.camellia-original-page .store-grid article>div:last-child{align-self:center;padding:34px}.camellia-original-page .store-grid h3{font-size:1.75rem;margin-bottom:7px}.camellia-original-page .store-grid small{color:#737a76;display:block}.camellia-original-page .store-grid article>div:last-child>div{align-items:center;display:flex;flex-wrap:wrap;gap:17px;margin-top:25px}
.camellia-original-page .location-hero,.camellia-original-page .weddings-hero{background-position:center;background-size:cover;color:#fff;min-height:690px;padding:130px 8vw}.camellia-original-page .location-hero>div,.camellia-original-page .weddings-hero>div{max-width:750px}.camellia-original-page .location-hero p:not(.eyebrow),.camellia-original-page .weddings-hero p:not(.eyebrow){color:rgba(255,255,255,.8);font-size:1.08rem;max-width:620px}.camellia-original-page .location-hero>div>div{display:flex;gap:12px;margin-top:30px}.camellia-original-page .location-info{background:#fff;display:grid;gap:80px;grid-template-columns:.7fr 1.3fr;padding:100px 10vw}.camellia-original-page .location-info h2{font-size:3rem}.camellia-original-page .location-info>div:first-child{border:1px solid var(--stone);padding:35px}.camellia-original-page .location-info>div:last-child p{color:#66706b}.camellia-original-page .weddings-hero{min-height:720px;padding:150px 9vw}.camellia-original-page .editorial-intro{margin:auto;max-width:1050px;padding:120px 40px;text-align:center}.camellia-original-page .editorial-intro p:last-child{color:#65706a;font-size:1.06rem;margin:auto;max-width:780px}.camellia-original-page .service-grid{display:grid;grid-template-columns:repeat(3,1fr);padding:0 6vw 100px}.camellia-original-page .service-grid article{border:1px solid var(--stone);padding:55px 35px}.camellia-original-page .service-grid article+article{border-left:0}.camellia-original-page .service-grid h3{font-size:1.6rem}.camellia-original-page .service-grid p{color:#68716c}.camellia-original-page .enquiry-section{background:var(--green);color:#fff;display:grid;gap:70px;grid-template-columns:.8fr 1.2fr;padding:95px 8vw}.camellia-original-page .enquiry-section form{display:grid;gap:16px;grid-template-columns:1fr 1fr}.camellia-original-page .enquiry-section .wide,.camellia-original-page .enquiry-section button{grid-column:1/-1}.camellia-original-page .enquiry-section input,.camellia-original-page .enquiry-section textarea{background:transparent;border-color:rgba(255,255,255,.4);color:#fff}
.camellia-original-page .article-grid{display:grid;gap:28px;grid-template-columns:repeat(3,1fr);margin:auto;max-width:1400px;padding:90px 5vw 120px}.camellia-original-page .article-grid article{background:#fff}.camellia-original-page .article-grid .product-image{aspect-ratio:1.15;min-height:0}.camellia-original-page .article-grid article>div{padding:25px}.camellia-original-page .article-grid h2{font-size:2rem}.camellia-original-page .article-grid p:not(.eyebrow){color:#69716c}.camellia-original-page .faq-section{margin:auto;max-width:1200px;padding:80px 40px}.camellia-original-page .faq-list{border-top:1px solid var(--stone)}.camellia-original-page .faq-list details{border-bottom:1px solid var(--stone)}.camellia-original-page .faq-list summary{align-items:center;display:flex;font-family:var(--serif);font-size:1.35rem;justify-content:space-between;list-style:none;padding:22px 0}.camellia-original-page .faq-list summary::-webkit-details-marker{display:none}.camellia-original-page .faq-list details[open] summary span{transform:rotate(45deg)}.camellia-original-page .faq-list p{color:#626b66;max-width:780px;padding:0 0 24px}.camellia-original-page .contact-section{background:#fff;display:grid;gap:80px;grid-template-columns:1fr 1fr;padding:95px 10vw}.camellia-original-page .contact-section form{display:grid;gap:15px;grid-template-columns:1fr}.camellia-original-page .contact-section>div>div{display:grid;gap:9px;margin-top:25px}.camellia-original-page .contact-section>div>div a{border-bottom:1px solid var(--stone);padding:10px 0}.camellia-original-page .legal-copy{background:#fff;margin:70px auto 110px;max-width:900px;padding:65px}.camellia-original-page .legal-copy h2{font-size:2.2rem;margin-top:45px}.camellia-original-page .legal-copy p{color:#616a65}.camellia-original-page .owner-note{background:var(--sage);color:var(--green)!important;font-weight:700;padding:18px}.camellia-original-page .newsletter{align-items:center;background:var(--brown);color:#fff;display:grid;gap:40px;grid-template-columns:1fr 1fr;padding:75px clamp(25px,8vw,125px)}.camellia-original-page .newsletter h2{font-size:clamp(2.3rem,4vw,4rem);margin:0}.camellia-original-page .newsletter form{display:flex}.camellia-original-page .newsletter input{background:transparent;border:1px solid rgba(255,255,255,.5);color:#fff}.camellia-original-page .newsletter button{background:#fff;border:0;color:var(--green);font-size:.7rem;font-weight:700;letter-spacing:.08em;min-width:170px;text-transform:uppercase}

/* Exact original footer. */
.footer{background:#112d26;color:rgba(255,255,255,.78)}.footer-main{display:grid;gap:50px;grid-template-columns:1.5fr repeat(3,1fr);padding:80px clamp(25px,7vw,105px)}.footer-main>div{align-content:start;display:grid;gap:11px}.footer-brand{color:#fff!important;margin-bottom:15px}.footer-main>div:first-child p{max-width:330px}.footer h3{color:#fff;font-family:var(--serif);font-size:1.2rem;font-weight:400}.footer a:hover{color:#fff}.footer small{color:rgba(255,255,255,.5)}.footer-bottom{border-top:1px solid rgba(255,255,255,.13);display:flex;font-size:.65rem;justify-content:space-between;padding:22px clamp(25px,7vw,105px)}

@media(max-width:1180px){.nav-shell{grid-template-columns:160px 1fr auto}.desktop-nav{gap:13px}.desktop-nav>a{font-size:.65rem}.desktop-nav>a:nth-last-child(-n+2){display:none}.camellia-original-home .finder{grid-template-columns:1fr 1fr 1fr}.camellia-original-home .finder>div:first-child{grid-column:1/-1}.camellia-original-home .product-grid{grid-template-columns:repeat(3,1fr)}.camellia-original-home .product-grid>:nth-child(4){display:none}.camellia-original-home .store-grid article{grid-template-columns:1fr}.camellia-original-home .store-photo{min-height:320px}}
@media(max-width:900px){.nav-shell{grid-template-columns:44px 1fr auto;min-height:72px;padding:0 16px}.mobile-menu-button{display:grid}.nav-shell>.brand,.nav-shell>.custom-logo-link{justify-self:center;transform:scale(.9)}.desktop-nav{display:none}.header-actions>:not(:last-child){display:none}.camellia-original-home .hero{height:680px;min-height:0}.camellia-original-home .hero-image{background-position:61% center}.camellia-original-home .hero-content{left:28px;max-width:620px;right:25px}.camellia-original-home .finder{grid-template-columns:1fr 1fr;top:0}.camellia-original-home .finder-wrap{padding-top:30px}.camellia-original-home .section-heading{display:block}.camellia-original-home .product-grid{grid-template-columns:1fr 1fr}.camellia-original-home .product-grid>:nth-child(4){display:block}.camellia-original-home .occasion-grid{grid-template-columns:1fr 1fr}.camellia-original-home .choice-section{grid-template-columns:1fr}.camellia-original-home .choice-image,.camellia-original-home .choice-image .product-image{min-height:500px}.camellia-original-home .trust-strip,.camellia-original-home .steps{grid-template-columns:1fr 1fr}.camellia-original-home .store-grid{grid-template-columns:1fr 1fr}.camellia-original-home .newsletter{grid-template-columns:1fr}.camellia-original-shop .shop-layout{grid-template-columns:1fr}.camellia-original-shop .filters{position:static}.camellia-original-shop ul.products,.camellia-original-shop .shop-grid{grid-template-columns:1fr 1fr}.footer-main{grid-template-columns:1.5fr 1fr 1fr}.footer-main>div:last-child{grid-column:2/-1}}
@media(max-width:620px){body.camellia-site{font-size:14px}.announcement{padding:6px 14px}.header-actions .cam-bag{font-size:0}.header-actions .cam-bag:before{content:"Bag";font-size:.65rem}.header-actions em{font-size:.65rem}.camellia-original-home .hero{height:650px}.camellia-original-home .hero-image{background-position:66% center}.camellia-original-home .hero-shade{background:linear-gradient(0deg,rgba(12,25,21,.82),rgba(12,25,21,.15) 80%)}.camellia-original-home .hero-content{bottom:38px;top:auto;transform:none}.camellia-original-home .hero-content h1{font-size:3.25rem}.camellia-original-home .hero-content>p:not(.eyebrow){font-size:.92rem}.camellia-original-home .hero-actions{display:grid;grid-template-columns:1fr 1fr}.camellia-original-home .hero-actions .btn{padding:0 12px}.camellia-original-home .hero-trust{gap:12px}.camellia-original-home .hero-trust span:last-child{display:none}.camellia-original-home .finder{grid-template-columns:1fr;padding:22px}.camellia-original-home .finder>div:first-child{grid-column:auto}.camellia-original-home .section{padding:65px 18px}.camellia-original-home .section-heading{margin-bottom:28px}.camellia-original-home .product-grid{gap:12px}.camellia-original-home .product-media{aspect-ratio:.76}.camellia-original-home .product-info h3{font-size:1.1rem}.camellia-original-home .product-info>div{align-items:start;flex-direction:column;gap:8px}.camellia-original-home .quick-view{display:none}.camellia-original-home .availability-badge{font-size:.52rem;left:7px;top:7px}.camellia-original-home .wish{right:7px;top:7px}.camellia-original-home .occasion-grid{gap:7px}.camellia-original-home .occasion-card span{bottom:13px;font-size:1.25rem;left:13px}.camellia-original-home .choice-image,.camellia-original-home .choice-image .product-image{min-height:380px}.camellia-original-home .choice-content{padding:55px 24px}.camellia-original-home .trust-strip,.camellia-original-home .steps{grid-template-columns:1fr}.camellia-original-home .trust-strip>div{border-bottom:1px solid rgba(255,255,255,.2);border-left:0;padding:20px 0}.camellia-original-home .store-grid{grid-template-columns:1fr}.camellia-original-home .gallery-grid{grid-template-columns:repeat(3,1fr)}.camellia-original-home .newsletter{padding:55px 22px}.camellia-original-home .newsletter form{display:grid}.camellia-original-home .newsletter button{min-height:50px}.camellia-original-shop .page-hero{padding:65px 22px}.camellia-original-shop .page-hero h1{font-size:3.2rem}.camellia-original-shop .shop-shell{padding:25px 14px 70px}.camellia-original-shop .shop-toolbar{align-items:start;flex-wrap:wrap;gap:12px}.camellia-original-shop ul.products,.camellia-original-shop .shop-grid{gap:12px}.camellia-original-shop .catalogue-note{display:block}.footer-main{grid-template-columns:1fr;padding:60px 25px}.footer-main>div:last-child{grid-column:auto}.footer-bottom{display:grid;gap:7px}}

@media(max-width:1180px){.desktop-nav summary{font-size:.65rem}.desktop-nav>a:nth-last-child(-n+2){display:none}.camellia-original-page .product-grid{grid-template-columns:repeat(3,1fr)}.camellia-original-page .product-grid>:nth-child(4){display:none}.camellia-original-page .store-grid article{grid-template-columns:1fr}.camellia-original-page .store-photo{min-height:320px}}
@media(max-width:900px){.camellia-original-shop .filter-toggle{display:inline-block}.camellia-original-shop .filters{display:none;grid-template-columns:1fr 1fr;position:static}.camellia-original-shop .filters.open{display:grid}.camellia-original-page .section-heading{display:block}.camellia-original-page .product-grid{grid-template-columns:1fr 1fr}.camellia-original-page .product-grid>:nth-child(4){display:block}.camellia-original-page .gifts-hero{grid-template-columns:1fr}.camellia-original-page .gifts-hero>.product-image{min-height:450px}.camellia-original-page .gift-callout,.camellia-original-page .delivery-page,.camellia-original-page .location-info,.camellia-original-page .policy-copy,.camellia-original-page .contact-section{grid-template-columns:1fr}.camellia-original-page .store-grid{grid-template-columns:1fr 1fr}.camellia-original-page .service-grid,.camellia-original-page .article-grid{grid-template-columns:1fr 1fr}.camellia-original-page .enquiry-section,.camellia-original-page .newsletter{grid-template-columns:1fr}}
@media(max-width:900px){.woocommerce-cart .cam-page-content>.woocommerce,.woocommerce-checkout form.checkout,.woocommerce-account .woocommerce{grid-template-columns:1fr}.woocommerce-cart .cart-collaterals,.woocommerce-checkout form.checkout>.col2-set,.woocommerce-checkout #order_review_heading,.woocommerce-checkout #order_review{grid-column:1;grid-row:auto}.woocommerce-checkout #order_review{position:static}.woocommerce-account .woocommerce-notices-wrapper{grid-column:1}.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{width:100%}}
@media(max-width:620px){.header-actions .cam-bag-button{font-size:0}.header-actions .cam-bag-button:before{content:"Bag";font-size:.65rem}.search-overlay{padding:18vh 18px}.search-overlay form{display:grid}.search-overlay form button{min-height:50px}.search-overlay>div>p:last-child{gap:10px}.camellia-original-shop .filters.open{grid-template-columns:1fr}.camellia-original-page .page-hero{padding:65px 22px}.camellia-original-page .page-hero h1{font-size:3.2rem}.camellia-original-page .section{padding:65px 18px}.camellia-original-page .section-heading{margin-bottom:28px}.camellia-original-page .product-grid{gap:12px}.camellia-original-page .product-info h3{font-size:1.1rem}.camellia-original-page .product-info>div{align-items:start;flex-direction:column;gap:8px}.camellia-original-page .quick-view{display:none}.camellia-original-page .gifts-hero>div:first-child{padding:65px 25px}.camellia-original-page .gifts-hero>.product-image{min-height:360px}.camellia-original-page .gift-callout{padding:65px 25px}.camellia-original-page .delivery-page{padding:55px 18px}.camellia-original-page .delivery-tool{padding:28px}.camellia-original-page .delivery-tool form{display:grid}.camellia-original-page .delivery-points{grid-template-columns:1fr}.camellia-original-page .delivery-points article:nth-child(odd){border-right:0}.camellia-original-page .store-grid{grid-template-columns:1fr}.camellia-original-page .location-hero,.camellia-original-page .weddings-hero{min-height:640px;padding:100px 24px}.camellia-original-page .location-hero h1,.camellia-original-page .weddings-hero h1{font-size:3.6rem}.camellia-original-page .location-hero>div>div{display:grid}.camellia-original-page .location-info{gap:35px;padding:65px 20px}.camellia-original-page .service-grid,.camellia-original-page .article-grid{grid-template-columns:1fr}.camellia-original-page .service-grid article+article{border-left:1px solid var(--stone);border-top:0}.camellia-original-page .enquiry-section{padding:65px 20px}.camellia-original-page .enquiry-section form{grid-template-columns:1fr}.camellia-original-page .enquiry-section form>*{grid-column:1!important}.camellia-original-page .contact-section{padding:65px 20px}.camellia-original-page .faq-section{padding:60px 20px}.camellia-original-page .legal-copy{margin:30px 15px 80px;padding:30px}.camellia-original-page .newsletter{padding:55px 22px}.camellia-original-page .newsletter form{display:grid}.camellia-original-page .newsletter button{min-height:50px}}
@media(max-width:620px){.woocommerce-cart .cam-page-content>.woocommerce,.woocommerce-checkout .cam-page-content>.woocommerce,.woocommerce-account .cam-page-content>.woocommerce{padding:30px 15px 80px}.woocommerce-cart table.shop_table thead{display:none}.woocommerce-cart table.shop_table,.woocommerce-cart table.shop_table tbody{display:block;width:100%}.woocommerce-cart table.shop_table tr.cart_item{display:flex;flex-direction:column;width:100%;border:0;border-bottom:1px solid var(--cam-stone);margin:0 0 20px;padding:0 0 20px}.woocommerce-cart table.shop_table tr.cart_item td{display:block;width:100%;box-sizing:border-box;border:0;padding:6px 0;text-align:left!important}.woocommerce-cart table.shop_table tr.cart_item td.product-thumbnail{order:1;padding:0 0 12px}.woocommerce-cart table.shop_table tr.cart_item td.product-name{order:2}.woocommerce-cart table.shop_table tr.cart_item td.product-price{order:3}.woocommerce-cart table.shop_table tr.cart_item td.product-quantity{order:4}.woocommerce-cart table.shop_table tr.cart_item td.product-subtotal{order:5;font-weight:700}.woocommerce-cart table.shop_table tr.cart_item td.product-remove{order:6;text-align:right!important}.woocommerce-cart table.shop_table tr.cart_item td.product-name:before,.woocommerce-cart table.shop_table tr.cart_item td.product-price:before,.woocommerce-cart table.shop_table tr.cart_item td.product-quantity:before,.woocommerce-cart table.shop_table tr.cart_item td.product-subtotal:before{content:attr(data-title) ": ";font-weight:700;display:inline-block;margin-right:6px}.woocommerce-cart table.shop_table tr:not(.cart_item) td.actions{display:block;width:100%;box-sizing:border-box}.woocommerce-cart table.shop_table .coupon{display:flex;flex-wrap:wrap;gap:10px;float:none;width:100%}.woocommerce-cart table.shop_table .coupon .input-text{flex:1 1 160px;min-width:0;width:auto;box-sizing:border-box}.woocommerce-cart table.shop_table .coupon button{flex:0 0 auto}.woocommerce-cart table.shop_table td.actions>button[name="update_cart"]{float:none;width:100%;margin-top:14px}.woocommerce-cart table.shop_table .product-thumbnail img{height:105px;width:105px}.woocommerce-checkout h3{font-size:1.7rem}.woocommerce-account .woocommerce-MyAccount-content{padding:22px}.woocommerce-order-received .woocommerce-order{padding:28px}}
.camellia-size-picker{border:0;margin:0;padding:0}.camellia-size-picker legend{float:none;width:100%}.camellia-size-options{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 22px}.camellia-size-card{align-items:center;background:#fff!important;border:1px solid var(--cam-stone)!important;color:var(--cam-charcoal)!important;cursor:pointer;display:grid!important;gap:3px;justify-items:start;letter-spacing:0!important;min-height:150px;padding:17px 14px!important;position:relative;text-align:left;text-transform:none!important;width:100%}.camellia-size-card:hover,.camellia-size-card.is-selected{border-color:var(--cam-green)!important;box-shadow:inset 0 0 0 1px var(--cam-green)}.camellia-size-card input{height:1px;opacity:0;position:absolute;width:1px}.camellia-size-card span{display:grid}.camellia-size-card strong{font-family:var(--cam-serif);font-size:1rem;font-weight:500}.camellia-size-card small{color:#69716c;font-size:.7rem;margin-top:3px}.camellia-size-card>p,.camellia-size-description{color:#69716c;font-size:.68rem;line-height:1.35;margin:8px 0 0;text-transform:none}.camellia-size-description p{margin:0}.camellia-size-dimensions{font-size:.64rem!important}.camellia-size-card em{color:var(--cam-green);font-size:.76rem;font-style:normal;font-weight:700;margin-top:7px}.camellia-size-card em .price{font:inherit}.camellia-size-card i{background:var(--cam-green);color:#fff;font-size:.54rem;font-style:normal;letter-spacing:.06em;padding:4px 6px;position:absolute;right:0;text-transform:uppercase;top:0}.camellia-size-card:disabled{cursor:not-allowed;opacity:.42}.cam-native-size-select{clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;height:1px!important;overflow:hidden!important;position:absolute!important;white-space:nowrap!important;width:1px!important}.camellia-variation-size-options{margin-top:10px}.camellia-size-card:focus-visible{outline:3px solid var(--cam-gold);outline-offset:2px}
@media(max-width:620px){.camellia-size-options{grid-template-columns:1fr}.camellia-size-card{min-height:82px;padding:14px!important}.camellia-order-field-grid{grid-template-columns:1fr}.camellia-order-field-grid .wide{grid-column:1}.camellia-site div.product form.cart .single_add_to_cart_button{width:calc(100% - 82px)}.camellia-addon-grid{display:flex;overflow-x:auto}.camellia-addon{flex:0 0 240px}}

/* 4.3: compact editable catalogue labels and equal-height product cards. */
.camellia-original-home .product-card,.camellia-original-shop .product-card,.camellia-original-page .product-card{display:flex;height:100%}
.camellia-original-home .product-card>a,.camellia-original-shop .product-card>a,.camellia-original-page .product-card>a{display:flex;flex:1;flex-direction:column;min-width:0}
.camellia-original-home .product-info,.camellia-original-shop .product-info,.camellia-original-page .product-info{display:flex;flex:1;flex-direction:column;min-width:0}
.camellia-original-home .product-info>p,.camellia-original-shop .product-info>p,.camellia-original-page .product-info>p,.cam-product-card-category{display:-webkit-box;line-height:1.45;min-height:1.45em;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:1}
.camellia-original-home .product-info h3,.camellia-original-shop .product-info h3,.camellia-original-page .product-info h3{display:-webkit-box;line-height:1.16;min-height:2.32em;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.camellia-original-home .product-info>div,.camellia-original-shop .product-info>div,.camellia-original-page .product-info>div{margin-top:auto;min-height:34px}
.camellia-site ul.products{align-items:stretch}
.camellia-site ul.products li.product{display:flex;flex-direction:column;min-width:0}
.camellia-site ul.products li.product .woocommerce-LoopProduct-link{display:flex;flex:1;flex-direction:column;min-width:0}
.cam-product-card-category{color:#777f7a;font-size:.68rem;letter-spacing:.1em;margin:0 0 7px;text-transform:uppercase;white-space:normal}
.camellia-site ul.products li.product .woocommerce-loop-product__title{display:-webkit-box;line-height:1.16;min-height:2.32em;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.camellia-site ul.products li.product .price{margin-top:auto;min-height:1.5em}
.camellia-site ul.products li.product>.button{align-self:flex-start;margin-top:10px}

/* WordPress-managed menus retain the approved header and footer styling. */
.desktop-nav .cam-menu{align-items:center;display:flex;gap:clamp(15px,1.55vw,27px);justify-content:center;list-style:none;margin:0;padding:0}
.desktop-nav .cam-menu>li{position:relative}
.desktop-nav .cam-menu>li>a{display:block;font-size:.73rem;font-weight:700;letter-spacing:.045em;padding:31px 0;white-space:nowrap}
.desktop-nav .cam-menu .menu-item-has-children>a:after{content:" +";font-size:.72em}
.desktop-nav .cam-menu .sub-menu{background:#fff;border-top:2px solid var(--gold);box-shadow:var(--shadow);display:none;left:-22px;list-style:none;margin:0;min-width:245px;padding:15px;position:absolute;top:69px;z-index:95}
.desktop-nav .cam-menu li:hover>.sub-menu,.desktop-nav .cam-menu li:focus-within>.sub-menu{display:grid}
.desktop-nav .cam-menu .sub-menu a{display:block;padding:10px 12px;white-space:nowrap}
.desktop-nav .cam-menu .sub-menu a:hover,.desktop-nav .cam-menu .sub-menu a:focus{background:var(--ivory)}
.mobile-menu-list{list-style:none;margin:0;padding:0}
.mobile-menu-list>li{border-bottom:1px solid var(--stone)}
.mobile-menu-list>li>a{display:block;font-family:var(--serif);font-size:1.22rem;padding:18px 0}
.mobile-menu-list .sub-menu{list-style:none;margin:-8px 0 12px;padding:0 0 0 16px}
.mobile-menu-list .sub-menu a{display:block;font-size:.86rem;padding:7px 0}
.mobile-submenu-toggle{align-items:center;background:none;border:0;display:flex;font-family:var(--serif);font-size:1.22rem;justify-content:space-between;padding:18px 0;text-align:left;width:100%}
.footer-menu{list-style:none;margin:0;padding:0}
.footer-menu li{margin:0 0 9px}
.footer-social{display:flex;flex-wrap:wrap;gap:15px;margin-top:8px}

/* Checkout stays WooCommerce-native, narrower and easier to scan. */
.woocommerce-checkout .cam-page-content>.woocommerce{max-width:1120px}
.woocommerce-checkout form.checkout{gap:20px 42px;grid-template-columns:minmax(0,1fr) 360px}
.camellia-checkout-gift{border-top:1px solid var(--cam-stone);margin-top:30px;padding-top:24px}
.camellia-checkout-gift h3{margin-bottom:18px}
.camellia-checkout-note{background:var(--cam-sage);color:var(--cam-green);font-size:.75rem;padding:14px}
.camellia-billing-address-field[hidden]{display:none!important}.camellia-billing-toggle{border-top:1px solid var(--cam-stone);margin-top:18px;padding-top:18px}
.camellia-recipient-heading label{pointer-events:none}.camellia-recipient-heading input{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;width:1px}
.woocommerce-checkout .form-row input,.woocommerce-checkout .form-row select,.woocommerce-checkout .form-row textarea{max-width:100%}
.camellia-original-page .local-seo-copy{background:#fff;margin:0 auto;max-width:1180px;padding:clamp(45px,7vw,85px)}
.camellia-original-page .local-seo-copy h2{font-size:clamp(2.2rem,4vw,3.8rem);margin-top:0}
.camellia-original-page .local-seo-copy h3{font-size:1.55rem;margin-top:34px}
.camellia-original-page .local-seo-copy p{color:#59635e;line-height:1.75}
.camellia-original-page .local-seo-copy a{border-bottom:1px solid var(--gold);color:var(--green);font-weight:700}
@media(max-width:1180px){.desktop-nav .cam-menu{gap:13px}.desktop-nav .cam-menu>li>a{font-size:.65rem}.desktop-nav .cam-menu>li:nth-last-child(-n+2){display:none}}
@media(max-width:900px){.woocommerce-checkout form.checkout{grid-template-columns:1fr}.mobile-menu-list{margin-bottom:14px}}
@media(max-width:620px){.camellia-original-home .product-info>div,.camellia-original-shop .product-info>div,.camellia-original-page .product-info>div{align-items:flex-start;display:flex;flex-direction:column;gap:8px;min-height:72px}.camellia-original-home .product-info h3,.camellia-original-shop .product-info h3,.camellia-original-page .product-info h3,.camellia-site ul.products li.product .woocommerce-loop-product__title{min-height:2.5em}.cam-product-card-category{font-size:.62rem}.woocommerce-checkout .form-row-first,.woocommerce-checkout .form-row-last{float:none;width:100%}}

/* ---- Shop by Occasion slider (added) ---- */
.camellia-original-home .occasion-slider-section{--os-gap:clamp(14px,1.6vw,22px);padding-top:clamp(52px,6vw,92px);padding-bottom:clamp(52px,6vw,92px)}
.camellia-original-home .os-head{align-items:flex-end;display:flex;gap:28px;justify-content:space-between;margin-bottom:clamp(26px,3vw,40px)}
.camellia-original-home .os-head h2{font-size:clamp(1.85rem,3.1vw,2.85rem);margin:0 0 12px}
.camellia-original-home .os-sub{color:#66706b;font-size:1rem;margin:0;max-width:520px}
.camellia-original-home .os-arrows{display:flex;flex-shrink:0;gap:10px}
.camellia-original-home .os-arrows button{align-items:center;background:transparent;border:1px solid rgba(24,60,50,.22);border-radius:50%;color:var(--cam-green,#183c32);display:flex;height:46px;justify-content:center;padding:0;transition:background .3s ease,border-color .3s ease,color .3s ease,opacity .3s ease;width:46px}
.camellia-original-home .os-arrows button svg{height:15px;width:15px}
.camellia-original-home .os-arrows button:hover{background:var(--cam-green,#183c32);border-color:var(--cam-green,#183c32);color:#fff}
.camellia-original-home .os-arrows button[disabled]{cursor:default;opacity:.3}
.camellia-original-home .os-arrows button[disabled]:hover{background:transparent;border-color:rgba(24,60,50,.22);color:var(--cam-green,#183c32)}
.camellia-original-home .os-viewport{display:flex;gap:var(--os-gap);overflow-x:auto;overscroll-behavior-x:contain;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch}
.camellia-original-home .os-viewport::-webkit-scrollbar{display:none}
.camellia-original-home .os-card{aspect-ratio:.8;display:block;flex:0 0 calc((100% - (var(--os-gap) * 3)) / 4);overflow:hidden;position:relative;scroll-snap-align:start}
.camellia-original-home .os-card img{height:100%;left:0;object-fit:cover;position:absolute;top:0;transition:transform 1.1s cubic-bezier(.16,.68,.28,1);width:100%}
.camellia-original-home .os-card:after{background:linear-gradient(transparent 42%,rgba(12,25,21,.74));content:"";inset:0;position:absolute}
.camellia-original-home .os-card:hover img,.camellia-original-home .os-card:focus-visible img{transform:scale(1.05)}
.camellia-original-home .os-card span{bottom:clamp(18px,2vw,26px);color:#fff;font-family:var(--serif,var(--cam-serif,Baskerville,"Times New Roman",serif));font-size:clamp(1.25rem,1.5vw,1.6rem);left:clamp(18px,2vw,26px);line-height:1.15;position:absolute;right:clamp(18px,2vw,26px);z-index:2}
.camellia-original-home .os-dots{display:flex;gap:9px;justify-content:center;margin-top:clamp(22px,2.4vw,32px)}
.camellia-original-home .os-dots button{background:rgba(24,60,50,.22);border:0;border-radius:50%;height:7px;padding:0;transition:background .3s ease,width .3s ease;width:7px}
.camellia-original-home .os-dots button[aria-current="true"]{background:var(--cam-gold,#a48a57);width:22px;border-radius:4px}
@media (max-width:1024px){.camellia-original-home .os-card{flex:0 0 calc((100% - var(--os-gap)) / 2)}.camellia-original-home .os-arrows{display:none}}
@media (max-width:640px){.camellia-original-home .os-head{align-items:flex-start;flex-direction:column;gap:0}.camellia-original-home .os-card{aspect-ratio:.86;flex:0 0 78%}}
@media (prefers-reduced-motion:reduce){.camellia-original-home .os-viewport{scroll-behavior:auto}.camellia-original-home .os-card img{transition:none}}
/* ---- Florist delivery details: cart, checkout, date picker (added) ---- */
.cam-hidden-field,.camellia-site .cam-hidden-field{display:none!important}
.camellia-site .camellia-delivery-details{background:#fff;border:1px solid var(--cam-stone);margin:0 0 34px;padding:clamp(22px,3vw,34px)}
.camellia-site .camellia-delivery-details h2,.camellia-site .camellia-delivery-details h3{font-family:var(--cam-serif);font-size:clamp(1.5rem,2.2vw,2rem);margin:0 0 8px}
.camellia-site .cam-dd-intro{color:#66706b;font-size:.92rem;margin:0 0 22px;max-width:620px}
.camellia-site .camellia-florist-fields{display:grid;gap:18px 20px;grid-template-columns:repeat(2,minmax(0,1fr))}
.camellia-site .camellia-florist-fields .cam-ff-row{display:grid;gap:7px;margin:0}
.camellia-site .camellia-florist-fields .cam-ff-wide{grid-column:1/-1}
.camellia-site .camellia-florist-fields label{font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.camellia-site .camellia-florist-fields label abbr.required{border:0;color:var(--cam-gold);text-decoration:none}
.camellia-site .camellia-florist-fields small{color:#69716c;font-size:.72rem;line-height:1.45}
.camellia-site .camellia-florist-fields input[type=text],.camellia-site .camellia-florist-fields input[type=tel],.camellia-site .camellia-florist-fields select,.camellia-site .camellia-florist-fields textarea{-webkit-appearance:none;appearance:none;background:#fff!important;border:1px solid var(--cam-stone);border-radius:0;color:var(--cam-charcoal)!important;-webkit-text-fill-color:var(--cam-charcoal);caret-color:var(--cam-charcoal);font-family:var(--cam-sans);font-size:.95rem;line-height:1.5;min-height:48px;opacity:1;padding:12px 14px;width:100%}
.camellia-site .camellia-florist-fields select{background-image:linear-gradient(45deg,transparent 50%,var(--cam-charcoal) 50%),linear-gradient(135deg,var(--cam-charcoal) 50%,transparent 50%);background-position:calc(100% - 20px) 21px,calc(100% - 14px) 21px;background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:42px}
.camellia-site .camellia-florist-fields textarea{min-height:104px;resize:vertical}
.camellia-site .camellia-florist-fields input::placeholder,.camellia-site .camellia-florist-fields textarea::placeholder{color:#98a09b;-webkit-text-fill-color:#98a09b;opacity:1}
.camellia-site .camellia-florist-fields input:focus,.camellia-site .camellia-florist-fields textarea:focus,.camellia-site .camellia-florist-fields select:focus{border-color:var(--cam-green);outline:2px solid rgba(164,138,87,.55);outline-offset:1px}
.camellia-site .camellia-florist-fields .has-error{border-color:#b3392a!important}
.camellia-site .cam-ff-errors{display:none;grid-column:1/-1}
.camellia-site .cam-ff-errors.is-visible{background:rgba(179,57,42,.07);border-left:3px solid #b3392a;display:block;padding:12px 16px}
.camellia-site .cam-ff-errors p{color:#8f2c20;font-size:.85rem;margin:0}
.camellia-site .cam-ff-errors p+p{margin-top:6px}
@media (max-width:700px){.camellia-site .camellia-florist-fields{grid-template-columns:1fr}}

/* Checkout: controlled reading width, delivery address always open */
.camellia-site.woocommerce-checkout .woocommerce{margin:0 auto;max-width:1020px}
.camellia-site.woocommerce-checkout .col2-set .col-1,.camellia-site.woocommerce-checkout .col2-set .col-2{float:none;width:100%}
.camellia-site.woocommerce-checkout form.checkout{display:grid;gap:38px}
.camellia-site.woocommerce-checkout .camellia-delivery-details--checkout{margin-top:26px}
.camellia-site.cam-fulfil-delivery #ship-to-different-address input,.camellia-site.cam-fulfil-delivery #ship-to-different-address span{display:none}
.camellia-site.cam-fulfil-delivery #ship-to-different-address:after{content:"Delivery address";font-family:var(--cam-serif);font-size:clamp(1.4rem,2vw,1.8rem);font-weight:400}
.camellia-site .camellia-billing-toggle{margin-top:6px}
.camellia-site .cam-from-price{color:#69716c;font-size:.8em;letter-spacing:.04em;text-transform:uppercase}
.camellia-site .camellia-order-florist{margin:34px 0}
.camellia-site .camellia-order-florist h2{font-family:var(--cam-serif);font-size:1.6rem;margin:0 0 14px}

/* jQuery UI date picker, themed */
.camellia-datepicker.ui-datepicker,.ui-datepicker.camellia-datepicker{background:#fff;border:1px solid var(--cam-stone);box-shadow:0 18px 50px rgba(24,60,50,.16);display:none;padding:14px;width:298px;z-index:99999!important}
.camellia-datepicker .ui-datepicker-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px;position:relative}
.camellia-datepicker .ui-datepicker-title{font-family:var(--cam-serif);font-size:1.05rem;order:2;text-align:center}
.camellia-datepicker .ui-datepicker-prev,.camellia-datepicker .ui-datepicker-next{cursor:pointer;height:30px;position:relative;width:30px}
.camellia-datepicker .ui-datepicker-prev{order:1}
.camellia-datepicker .ui-datepicker-next{order:3}
.camellia-datepicker .ui-datepicker-prev span,.camellia-datepicker .ui-datepicker-next span{display:none}
.camellia-datepicker .ui-datepicker-prev:after,.camellia-datepicker .ui-datepicker-next:after{border:solid var(--cam-green);border-width:0 1.5px 1.5px 0;content:"";height:8px;left:9px;position:absolute;top:10px;width:8px}
.camellia-datepicker .ui-datepicker-prev:after{transform:rotate(135deg)}
.camellia-datepicker .ui-datepicker-next:after{transform:rotate(-45deg)}
.camellia-datepicker .ui-datepicker-prev.ui-state-disabled{opacity:.25;cursor:default}
.camellia-datepicker table{border-collapse:collapse;width:100%}
.camellia-datepicker th{color:#69716c;font-size:.62rem;font-weight:700;letter-spacing:.08em;padding:6px 0;text-transform:uppercase}
.camellia-datepicker td{padding:1px}
.camellia-datepicker td a,.camellia-datepicker td span{display:block;font-size:.85rem;line-height:34px;text-align:center;text-decoration:none}
.camellia-datepicker td a{color:var(--cam-charcoal)}
.camellia-datepicker td a:hover{background:var(--cam-sage)}
.camellia-datepicker td span{color:#c2c7c3}
.camellia-datepicker .ui-datepicker-today a{box-shadow:inset 0 0 0 1px var(--cam-gold)}
.camellia-datepicker td a.ui-state-active,.camellia-datepicker .ui-datepicker-current-day a{background:var(--cam-green);color:#fff}
@media (max-width:480px){.camellia-datepicker.ui-datepicker{width:calc(100vw - 40px)}}
/* ---- Cart-first delivery details (v2) ---- */
.camellia-site .camellia-florist-fields .cam-ff-address{display:grid;gap:18px 20px;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}
.camellia-site .camellia-florist-fields .cam-ff-address .cam-ff-wide{grid-column:1/-1}
.camellia-site .cam-ff-country{color:#69716c;font-size:.78rem;letter-spacing:.04em;margin:0;text-transform:uppercase}
@media (max-width:700px){.camellia-site .camellia-florist-fields .cam-ff-address{grid-template-columns:1fr}}
/* Checkout: no duplicate delivery form, read-only recap instead */
.camellia-site.woocommerce-checkout .woocommerce-shipping-fields{display:none!important}
.camellia-site.cam-fulfil-delivery #ship-to-different-address:after{content:none}
.camellia-site .camellia-delivery-recap{background:var(--cam-ivory);border:1px solid var(--cam-stone);margin:0 0 30px;padding:clamp(20px,2.6vw,28px)}
.camellia-site .camellia-delivery-recap h3{font-family:var(--cam-serif);font-size:1.4rem;margin:0 0 16px}
.camellia-site .camellia-delivery-recap dl{display:grid;gap:12px 22px;grid-template-columns:auto 1fr;margin:0 0 16px}
.camellia-site .camellia-delivery-recap dt{color:#69716c;font-size:.68rem;font-weight:700;letter-spacing:.09em;padding-top:2px;text-transform:uppercase}
.camellia-site .camellia-delivery-recap dd{font-size:.95rem;margin:0}
@media (max-width:600px){.camellia-site .camellia-delivery-recap dl{grid-template-columns:1fr;gap:4px 0}.camellia-site .camellia-delivery-recap dd{margin-bottom:10px}}
/* ---- Compact two-column checkout (v3) ---- */
.camellia-site.woocommerce-checkout .woocommerce{margin:0 auto;max-width:1180px}
.camellia-site.woocommerce-checkout form.checkout.woocommerce-checkout{align-items:start;column-gap:clamp(26px,3vw,48px);display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);row-gap:0}
.camellia-site.woocommerce-checkout form.checkout>#customer_details{grid-column:1;grid-row:1}
.camellia-site.woocommerce-checkout .cam-order-col{grid-column:2;grid-row:1;position:sticky;top:24px}
.camellia-site.woocommerce-checkout form.checkout>.woocommerce-NoticeGroup,.camellia-site.woocommerce-checkout form.checkout>.woocommerce-error,.camellia-site.woocommerce-checkout form.checkout>.woocommerce-info{grid-column:1/-1}
.camellia-site.woocommerce-checkout #customer_details .col2-set,.camellia-site.woocommerce-checkout #customer_details .col-1{float:none;margin:0;width:100%}
.camellia-site.woocommerce-checkout #customer_details .col-2{display:none}
.camellia-site.woocommerce-checkout .woocommerce-billing-fields h3,.camellia-site.woocommerce-checkout #order_review_heading{font-family:var(--cam-serif);font-size:clamp(1.4rem,2vw,1.85rem);font-weight:400;margin:0 0 18px}
.camellia-site.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{display:grid;gap:14px 18px;grid-template-columns:repeat(2,minmax(0,1fr))}
.camellia-site.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row{float:none!important;margin:0!important;padding:0!important;width:auto!important}
.camellia-site.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-wide{grid-column:1/-1}
.camellia-site.woocommerce-checkout .woocommerce-billing-fields__field-wrapper label{display:block;font-size:.7rem;font-weight:700;letter-spacing:.04em;margin-bottom:6px;text-transform:uppercase}
.camellia-site.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .input-text,.camellia-site.woocommerce-checkout .woocommerce-billing-fields__field-wrapper select{background:#fff!important;border:1px solid var(--cam-stone);border-radius:0;color:var(--cam-charcoal)!important;-webkit-text-fill-color:var(--cam-charcoal);min-height:48px;padding:12px 14px;width:100%}
.camellia-site.woocommerce-checkout .camellia-delivery-details{margin-top:26px}
.camellia-site.woocommerce-checkout .camellia-delivery-details h2{font-size:clamp(1.4rem,2vw,1.85rem)}
/* Right panel */
.camellia-site.woocommerce-checkout .cam-order-col #order_review{background:#fff;border:1px solid var(--cam-stone);padding:clamp(18px,2vw,26px)}
.camellia-site.woocommerce-checkout .cam-order-col table.shop_table{border:0;margin:0 0 6px;width:100%}
.camellia-site.woocommerce-checkout .cam-order-col table.shop_table th,.camellia-site.woocommerce-checkout .cam-order-col table.shop_table td{border:0;border-bottom:1px solid var(--cam-stone);font-size:.9rem;padding:10px 0}
.camellia-site.woocommerce-checkout .cam-order-col table.shop_table tfoot .order-total th,.camellia-site.woocommerce-checkout .cam-order-col table.shop_table tfoot .order-total td{border-bottom:0;font-size:1.05rem;font-weight:700;padding-top:14px}
.camellia-site.woocommerce-checkout .cam-order-col ul#shipping_method{list-style:none;margin:0;padding:0}
.camellia-site.woocommerce-checkout .cam-order-col ul#shipping_method li{align-items:baseline;display:flex;gap:9px;margin:0 0 8px}
.camellia-site.woocommerce-checkout .cam-order-col ul#shipping_method li input{margin:0;flex:0 0 auto}
.camellia-site.woocommerce-checkout .cam-order-col ul#shipping_method label{font-size:.88rem;font-weight:400;text-transform:none}
.camellia-site.woocommerce-checkout #payment{background:transparent;border-radius:0;margin-top:6px}
.camellia-site.woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid var(--cam-stone);padding:0 0 14px}
.camellia-site.woocommerce-checkout #payment ul.payment_methods li{list-style:none}
.camellia-site.woocommerce-checkout #payment .payment_box{background:var(--cam-ivory);margin:10px 0 0;padding:14px}
.camellia-site.woocommerce-checkout #payment .payment_box:before{display:none}
.camellia-site.woocommerce-checkout #payment .wc-stripe-elements-field,.camellia-site.woocommerce-checkout #payment .wc-payment-form input,.camellia-site.woocommerce-checkout #payment .StripeElement{background:#fff;border:1px solid var(--cam-stone);border-radius:0;padding:12px;width:100%}
.camellia-site.woocommerce-checkout #payment .form-row.place-order{margin:16px 0 0;padding:0}
.camellia-site.woocommerce-checkout #place_order{font-size:.78rem;letter-spacing:.1em;min-height:56px;width:100%}
.camellia-site.woocommerce-checkout .woocommerce-privacy-policy-text{font-size:.78rem}
.camellia-site.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{margin-top:10px}
@media (max-width:980px){
	.camellia-site.woocommerce-checkout form.checkout.woocommerce-checkout{grid-template-columns:1fr;row-gap:34px}
	.camellia-site.woocommerce-checkout form.checkout>#customer_details,.camellia-site.woocommerce-checkout .cam-order-col{grid-column:1;grid-row:auto;position:static;top:auto}
}
@media (max-width:640px){
	.camellia-site.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{grid-template-columns:1fr}
	.camellia-site.woocommerce-checkout .woocommerce{padding-left:16px;padding-right:16px}
}
/* ---- Occasion slider: one full card per swipe on phones ---- */
@media (max-width:640px){
	.camellia-original-home .occasion-slider-section{--os-gap:12px}
	.camellia-original-home .os-card{aspect-ratio:.9;flex:0 0 100%}
	.camellia-original-home .os-dots{margin-top:18px}
	.camellia-original-home .os-dots button{height:8px;width:8px}
	.camellia-original-home .os-dots button[aria-current="true"]{width:24px}
}
/* ---- Mobile menu: parent links navigate, arrow expands children ---- */
.mobile-menu-list>li.has-submenu-toggle{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between}
.mobile-menu-list>li.has-submenu-toggle>a{flex:1 1 auto;min-height:56px;display:flex;align-items:center}
.mobile-menu-list>li.has-submenu-toggle>.mobile-submenu-toggle{align-items:center;background:none;border:0;display:flex;flex:0 0 auto;height:56px;justify-content:center;padding:0;width:56px}
.mobile-menu-list>li.has-submenu-toggle>.mobile-submenu-toggle span{font-family:var(--cam-sans,Arial,Helvetica,sans-serif);font-size:1.35rem;line-height:1}
.mobile-menu-list>li.has-submenu-toggle>.sub-menu{flex:1 0 100%;margin:0 0 14px}
.mobile-menu-list .sub-menu a{min-height:44px;display:flex;align-items:center;padding:4px 0}
/* ---- Mobile refinement for the Elementor-built pages ----
   Scope: .cam-dark-hero / .cam-page-hero / .cam-section and their children
   (corsages-boutonnieres, graduation-flowers, shop, blog). The theme-rendered
   pages (.camellia-original-page / -home / -shop) already carry their own
   mobile rules and are deliberately untouched here. */
@media (max-width: 900px) {
	.camellia-site .cam-dark-hero{background-position:center;min-height:0;padding:clamp(78px,13vw,104px) 24px clamp(40px,7vw,58px)}
	/* Vertical scrim. The desktop gradient runs left-to-right, which leaves
	   narrow screens with light text over the bright side of the photo. Applied
	   to the overlay only, so the image stays whatever Elementor is set to. */
	.camellia-site .cam-dark-hero>.elementor-background-overlay{background:linear-gradient(180deg,rgba(9,26,21,.42) 0%,rgba(9,26,21,.62) 58%,rgba(9,26,21,.8) 100%)!important;opacity:1!important}
	.camellia-site .cam-dark-hero .elementor-heading-title{font-size:clamp(2.3rem,8.4vw,3.15rem);line-height:1.06;text-wrap:balance}
	.camellia-site .cam-dark-hero p{color:rgba(255,255,255,.92);font-size:1rem;max-width:34ch}
	.camellia-site .cam-dark-hero .cam-eyebrow{color:rgba(255,255,255,.78)}
	.camellia-site .cam-page-hero{padding:clamp(58px,10vw,72px) 22px clamp(34px,6vw,44px)}
	.camellia-site .cam-page-hero h1,.camellia-site .cam-page-hero .elementor-heading-title{font-size:clamp(2.3rem,8.4vw,3.2rem);line-height:1.08}
	.camellia-site .cam-page-hero .elementor-widget-text-editor{font-size:.98rem}
	.camellia-site .cam-section{padding:clamp(48px,8vw,62px) 22px}
	.camellia-site .cam-section-heading{margin-bottom:26px}
	.camellia-site .cam-seo-feature-grid>.elementor-container{display:grid;gap:26px 22px;grid-template-columns:1fr 1fr}
	.camellia-site .cam-seo-feature-grid .elementor-column{width:100%}
	.camellia-site .cam-standard-content>.elementor-widget-heading .elementor-heading-title{font-size:clamp(1.75rem,5.6vw,2.3rem);line-height:1.14}
	.camellia-site .cam-standard-content h3{font-size:1.16rem;margin-bottom:8px;margin-top:26px}
	.camellia-site .cam-standard-content p{line-height:1.62}
	.camellia-site .cam-standard-content>.elementor-widget:not(:last-child){margin-bottom:14px}
	/* FAQ / accordion: compact rows, comfortable open state, 48px+ targets */
	.camellia-site .cam-section .elementor-accordion-item+.elementor-accordion-item{margin-top:0}
	.camellia-site .cam-section .elementor-tab-title{font-size:.98rem;line-height:1.4;min-height:52px;padding:14px 16px}
	.camellia-site .cam-section .elementor-tab-content{font-size:.94rem;line-height:1.6;padding:2px 16px 18px}
	.camellia-site .cam-contact-form{gap:13px;grid-template-columns:1fr}
	.camellia-site .cam-contact-form input,.camellia-site .cam-contact-form select,.camellia-site .cam-contact-form textarea{min-height:48px;width:100%}
	.camellia-site .cam-contact-form button{min-height:52px;width:100%}
	.camellia-site .cam-policy-copy{margin:44px auto 62px;padding:30px 22px}
	.camellia-site .cam-policy-copy h2{font-size:1.6rem;margin-top:30px}
}
@media (max-width: 520px) {
	.camellia-site .cam-seo-feature-grid>.elementor-container{gap:24px;grid-template-columns:1fr}
	.camellia-site .cam-dark-hero{padding-left:20px;padding-right:20px}
	.camellia-site .cam-page-hero,.camellia-site .cam-section{padding-left:20px;padding-right:20px}
}
/* No page may scroll sideways. */
.camellia-site .cam-section img,.camellia-site .cam-dark-hero img,.camellia-site .cam-page-hero img{max-width:100%}
/* Contact/enquiry form controls: style by element, not by type attribute,
   so a field without an explicit type is not left with UA defaults. */
.camellia-site .cam-contact-form input:not([type=hidden]),
.camellia-site .cam-contact-form textarea,
.camellia-site .cam-contact-form select{background:#fff;border:1px solid var(--cam-stone);border-radius:0;color:var(--cam-charcoal);-webkit-text-fill-color:var(--cam-charcoal);font-family:var(--cam-sans);font-size:.95rem;padding:12px 14px;width:100%}
.camellia-site .cam-contact-form input:not([type=hidden]):focus,
.camellia-site .cam-contact-form textarea:focus{border-color:var(--cam-green);outline:2px solid rgba(164,138,87,.55);outline-offset:1px}
/* ---- Desktop/laptop layout for the Elementor-built pages ----
   The feature sections are saved with Elementor's "no gap" column setting, so
   the four columns touch and paragraph text runs into the next column. Lay the
   columns out as a grid with a real gap, centre the content in a readable
   container, and cap long-form copy. Backgrounds stay full-bleed. */
.camellia-site .cam-section{padding-left:clamp(20px,3.2vw,40px);padding-right:clamp(20px,3.2vw,40px)}
.camellia-site .cam-section>.elementor-container,
.camellia-site .cam-page-hero>.elementor-container{margin-left:auto;margin-right:auto;max-width:1240px;width:100%}
.camellia-site .cam-seo-feature-grid>.elementor-container{display:grid;gap:34px 36px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.camellia-site .cam-seo-feature-grid>.elementor-container>.elementor-column{width:auto}
.camellia-site .cam-seo-feature-grid .elementor-widget-wrap{padding:0}
.camellia-site .cam-seo-feature-grid .elementor-heading-title{margin-bottom:10px}
.camellia-site .cam-seo-feature-grid p{line-height:1.62;margin:0}
/* Long-form copy stays readable rather than spanning the container. */
.camellia-site .cam-standard-content .elementor-widget-text-editor{max-width:820px}
.camellia-site .cam-standard-content .elementor-widget-heading .elementor-heading-title{max-width:900px}
.camellia-site .cam-standard-content p{line-height:1.65}
.camellia-site .cam-dark-hero{padding-left:clamp(24px,5vw,72px);padding-right:clamp(24px,5vw,72px)}
.camellia-site .cam-dark-hero>.elementor-container{margin-left:auto;margin-right:auto;max-width:1240px;width:100%}
/* Four across needs room; drop to 2 x 2 before the columns get cramped. */
@media (max-width:1100px){
	.camellia-site .cam-seo-feature-grid>.elementor-container{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* Hero eyebrow/body copy read light at every width, not only on phones. */
.camellia-site .cam-dark-hero .cam-eyebrow{color:rgb(255 255 255 / .8)}
.camellia-site .cam-dark-hero .elementor-widget-text-editor,
.camellia-site .cam-dark-hero .elementor-widget-text-editor p{color:rgb(255 255 255 / .88)}
/* ---- Florist's Choice bouquet builder modal ---- */
.camellia-site .cam-choice-backdrop{align-items:center;background:rgba(12,28,23,.62);display:flex;inset:0;justify-content:center;overflow-y:auto;padding:24px;position:fixed;z-index:100000}
.camellia-site .cam-choice-backdrop[hidden]{display:none}
.camellia-site .cam-choice{background:#fff;border:1px solid var(--cam-stone);margin:auto;max-width:600px;padding:clamp(24px,3vw,40px);position:relative;width:100%}
.camellia-site .cam-choice .eyebrow{margin:0 0 6px}
.camellia-site .cam-choice h2{font-family:var(--cam-serif);font-size:clamp(1.7rem,3.4vw,2.3rem);font-weight:400;margin:0 0 10px}
.camellia-site .cam-choice-intro{color:#66706b;font-size:.92rem;line-height:1.6;margin:0 0 26px}
.camellia-site .cam-choice-close{background:none;border:0;color:var(--cam-charcoal);font-size:1.7rem;line-height:1;padding:0;position:absolute;right:14px;top:12px;height:44px;width:44px}
.camellia-site .cam-choice-close:hover{color:var(--cam-gold)}
.camellia-site .cam-choice-field{margin-bottom:24px}
.camellia-site .cam-choice-label{display:block;font-size:.7rem;font-weight:700;letter-spacing:.06em;margin-bottom:10px;text-transform:uppercase}
.camellia-site .cam-choice-label i{color:#8a918c;font-style:normal;font-weight:400;letter-spacing:.02em;text-transform:none}
.camellia-site .cam-choice-sizes{display:grid;gap:10px}
.camellia-site .cam-choice-size{align-items:center;border:1px solid var(--cam-stone);cursor:pointer;display:flex;gap:14px;min-height:64px;padding:12px 16px;transition:border-color .2s ease,background .2s ease}
.camellia-site .cam-choice-size input{accent-color:var(--cam-green);flex:0 0 auto;height:18px;margin:0;width:18px}
.camellia-site .cam-choice-size-body{display:flex;flex:1 1 auto;flex-direction:column;gap:2px}
.camellia-site .cam-choice-size strong{font-size:1rem;font-weight:600}
.camellia-site .cam-choice-size small{color:#7a827d;font-size:.78rem}
.camellia-site .cam-choice-size em{font-family:var(--cam-serif);font-size:1.15rem;font-style:normal}
.camellia-site .cam-choice-size:hover{background:var(--cam-ivory)}
.camellia-site .cam-choice-size:has(input:checked){background:var(--cam-ivory);border-color:var(--cam-green);box-shadow:inset 0 0 0 1px var(--cam-green)}
.camellia-site .cam-choice-palettes{display:flex;flex-wrap:wrap;gap:9px}
.camellia-site .cam-choice-chip{cursor:pointer}
.camellia-site .cam-choice-chip input{height:1px;opacity:0;position:absolute;width:1px}
.camellia-site .cam-choice-chip span{align-items:center;border:1px solid var(--cam-stone);display:inline-flex;font-size:.86rem;min-height:44px;padding:0 16px;transition:border-color .2s ease,background .2s ease,color .2s ease;white-space:nowrap}
.camellia-site .cam-choice-chip span:hover{background:var(--cam-ivory)}
.camellia-site .cam-choice-chip input:checked+span{background:var(--cam-green);border-color:var(--cam-green);color:#fff}
.camellia-site .cam-choice-chip input:focus-visible+span{outline:2px solid var(--cam-gold);outline-offset:2px}
.camellia-site .cam-choice select,.camellia-site .cam-choice textarea{background:#fff;border:1px solid var(--cam-stone);border-radius:0;color:var(--cam-charcoal);-webkit-text-fill-color:var(--cam-charcoal);font-family:var(--cam-sans);font-size:.95rem;min-height:48px;padding:12px 14px;width:100%}
.camellia-site .cam-choice textarea{line-height:1.55;min-height:88px;resize:vertical}
.camellia-site .cam-choice select:focus,.camellia-site .cam-choice textarea:focus{border-color:var(--cam-green);outline:2px solid rgba(164,138,87,.5);outline-offset:1px}
.camellia-site .cam-choice-error{display:none}
.camellia-site .cam-choice-error.is-visible{background:rgba(179,57,42,.07);border-left:3px solid #b3392a;color:#8f2c20;display:block;font-size:.87rem;margin-bottom:16px;padding:11px 14px}
.camellia-site .cam-choice-submit{min-height:54px;width:100%}
.camellia-site .cam-choice-submit.is-busy{opacity:.6;pointer-events:none}
.camellia-site .cam-choice-foot{color:#8a918c;font-size:.78rem;margin:12px 0 0;text-align:center}
@media (max-width:600px){
	.camellia-site .cam-choice-backdrop{padding:0}
	.camellia-site .cam-choice{border:0;margin:0;max-width:none;min-height:100%;padding:26px 20px 34px}
	.camellia-site .cam-choice-palettes{display:grid;grid-template-columns:1fr 1fr}
	.camellia-site .cam-choice-chip span{justify-content:center;padding:0 10px;text-align:center;width:100%}
}
/* The modal renders in the footer, outside .camellia-original-* , so the
   scoped .btn/.eyebrow styles do not reach it. Style it self-contained. */
.camellia-site .cam-choice .eyebrow{color:#8a7c5f;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.camellia-site .cam-choice-submit,.camellia-site .cam-choice-submit.btn.primary{align-items:center;background:var(--cam-green,#183c32);border:0;color:#fff;cursor:pointer;display:inline-flex;font-family:var(--cam-sans);font-size:.74rem;font-weight:700;justify-content:center;letter-spacing:.14em;padding:18px 28px;text-transform:uppercase;transition:background .25s ease}
.camellia-site .cam-choice-submit:hover{background:var(--cam-green-dark,#102d25)}
.camellia-site .cam-choice-submit:focus-visible{outline:2px solid var(--cam-gold,#a48a57);outline-offset:2px}
/* Florist's Choice: budget input and size guidance. */
.camellia-site .cam-choice-budget{align-items:center;border:1px solid var(--cam-stone);display:flex;gap:0}
.camellia-site .cam-choice-budget span{color:#6f766f;font-size:1.05rem;padding:0 4px 0 14px}
.camellia-site .cam-choice-budget input{-moz-appearance:textfield;background:#fff;border:0;color:var(--cam-charcoal);-webkit-text-fill-color:var(--cam-charcoal);font-family:var(--cam-sans);font-size:1.05rem;min-height:52px;padding:12px 14px 12px 4px;width:100%}
.camellia-site .cam-choice-budget input::-webkit-outer-spin-button,.camellia-site .cam-choice-budget input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.camellia-site .cam-choice-budget:focus-within{border-color:var(--cam-green);outline:2px solid rgba(164,138,87,.5);outline-offset:1px}
.camellia-site .cam-choice-field>small{color:#69716c;display:block;font-size:.78rem;line-height:1.5;margin-top:8px}
.camellia-site .cam-choice-hint:not(:empty){background:var(--cam-ivory);border-left:2px solid var(--cam-gold);color:#5d645e;display:block;font-size:.79rem;margin-top:10px;padding:9px 12px}
