  :root{
    --stone:#E6E7E0; --ivory:#F6F4EE; --ink:#2B2E2A; --yew:#3A4A3C;
    --moss:#6E7A5E; --rose:#B08A96; --line:#CFCFC5;
    --shadow:0 1px 2px rgba(43,46,42,.05), 0 12px 40px -18px rgba(43,46,42,.35);
    --maxw:1120px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{background:var(--stone);color:var(--ink);font-family:'Mulish',system-ui,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}
  h1,h2,h3,.display{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;line-height:1.08;letter-spacing:.005em}
  .eyebrow{font-family:'Mulish',sans-serif;text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;font-weight:600;color:var(--moss)}
  a{color:inherit}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
  .section{padding:96px 0}
  .section-hd{max-width:640px;margin-bottom:44px}
  .section-hd h2{font-size:2.6rem;margin:14px 0 0}
  .section-hd p{margin-top:16px;color:#54574f;font-size:1.06rem}

  header.nav{position:sticky;top:0;z-index:50;background:rgba(230,231,224,.82);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
  .nav-in{display:flex;align-items:center;justify-content:space-between;height:70px}
  .brand{display:flex;align-items:center;gap:11px;text-decoration:none}
  .brand .mark{width:30px;height:30px;flex:none}
  .brand b{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:1.36rem;letter-spacing:.01em}
  .brand small{display:block;font-family:'Mulish',sans-serif;font-size:.6rem;letter-spacing:.24em;text-transform:uppercase;color:var(--moss);margin-top:-3px}
  .nav-links{display:flex;align-items:center;gap:30px}
  .nav-links a{text-decoration:none;font-size:.92rem;color:#4a4d45}
  .nav-links a:hover{color:var(--yew)}
  .btn{display:inline-flex;align-items:center;gap:9px;font-family:'Mulish',sans-serif;font-weight:600;font-size:.92rem;padding:12px 22px;border-radius:2px;border:1px solid var(--yew);background:var(--yew);color:#F2F3EC;text-decoration:none;cursor:pointer;transition:background .2s,color .2s,transform .2s}
  .btn:hover{background:#2f3d31;transform:translateY(-1px)}
  .btn.ghost{background:transparent;color:var(--yew)}
  .btn.ghost:hover{background:rgba(58,74,60,.07)}
  .nav .btn{padding:10px 18px;color:#F2F3EC}
  .nav .btn:hover{color:#fff}
  @media(max-width:860px){.nav-links a:not(.btn){display:none}}

  .hero{padding:72px 0 88px}
  .hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:60px;align-items:center}
  .hero h1{font-size:4rem;margin:20px 0 0}
  .hero h1 em{font-style:italic;color:var(--yew)}
  .hero-lead{font-size:1.18rem;color:#4c4f47;max-width:32ch;margin:22px 0 32px}
  .hero-cta{display:flex;gap:14px;flex-wrap:wrap}
  .hero-note{margin-top:26px;font-size:.86rem;color:#6a6d63;display:flex;align-items:center;gap:9px}
  .hero-note svg{flex:none}
  @media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:40px}.hero h1{font-size:3rem}}

  .ba{position:relative;width:100%;aspect-ratio:3/4;max-height:560px;border-radius:3px;overflow:hidden;box-shadow:var(--shadow);background:#c9cabf;user-select:none;touch-action:none}
  .ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
  .ba .ba-before{clip-path:inset(0 calc(100% - var(--pos,52%)) 0 0)}
  .ba-tag{position:absolute;bottom:14px;font-family:'Mulish',sans-serif;font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:#fff;background:rgba(43,46,42,.62);padding:5px 11px;border-radius:2px;pointer-events:none;z-index:3}
  .ba-tag.b{left:14px}
  .ba-tag.a{right:14px;background:rgba(58,74,60,.72)}
  .ba-handle{position:absolute;top:0;bottom:0;left:var(--pos,52%);width:2px;background:var(--ivory);transform:translateX(-1px);pointer-events:none;box-shadow:0 0 0 1px rgba(43,46,42,.15);z-index:2}
  .ba-grip{position:absolute;top:50%;left:var(--pos,52%);transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;background:var(--ivory);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow);pointer-events:none;color:var(--yew);z-index:3}
  .ba input[type=range]{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;z-index:4}
  .ba input[type=range]:focus-visible ~ .ba-focus{position:absolute;inset:0;outline:3px solid var(--rose);outline-offset:-3px;pointer-events:none;z-index:5}
  .ba-caption{margin-top:14px;text-align:center;color:#6a6d63;font-style:italic;font-family:'Cormorant Garamond',serif;font-size:1.05rem}

  .band{background:var(--yew);color:#EDEFE7}
  .band .wrap{padding-top:78px;padding-bottom:78px}
  .band p{font-family:'Cormorant Garamond',serif;font-size:2.05rem;line-height:1.34;font-weight:400;max-width:760px}
  .band .attr{margin-top:24px;font-family:'Mulish',sans-serif;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:#A9B49E}

  .grid-p{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:3px;overflow:hidden}
  .p-cell{background:var(--ivory);padding:34px 30px;min-height:210px;display:flex;flex-direction:column}
  .p-cell .ic{color:var(--yew);margin-bottom:20px}
  .p-cell h3{font-size:1.5rem}
  .p-cell p{margin-top:10px;color:#54574f;font-size:.96rem}
  @media(max-width:820px){.grid-p{grid-template-columns:1fr 1fr}}
  @media(max-width:540px){.grid-p{grid-template-columns:1fr}}

  .gallery{background:var(--ivory)}
  .timeline-grid{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;list-style:none;margin:6px 0 0;padding:34px 0 0}
  .timeline-grid:before{content:"";position:absolute;top:11px;left:12.5%;right:12.5%;height:1px;background:var(--line)}
  .timeline-item{position:relative;min-width:0}
  .timeline-dot{position:absolute;top:-29px;left:18px;width:13px;height:13px;border-radius:50%;background:var(--yew);box-shadow:0 0 0 7px var(--ivory);z-index:2}
  .g-item{height:100%;border-radius:3px;overflow:hidden;box-shadow:var(--shadow);background:#d9dace}
  .timeline-head{display:flex;align-items:center;gap:10px;padding:13px 16px 12px;background:var(--stone);border-bottom:1px solid var(--line)}
  .timeline-head span{font-family:'Cormorant Garamond',serif;font-size:1.55rem;line-height:1;color:var(--rose)}
  .timeline-head strong{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--moss)}
	  .g-item img{width:100%;height:280px;object-fit:cover;display:block}
	  .g-item img.img-outils{object-position:42% center}
	  .g-item .cap{padding:14px 16px;font-size:.86rem;color:#54574f;background:var(--stone)}
	  @media(max-width:960px){.timeline-grid{grid-template-columns:repeat(2,1fr);gap:26px 20px}.timeline-grid:before{display:none}.timeline-dot{display:none}.g-item img{height:300px}}
	  @media(max-width:560px){.timeline-grid{grid-template-columns:1fr;max-width:460px;margin:0 auto;padding-top:0}.g-item img{height:320px}}

	  .examples{background:#EFEFE7}
	  .examples-compare{max-width:760px;margin:0 auto}
	  .examples-compare .ba{max-height:none;aspect-ratio:3/4}
	  .examples-compare .ba-caption{margin-top:16px}

	  .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:34px}
  .step .n{font-family:'Cormorant Garamond',serif;font-size:2.6rem;color:var(--rose);line-height:1}
  .step .bar{height:1px;background:var(--line);margin:14px 0 16px}
  .step h3{font-size:1.28rem}
  .step p{margin-top:8px;color:#54574f;font-size:.92rem}
  @media(max-width:820px){.steps{grid-template-columns:1fr 1fr;gap:30px}}
  @media(max-width:460px){.steps{grid-template-columns:1fr}}

  .formules{background:var(--ivory)}
  .cards{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;align-items:stretch;max-width:860px;margin:0 auto}
  .card.sub{background:var(--stone);border-color:var(--line)}
  .fleur-line{font-size:.82rem;color:var(--rose);font-weight:600;margin:-4px 0 16px}
  .card{background:var(--stone);border:1px solid var(--line);border-radius:3px;padding:32px 28px;display:flex;flex-direction:column}
  .card.feature{background:var(--stone);border:2px solid var(--yew)}
  .card .tier{font-family:'Mulish',sans-serif;text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:600;color:var(--moss)}
  .card.feature .tier{color:var(--moss)}
  .card .price{font-family:'Cormorant Garamond',serif;font-size:2.7rem;margin:14px 0 2px;font-weight:500}
  .card .price small{font-size:1rem;color:#6a6d63;font-family:'Mulish',sans-serif}
  .card.feature .price small{color:#6a6d63}
  .card .desc{font-size:.92rem;color:#54574f;margin-bottom:18px}
  .card.feature .desc{color:#54574f}
  .card ul{list-style:none;display:flex;flex-direction:column;gap:11px;margin:6px 0 26px;flex:1}
  .card li{font-size:.92rem;display:flex;gap:10px;align-items:flex-start}
  .card li svg{flex:none;margin-top:3px;color:var(--moss)}
  .card.feature li svg{color:var(--moss)}
  .card .btn{width:100%;justify-content:center}
  .card.feature .btn{background:var(--yew);color:#F2F3EC;border-color:var(--yew)}
  .card.feature .btn:hover{background:#2f3d31}
  .ribbon{font-family:'Mulish',sans-serif;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;background:var(--rose);color:#fff;padding:4px 10px;border-radius:2px;align-self:flex-start;margin-bottom:14px}
  .price-note{text-align:center;color:#6a6d63;font-size:.85rem;margin-top:26px;font-style:italic}
  @media(max-width:900px){.cards{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:520px){.cards{grid-template-columns:1fr}}

  .zone-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
  .communes{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
  .communes span{border:1px solid var(--line);background:var(--ivory);padding:8px 15px;border-radius:2px;font-size:.9rem}
  .communes span.hi{border-color:var(--moss);color:var(--yew);font-weight:600}
  .zone-map{aspect-ratio:1/1;background:var(--ivory);border:1px solid var(--line);border-radius:3px;box-shadow:var(--shadow);overflow:hidden}
  .zone-map svg{width:100%;height:100%;display:block}
  @media(max-width:820px){.zone-grid{grid-template-columns:1fr;gap:36px}}

  .contact{background:var(--yew);color:#EDEFE7}
  .contact .section-hd h2{color:#F2F3EC}
  .contact .section-hd p{color:#C3CBBA}
  .c-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px}
  .c-info h3{font-size:1.5rem;color:#F2F3EC;margin-bottom:6px}
  .c-info .line{display:flex;gap:13px;align-items:flex-start;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.12)}
  .c-info .line svg{flex:none;margin-top:2px;color:#A9B49E}
  .c-info .line b{display:block;font-family:'Mulish',sans-serif;font-weight:600;font-size:.95rem}
  .c-info .line span{font-size:.9rem;color:#C3CBBA}
  form{background:var(--ivory);color:var(--ink);border-radius:3px;padding:30px;box-shadow:var(--shadow)}
  .field{margin-bottom:16px}
  .field label{display:block;font-size:.82rem;font-weight:600;margin-bottom:6px;color:#4a4d45}
  .field input,.field textarea,.field select{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:2px;background:#fff;font-family:'Mulish',sans-serif;font-size:.95rem;color:var(--ink)}
  .field input:focus,.field textarea:focus,.field select:focus{outline:2px solid var(--moss);outline-offset:0;border-color:var(--moss)}
  .field textarea{resize:vertical;min-height:96px}
  .row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  form .btn{width:100%;justify-content:center;margin-top:6px}
  .form-ok{display:none;text-align:center;padding:24px 10px}
  .form-ok.show{display:block}
  .form-ok .check{width:52px;height:52px;margin:0 auto 16px;color:var(--yew)}
  .form-ok h3{font-size:1.7rem}
  .form-ok p{color:#54574f;margin-top:8px}
  @media(max-width:820px){.c-grid{grid-template-columns:1fr;gap:36px}.row2{grid-template-columns:1fr}}

  footer.ft{background:var(--ink);color:#B9BAB2;padding:56px 0 34px;font-size:.88rem}
  .ft-top{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;padding-bottom:30px;border-bottom:1px solid rgba(255,255,255,.1)}
  .ft .brand b{color:#EDEFE7}
  .ft-links{display:flex;gap:26px;flex-wrap:wrap}
  .ft-links a{text-decoration:none;color:#B9BAB2}
  .ft-links a:hover{color:#fff}
  .ft-bottom{padding-top:22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.78rem;color:#7f817a}

  .faq-wrap{max-width:820px}
  details.qa{border-bottom:1px solid var(--line)}
  details.qa summary{list-style:none;cursor:pointer;padding:20px 40px 20px 2px;position:relative;font-family:'Cormorant Garamond',serif;font-size:1.45rem;color:var(--ink);font-weight:500}
  details.qa summary::-webkit-details-marker{display:none}
  details.qa summary:after{content:"+";position:absolute;right:6px;top:50%;transform:translateY(-50%);font-family:'Mulish',sans-serif;font-size:1.5rem;color:var(--moss);transition:transform .2s}
  details.qa[open] summary:after{content:"\2013"}
  details.qa p{padding:0 40px 22px 2px;color:#54574f;font-size:1rem;margin:0}
  details.qa summary:hover{color:var(--yew)}
  .photo-cta{display:grid;grid-template-columns:.9fr 1.1fr;background:var(--ivory);border-radius:4px;box-shadow:var(--shadow);overflow:hidden;margin-bottom:36px}
  .photo-cta .pic{position:relative;min-height:210px;background:#d9dace}
  .photo-cta .pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
  .photo-cta .badge{position:absolute;top:12px;left:12px;background:rgba(255,255,255,.93);color:var(--yew);font-family:'Mulish',sans-serif;font-size:.7rem;font-weight:700;padding:5px 11px;border-radius:20px;display:flex;align-items:center;gap:6px}
  .photo-cta .badge i{width:7px;height:7px;border-radius:50%;background:#6E7A5E;display:inline-block}
  .photo-cta .body{padding:26px 28px}
  .photo-cta .body h3{font-family:'Cormorant Garamond',serif;font-size:1.9rem;color:var(--yew);margin:8px 0 6px;font-weight:500;line-height:1.12}
  .photo-cta .body p{color:#54574f;font-size:.96rem;margin-bottom:18px}
  .pcta-btns{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
  .pcta-btns a{display:flex;flex-direction:column;align-items:center;gap:6px;padding:13px 6px;border:1px solid var(--line);border-radius:3px;text-decoration:none;color:var(--yew);font-family:'Mulish',sans-serif;font-size:.82rem;font-weight:600;background:#fff;transition:background .2s}
  .pcta-btns a:hover{background:var(--stone)}
  .pcta-btns a.hot{background:var(--yew);color:#F2F3EC;border-color:var(--yew)}
  .pcta-btns a.hot:hover{background:#2f3d31}
  .pcta-phone{text-align:center;margin-top:14px;color:var(--yew);font-weight:700;letter-spacing:.04em;font-size:1.05rem}
  @media(max-width:640px){.photo-cta{grid-template-columns:1fr}.photo-cta .pic{min-height:170px}}
  .calc-wrap{max-width:720px;margin:36px auto 0;background:#fff;border:1px solid var(--line);border-radius:5px;box-shadow:var(--shadow);padding:28px 30px}
  .calc-head h3{font-family:'Cormorant Garamond',serif;font-size:1.75rem;color:var(--yew);font-weight:500;margin:6px 0 6px}
  .calc-head p{color:#54574f;font-size:.95rem;margin-bottom:18px}
  .calc-form{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:12px}
  .calc-form input,.calc-form select{grid-column:1/2;padding:12px 14px;border:1px solid var(--line);border-radius:3px;font-family:'Mulish',sans-serif;font-size:.95rem;color:var(--ink);background:var(--ivory)}
  #calcBtn{grid-column:2/3;grid-row:1/3;align-self:stretch;background:var(--yew);color:#F2F3EC;border:none;border-radius:3px;font-family:'Mulish',sans-serif;font-weight:700;font-size:.95rem;padding:0 28px;cursor:pointer;transition:background .2s}
  #calcBtn:hover{background:#2f3d31}
  .calc-result{display:none;margin-top:20px;background:var(--stone);border-radius:4px;padding:18px 20px}
  .calc-line{display:flex;justify-content:space-between;padding:6px 0;color:#4a4d45;border-bottom:1px solid var(--line)}
  .calc-line b{color:var(--yew)}
  .calc-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:12px;color:var(--yew);font-weight:700}
  .calc-total b{font-size:1.3rem}
  .calc-badge{margin:4px 0 8px;padding:10px 14px;border-radius:3px;font-weight:700;font-size:.95rem}
  .calc-badge.ok{background:#e7efe4;color:#3a5a3f}
  .calc-badge.hz{background:#f3ecee;color:#8a5a68;font-weight:600}
  .calc-note{font-size:.8rem;color:#8a8a80;margin-top:12px;font-style:italic}
  .calc-err{color:#a05a5a;font-size:.92rem;margin:0}
  .calc-load{color:#8a8a80;font-size:.92rem;margin:0}
  @media(max-width:560px){.calc-form{grid-template-columns:1fr}#calcBtn{grid-column:1/2;grid-row:auto;padding:13px}}
  .flower-menu{background:#EFEFE7}
  .flower-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:42px;align-items:center}
  .flower-intro h2{font-size:2.55rem;margin:14px 0 16px}
  .flower-intro p{color:#54574f;font-size:1.03rem;max-width:36ch}
  .flower-note{margin-top:24px;border-left:3px solid var(--rose);padding:14px 0 14px 18px;color:#5d6158;font-size:.94rem}
  .flower-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
  .flower-book{position:relative;background:linear-gradient(90deg,#d9dacd,#f5f3ec 7%,#fbfaf5 49%,#d7d5c9 50%,#fbfaf5 51%,#f3f1e8 93%,#d0d0c4);border:1px solid var(--line);border-radius:4px;box-shadow:0 22px 70px -42px rgba(43,46,42,.62);padding:22px;perspective:1200px}
  .flower-book:before{content:"";position:absolute;top:18px;bottom:18px;left:50%;width:1px;background:linear-gradient(to bottom,transparent,var(--line),transparent);box-shadow:0 0 22px rgba(43,46,42,.18);z-index:3}
  .flower-spread{display:none;grid-template-columns:1fr 1fr;min-height:510px;transform-origin:center;will-change:transform,opacity}
  .flower-spread.active{display:grid;animation:bookTurn .42s ease}
  .flower-page{position:relative;background:rgba(255,255,251,.82);padding:24px 24px 28px;display:flex;flex-direction:column;gap:18px;box-shadow:inset 0 0 22px rgba(43,46,42,.045)}
  .flower-page:first-child{border-right:1px solid rgba(207,207,197,.72);border-radius:3px 0 0 3px}
  .flower-page:last-child{border-radius:0 3px 3px 0}
  .flower-page h3{font-size:1.65rem;color:var(--yew)}
  .flower-page p{color:#62665d;font-size:.92rem}
  .flower-cover{padding:0;overflow:hidden;background:#dde0d3}
  .flower-cover img{width:100%;height:100%;min-height:510px;object-fit:cover;display:block;filter:saturate(.92) contrast(.97)}
  .flower-cover-text{position:absolute;left:0;right:0;bottom:0;padding:28px 24px;background:linear-gradient(to top,rgba(43,46,42,.78),rgba(43,46,42,.04));color:#fff}
  .flower-cover-text .eyebrow{color:#e9e1d5}
  .flower-cover-text h3{color:#fff;margin-top:8px}
  .flower-cover-text p{color:#f0eee7}
  .flower-grid{display:grid;grid-template-columns:1fr;gap:10px}
  .flower-choice{width:100%;min-height:92px;border:1px solid rgba(207,207,197,.96);background:rgba(246,244,238,.76);border-radius:4px;padding:10px 12px;display:grid;grid-template-columns:56px 1fr;gap:12px;align-items:center;text-align:left;color:var(--ink);font-family:'Mulish',sans-serif;cursor:pointer;transition:border-color .2s,background .2s,transform .2s,box-shadow .2s}
  .flower-choice:hover{border-color:var(--moss);background:#fff;transform:translateY(-1px)}
  .flower-choice:focus-visible{outline:2px solid var(--moss);outline-offset:2px}
  .flower-choice.is-selected{border-color:var(--yew);background:#edf2e8;box-shadow:inset 0 0 0 1px rgba(58,74,60,.18)}
  .flower-choice strong{display:block;font-size:.95rem;color:var(--yew);line-height:1.2}
  .flower-choice small{display:block;margin-top:3px;color:#6a6d63;font-size:.78rem;line-height:1.35}
  .flower-seasons{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
  .season-pill{display:inline-flex;align-items:center;border:1px solid rgba(110,122,94,.22);border-radius:999px;padding:2px 7px;background:#fff;color:#6E7A5E;font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;line-height:1.35}
  .season-pill.spring{color:#6E7A5E;background:#eef4e8;border-color:rgba(110,122,94,.25)}
  .season-pill.summer{color:#9a6f31;background:#fbf1dc;border-color:rgba(154,111,49,.25)}
  .season-pill.autumn{color:#9a695b;background:#f5ece8;border-color:rgba(154,105,91,.25)}
  .season-pill.winter{color:#53666a;background:#f0f5f3;border-color:rgba(83,102,106,.24)}
  .season-pill.any{color:#5f685c;background:#f7f7f0;border-color:rgba(95,104,92,.24)}
  .flower-thumb{position:relative;width:56px;height:56px;border-radius:50%;background:radial-gradient(circle at 50% 50%,#f6e8a0 0 13%,transparent 14%),radial-gradient(circle at 50% 18%,var(--c1) 0 16%,transparent 17%),radial-gradient(circle at 78% 33%,var(--c2) 0 16%,transparent 17%),radial-gradient(circle at 72% 72%,var(--c1) 0 16%,transparent 17%),radial-gradient(circle at 28% 72%,var(--c2) 0 16%,transparent 17%),radial-gradient(circle at 22% 33%,var(--c1) 0 16%,transparent 17%),radial-gradient(circle at 50% 54%,var(--leaf) 0 38%,#e8eadf 39%);border:1px solid rgba(207,207,197,.95);box-shadow:inset 0 -6px 10px rgba(43,46,42,.08)}
  .flower-thumb:after{content:"";position:absolute;right:5px;bottom:7px;width:18px;height:10px;border-radius:50%;background:var(--leaf);transform:rotate(-24deg);opacity:.78}
  .f-white{--c1:#f7f4e6;--c2:#fffdf5;--leaf:#8aa076}
  .f-rose{--c1:#d88ca0;--c2:#f0bfca;--leaf:#748c62}
  .f-red{--c1:#b74351;--c2:#e3696d;--leaf:#657d58}
  .f-yellow{--c1:#e8b943;--c2:#f4d875;--leaf:#6f8458}
  .f-purple{--c1:#6f5a91;--c2:#a993c2;--leaf:#687e5f}
  .f-orange{--c1:#e1783f;--c2:#f1a84c;--leaf:#637c55}
  .f-blue{--c1:#6f82b7;--c2:#b9c6e8;--leaf:#6e895f}
  .f-green{--c1:#9eb77a;--c2:#cddca7;--leaf:#5f7b55}
  .f-mixed{--c1:#f2df76;--c2:#c15b84;--leaf:#6d845b}
  .book-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px}
  .book-btn{width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:var(--ivory);color:var(--yew);font-family:'Cormorant Garamond',serif;font-size:1.8rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s}
  .book-btn:hover{background:#fff;border-color:var(--moss)}
  .book-btn:disabled{opacity:.35;cursor:default}
  .book-state{display:flex;align-items:center;justify-content:center;gap:12px;flex:1;color:#6a6d63;font-size:.84rem}
  .book-dots{display:flex;gap:6px}
  .book-dot{width:7px;height:7px;border-radius:50%;background:#c1c5b8}
  .book-dot.active{background:var(--yew)}
  .flower-selection{min-height:44px;margin-top:18px;background:rgba(246,244,238,.82);border:1px solid var(--line);border-radius:4px;padding:12px 14px;color:#54574f;font-size:.88rem}
  .flower-selection b{color:var(--yew)}
  @keyframes bookTurn{from{opacity:.38;transform:rotateY(-8deg) translateX(8px)}to{opacity:1;transform:none}}
  @media(max-width:980px){.flower-layout{grid-template-columns:1fr}.flower-intro p{max-width:620px}.flower-book{max-width:780px}.flower-cover img{min-height:420px}.flower-spread{min-height:420px}}
  @media(max-width:680px){.flower-book{padding:14px}.flower-book:before{display:none}.flower-spread{grid-template-columns:1fr;min-height:0}.flower-page:first-child{border-right:none;border-bottom:1px solid rgba(207,207,197,.72);border-radius:3px 3px 0 0}.flower-page:last-child{border-radius:0 0 3px 3px}.flower-cover img{min-height:280px}.flower-choice{grid-template-columns:50px 1fr}.flower-thumb{width:50px;height:50px}.book-state{font-size:.78rem}}
  .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
  .reveal.in{opacity:1;transform:none}
  @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.btn:hover,.flower-choice:hover{transform:none}.flower-spread.active{animation:none}}

  .hero h1 .h1-kw{display:block;font-size:.72rem;line-height:1.6;margin-bottom:20px}
  .depl{max-width:460px;margin:18px auto 0;border-collapse:collapse;font-size:.92rem;background:var(--stone);border:1px solid var(--line)}
  .depl caption{font-size:.85rem;color:#6a6d63;padding-bottom:8px;font-style:italic}
  .depl th,.depl td{padding:8px 16px;border-bottom:1px solid var(--line);text-align:left}
  .depl th{font-weight:600;color:var(--yew);background:#EFEFE7}
  .depl td:last-child{font-weight:600;text-align:right}
