/* Site-wide redesign (body.home on every page). Deeper navy, one expanded background image, 3D depth. */
body.home{
  --deep:#0f3d33; --blue:#1f7a62; --ink:#10302a; --muted:#1d5a4a; --line:#cfe3d9; --teal:#2f6b4d;
  --glass:rgba(255,255,255,.74);
  --shadow:0 2px 4px rgba(15,61,51,.08),0 14px 30px rgba(15,61,51,.14),0 34px 60px -20px rgba(15,61,51,.28);
  background:
    linear-gradient(180deg,rgba(246,250,247,.90) 0%,rgba(246,250,247,.80) 45%,rgba(246,250,247,.93) 100%),
    url("../assets/images/petals-bag-1.jpg") center top/cover fixed no-repeat;
  background-color:#ecf5f0;
}
body.home .mock-bar{background:rgba(255,247,224,.92)}
body.home header.site{background:rgba(255,255,255,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
body.home nav.main a.active{color:var(--blue)}
body.home nav.main a.cta{background:linear-gradient(180deg,#2c9677,#176650);box-shadow:0 6px 14px rgba(23,102,80,.35)}

/* hero: transparent so the single background image shows through */
body.home .hero{background:none;padding:84px 0 70px}
body.home .hero .wrap{perspective:1200px}
body.home .hero h1{
  color:var(--deep);font-size:clamp(2.2rem,5vw,3.6rem);letter-spacing:-.01em;
  text-shadow:0 1px 0 #2f7a66,0 2px 0 #256a58,0 3px 0 #1b5546,0 4px 0 #134035,0 10px 18px rgba(15,61,51,.32);
}
body.home .hero h1::after{width:84px;background:linear-gradient(90deg,#f0b73f,#d99319);box-shadow:0 4px 10px rgba(217,147,25,.45)}
body.home .hero p.lead{color:#2d3558;font-weight:500}
body.home .eyebrow{color:var(--teal)}

/* 3D photos */
.tilt{transition:transform .25s ease,box-shadow .25s ease;transform-style:preserve-3d;will-change:transform}
body.home .photo{border-radius:18px;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.7)}
body.home .photo.tilt:hover{box-shadow:0 2px 4px rgba(15,61,51,.1),0 28px 50px rgba(15,61,51,.28),0 60px 90px -24px rgba(15,61,51,.4)}
body.home .photo img{image-rendering:auto;filter:saturate(1.08) contrast(1.04)}
body.home .photo figcaption{background:rgba(255,255,255,.9)}
body.home .hero figure.photo{transform:perspective(1200px) rotateY(-8deg) rotateX(3deg)}
body.home .hero figure.photo.tilt:hover{transform:none}

/* sections: glass over the background */
body.home section{background:none}
body.home section.alt{background:rgba(255,255,255,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid rgba(255,255,255,.7);border-bottom:1px solid rgba(211,216,238,.7)}
body.home .sec-title{color:var(--deep);text-shadow:0 1px 0 #fff,0 6px 14px rgba(15,61,51,.14)}
body.home .card{background:var(--glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.8);border-radius:18px;box-shadow:var(--shadow);transition:transform .25s ease,box-shadow .25s ease}
body.home .card:hover{transform:translateY(-8px) rotateX(3deg);box-shadow:0 2px 4px rgba(15,61,51,.1),0 24px 44px rgba(15,61,51,.22)}
body.home .grid{perspective:1000px}
body.home .card h3{color:var(--deep)}
body.home .ico{background:linear-gradient(145deg,#dcf0e6,#bfe0d2);color:var(--blue);box-shadow:inset 0 1px 0 #fff,0 6px 12px rgba(15,61,51,.15)}
body.home .tier{border-top:4px solid var(--gold)}
body.home table.spec{background:var(--glass);border-radius:12px;overflow:hidden}
body.home .btn{background:linear-gradient(180deg,#2c9677,#176650);border-color:#176650;box-shadow:0 8px 18px rgba(23,102,80,.35),inset 0 1px 0 rgba(255,255,255,.25)}
body.home .btn:hover{background:linear-gradient(180deg,#176650,#0f3d33);transform:translateY(-2px)}
body.home .btn.ghost{background:rgba(255,255,255,.85);color:var(--blue);box-shadow:0 6px 14px rgba(15,61,51,.12)}

/* darker closing band */
body.home .cta-band{background:radial-gradient(700px 260px at 80% 0%,rgba(240,183,63,.18),transparent 70%),linear-gradient(180deg,#0f4a3b,#082a22)}
body.home .cta-band p{color:#c9e6da}
body.home .cta-band .btn{background:#fff;color:var(--deep);box-shadow:0 8px 20px rgba(0,0,0,.3)}
body.home footer.site{background:rgba(255,255,255,.85)}

@media(max-width:900px){body.home .hero figure.photo{transform:none}body.home{background-attachment:scroll}}
@media(prefers-reduced-motion:reduce){.tilt,body.home .card{transition:none}}

/* inner pages */
body.home .page-hero{padding:64px 0 36px}
body.home details{background:var(--glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.8);border-radius:16px;box-shadow:var(--shadow)}
body.home details summary{color:var(--deep)}
body.home details p{color:var(--muted)}
body.home input,body.home select,body.home textarea{background:rgba(255,255,255,.9);border-color:var(--line)}
body.home input:focus,body.home select:focus,body.home textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(31,122,98,.2)}
body.home .ph{background:rgba(255,255,255,.6);border-color:#a5cdbd}
body.home .foot a:hover{color:var(--blue)}

/* descriptive copy, About text and FAQ answers in blue */
body.home .hero p.lead,body.home .sub,body.home .card p,body.home .card li,body.home details p,body.home .checks li,body.home .note,body.home table.spec td:last-child{color:#1d5a4a}
body.home details p{color:#226652}
body.home .cta-band p{color:#c9e6da}

/* cards: icon and heading on one line */
body.home .card:has(.ico){display:grid;grid-template-columns:auto 1fr;column-gap:14px;align-items:center}
body.home .card:has(.ico) .ico{margin:0;grid-column:1;grid-row:1}
body.home .card:has(.ico) h3{margin:0;grid-column:2;grid-row:1}
body.home .card:has(.ico) > :not(.ico):not(h3){grid-column:1/-1}
body.home .card:has(.ico) > p,body.home .card:has(.ico) > ul{margin-top:14px}

/* alternating light / 3D blue cards */
body.home .grid > .card:nth-child(even){
  background:radial-gradient(160% 120% at 0% 0%,#3aa889 0%,#166a52 45%,#0f3d33 100%);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35),inset 0 -10px 24px rgba(4,24,19,.35),0 2px 4px rgba(15,61,51,.2),0 18px 32px rgba(15,61,51,.35),0 40px 60px -22px rgba(15,61,51,.5);
}
body.home .grid > .card:nth-child(even):hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.35),inset 0 -10px 24px rgba(4,24,19,.35),0 30px 50px rgba(15,61,51,.5)}
body.home .grid > .card:nth-child(even) h3{color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.35)}
body.home .grid > .card:nth-child(even) p,body.home .grid > .card:nth-child(even) li{color:#d6efe5}
body.home .grid > .card:nth-child(even) em{color:#fff}
body.home .grid > .card:nth-child(even) .ico{background:linear-gradient(145deg,rgba(255,255,255,.28),rgba(255,255,255,.1));color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 6px 12px rgba(0,0,0,.3)}
body.home .grid > .card.tier:nth-child(even){border-top:4px solid var(--gold)}
body.home .grid > .card:nth-child(even) .tag{color:#f0c36a}
body.home .grid > .card:nth-child(even) .btn{background:#fff;color:var(--deep);border-color:#fff;box-shadow:0 8px 18px rgba(0,0,0,.3)}
body.home .grid > .card:nth-child(even) .btn:hover{background:#e1f1ea}

/* alt sections: glass panel only as wide as the content container, so the background shows on both sides */
body.home section.alt{background:none;backdrop-filter:none;-webkit-backdrop-filter:none;border:0}
body.home section.alt > .wrap{background:rgba(255,255,255,.58);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.8);border-radius:24px;box-shadow:var(--shadow);padding:44px 40px}
@media(max-width:680px){body.home section.alt > .wrap{padding:28px 18px;border-radius:18px}}
body.home section.alt > .wrap{width:calc(100% - 32px);max-width:1120px}

/* tighter layout: smaller gaps between cards and less empty space between rows and sections */
body.home .grid{gap:12px;margin-top:18px}
body.home .grid:first-child,body.home .split + .grid{margin-top:0}
body.home section{padding:28px 0}
body.home .hero{padding:44px 0 28px}
body.home .page-hero{padding:36px 0 14px}
body.home .page-hero + section{padding-top:8px}
body.home section.alt > .wrap{padding:30px 32px}
body.home .split{gap:28px}
body.home .card{padding:20px}
body.home footer.site{padding-top:30px}
body.home .fine{margin-top:20px}
body.home details{margin:8px 0}
@media(max-width:680px){body.home section{padding:22px 0}body.home section.alt > .wrap{padding:20px 16px}}
body.home .card:has(.ico){align-content:start}

/* content starts at the top of each block */
body.home .split,body.home .hero .wrap{align-items:start}
body.home .split .photo.tall{aspect-ratio:1/1}
body.home .split > div{padding-top:4px}

/* alt panels: cards inside line up with every other section (panel is drawn behind the content, not around it) */
body.home section.alt{padding:46px 0}
body.home section.alt > .wrap{position:relative;z-index:0;width:auto;max-width:1120px;padding:0 20px;background:none;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;border-radius:0}
body.home section.alt > .wrap::before{content:"";position:absolute;z-index:-1;inset:-24px 0;background:rgba(255,255,255,.58);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.8);border-radius:24px;box-shadow:var(--shadow)}
@media(max-width:680px){body.home section.alt > .wrap{padding:0 20px}body.home section.alt > .wrap::before{inset:-16px 0;border-radius:18px}}

/* card rows span the full container box (same left/right edges as the frosted panels) */
@media(min-width:1160px){
  body.home .wrap{padding-left:0;padding-right:0}
  body.home section.alt > .wrap{padding-left:28px;padding-right:28px}
  body.home .grid{margin-left:0;margin-right:0}
  body.home section.alt > .wrap::before{border-radius:20px;left:0;right:0}
}

/* grids nested inside a two-column block stay inside their column */

/* plain cards (no icon, not a tier): roomier padding */
body.home .card:not(:has(.ico)):not(.tier){padding:30px 24px}

/* nav: the dark blue pill marks the current page only */
body.home nav.main a.cta{background:none;color:var(--ink);box-shadow:none}
body.home nav.main a:hover{background:rgba(31,122,98,.1)}
body.home nav.main a.active,body.home nav.main a.active:hover{background:linear-gradient(180deg,#2c9677,#176650);color:#fff;box-shadow:0 6px 14px rgba(23,102,80,.35)}

/* small info text: captions, notes, footer */
body.home .photo figcaption,body.home .note,body.home .fine,body.home .foot a,body.home footer.site p,body.home .logo small,body.home label{color:#1d5a4a}
body.home .foot a:hover{color:var(--blue)}

/* footer brand matches the header; contact block compact */
body.home footer.site .logo{margin-bottom:12px}
body.home footer.site .note{margin-top:0}
body.home footer.site .note.contact{margin-top:12px;line-height:1.7}
body.home .foot .contact a{display:inline;margin:0;font-size:inherit;color:#1d5a4a}
body.home .foot .contact a:hover{color:var(--blue)}
body.home .foot a.logo{display:flex;align-items:center;gap:10px;margin:0 0 12px;color:inherit}

/* footer: last column (Legal) aligns to the right edge of the container */
@media(min-width:901px){body.home .foot > div:last-child{text-align:right}}

/* forms */
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-status{font-size:.92rem;font-weight:600;min-height:1.4em}
.form-status.ok{color:#1f6b45}
.form-status.err{color:#a02828}

/* ---------- Blue Lotus Direct: different layout and look ---------- */
/* squarer shapes */
body.home .card,body.home .photo,body.home details,body.home table.spec{border-radius:8px}
body.home .btn,body.home .btn.ghost{border-radius:10px}
body.home nav.main a,body.home nav.main a.active{border-radius:10px}
body.home section.alt > .wrap::before{border-radius:10px}
/* dark green footer */
body.home footer.site{background:#0f3d33;border-top:0}
body.home footer.site .logo b,body.home .foot h4{color:#fff}
body.home footer.site .logo small,body.home footer.site p,body.home footer.site .note,body.home .foot a,body.home .foot .contact a,body.home .fine{color:#c9e6da}
body.home .foot a:hover,body.home .foot .contact a:hover{color:#f0c36a}
body.home .fine{border-top-color:rgba(255,255,255,.18)}

/* ---------- inner pages: breadcrumbs, in-page nav, prose, link cards, closing call to action ---------- */
.crumbs{display:flex;gap:8px;align-items:center;font-size:.85rem;margin-bottom:14px;color:var(--muted)}
.crumbs a{text-decoration:none;color:var(--blue);font-weight:600}
.crumbs a:hover{text-decoration:underline}
.toc{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.toc a{text-decoration:none;font-size:.86rem;font-weight:600;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.75);border:1px solid var(--line);color:var(--deep);box-shadow:0 4px 10px rgba(15,25,60,.06);transition:.15s}
.toc a:hover{background:var(--blue);color:#fff;border-color:var(--blue)}
.prose p{margin:0 0 14px;color:var(--muted);max-width:760px}
.prose a,.faq a,.sub a,.note a,.checks a{color:var(--blue);font-weight:600}
.checks a{font-weight:500}
.linkcard{text-decoration:none;display:block}
.linkcard .more{display:inline-block;margin-top:10px;font-weight:700;color:var(--blue);font-size:.92rem}
body.home .grid > .linkcard:nth-child(even) .more{color:#fff}
.faq-group{margin-top:34px;scroll-margin-top:110px}
.faq-group:first-child{margin-top:0}
section[id]{scroll-margin-top:100px}
body.home .cta-band{margin-top:40px;padding:56px 0}
.hero .toc a{color:var(--deep)}

body.home{--veil:246,250,247;--bgimg:url("../assets/images/petals-bag-1.jpg");--body:#0f4034;--shadow-rgb:15,61,51}

/* ---------- readability pass: larger and heavier text, calmer background, light panels behind headings ---------- */
html{font-size:106.25%}                       /* 17px base instead of 16px */
body.home{line-height:1.7}
body.home{background:
  linear-gradient(180deg,rgba(var(--veil),.95) 0%,rgba(var(--veil),.92) 45%,rgba(var(--veil),.96) 100%),
  var(--bgimg) center top/cover fixed no-repeat;background-color:rgb(var(--veil))}
/* body copy: darker, medium weight */
body.home p,body.home li,body.home td,body.home summary,body.home .sub,body.home .lead{font-weight:500}
body.home .hero p.lead{font-size:1.2rem;font-weight:500;color:var(--body)}
body.home .sub,body.home .prose p,body.home .card p,body.home .card li,body.home details p,body.home .checks li,body.home table.spec td:last-child{color:var(--body);font-size:1.02rem}
body.home .card p,body.home .card li{font-size:1rem}
body.home details summary{font-size:1.08rem;font-weight:700}
body.home details p{font-size:1.04rem}
body.home table.spec td{font-size:1rem;padding:12px 14px}
body.home table.spec td:first-child{font-weight:700}
/* small text: raise the floor */
body.home .note,body.home .fine{font-size:.92rem;font-weight:500}
body.home .photo figcaption{font-size:.88rem;font-weight:600;color:var(--body)}
body.home .eyebrow{font-size:.86rem;font-weight:800;letter-spacing:.12em}
body.home .tier .tag{font-size:.84rem;font-weight:800}
body.home .toc a{font-size:.95rem;font-weight:700}
body.home .crumbs{font-size:.92rem;font-weight:600}
body.home .logo small{font-size:.72rem;font-weight:700}
body.home label{font-size:.95rem;font-weight:700}
body.home input,body.home select,body.home textarea{font-size:1rem;font-weight:500;color:var(--ink)}
body.home .foot a,body.home .foot .contact a{font-size:1rem;font-weight:500}
body.home .foot h4{font-size:.9rem}
body.home nav.main a{font-size:1rem}
/* links in text are underlined so they are easy to spot */
body.home .prose a,body.home .faq a,body.home .sub a,body.home .note a,body.home .checks a{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px}
/* headings: lighter 3D so the letters stay crisp */
body.home .hero h1{text-shadow:0 1px 0 rgba(255,255,255,.6),0 3px 0 rgba(var(--shadow-rgb),.35),0 10px 18px rgba(var(--shadow-rgb),.22)}
body.home .sec-title{text-shadow:0 1px 0 #fff}
/* light, almost solid backing for text blocks that sit on the photo */
body.home .hero .wrap > div:first-child,body.home .page-hero .wrap{background:rgba(255,255,255,.86);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.9);border-radius:18px;box-shadow:var(--shadow);padding:32px 36px}
body.home .hero .wrap:has(> figure){align-items:stretch}
body.home .page-hero{padding:36px 0 10px}
body.home .center > .eyebrow,body.home .center > .sec-title,body.home .center > .sub{position:relative}
body.home .card{background:rgba(255,255,255,.93)}
body.home section.alt > .wrap::before{background:rgba(255,255,255,.84)}
body.home details{background:rgba(255,255,255,.95)}
body.home .grid > .card:nth-child(even) p,body.home .grid > .card:nth-child(even) li{color:#fff;font-weight:500}
@media(max-width:900px){body.home .hero .wrap > div:first-child,body.home .page-hero .wrap{padding:22px 20px}}
