/* Enchanted Forest Coloring — home page styles.
   Shared by /index.html and /es/index.html so both languages stay identical. */

/* Hero */
.hero{padding:72px 0 96px;overflow:hidden}
.hero .wrap{display:grid;gap:56px;align-items:center}
@media (min-width:920px){.hero .wrap{grid-template-columns:1.05fr .95fr}.hero{padding:96px 0 120px}}
.hero h1{margin-bottom:.35em}
.offer{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px;margin:32px 0 28px;padding:18px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.offer .price{font-size:2.2rem}
.offer span{color:var(--ink-soft);font-size:.95rem}
.trust{list-style:none;padding:0;margin:28px 0 0;display:flex;flex-wrap:wrap;gap:10px 26px;font-size:.9rem;color:var(--ink-soft)}
.trust li{display:flex;gap:8px;align-items:center}
.trust li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold)}

.stage{position:relative;justify-self:center;width:min(440px,84vw);padding:24px 0}
.stage .fan{position:absolute;width:78%;top:12%;background:#fff;padding:10px;box-shadow:var(--shadow);border:1px solid #ece4d3}
.stage .fan.l{left:-12%;transform:rotate(-9deg)}
.stage .fan.r{right:-12%;transform:rotate(8deg);top:18%}
.cover{position:relative;z-index:2;container-type:inline-size;background:#fff;padding:2.4% 2.4% 0;box-shadow:0 2px 4px rgba(31,42,34,.08),0 40px 70px -24px rgba(31,42,34,.45);border:1px solid #ece4d3}
.cover::before{content:"";position:absolute;inset:2.4%;border:1px solid var(--gold);pointer-events:none;z-index:2}
.cover img{width:100%}
.cover.cover-book::before{display:none}
.cover .plate{position:static;text-align:center;border-top:1px solid var(--rule);padding:3.4% 4% 3.8%;font:500 2.5cqw/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink);background:var(--paper)}
.cover .plate i{font:italic 400 6.4cqw/1 var(--serif);color:var(--forest-deep);letter-spacing:-.01em;margin-left:.15em}
.try{position:relative;z-index:3;display:flex;align-items:center;gap:10px;margin:22px auto 0;width:min(340px,100%);background:var(--paper);border:1px solid var(--rule);border-radius:999px;padding:6px 6px 6px 20px;box-shadow:var(--shadow)}
.try label{font-size:.82rem;font-weight:600;color:var(--gold-ink);white-space:nowrap;letter-spacing:.04em}
.try input{flex:1;min-width:0;border:0;background:transparent;font:400 1.1rem/1 var(--serif);color:var(--forest-deep);padding:10px 8px;outline:none}

/* Personalize grid */
.perso{display:grid;gap:0;border-top:1px solid var(--rule)}
@media (min-width:700px){.perso{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1000px){.perso{grid-template-columns:repeat(3,1fr)}}
.perso div{padding:32px 28px 36px 0;border-bottom:1px solid var(--rule)}
@media (min-width:700px){.perso div{padding-right:40px}}
.perso .n{font:italic 400 1.1rem/1 var(--serif);color:var(--gold-ink);display:block;margin-bottom:18px}
.perso h3{margin-bottom:.35em}
.perso p{color:var(--ink-soft);margin:0}

/* Before / after */
.ba{display:grid;gap:56px;align-items:center}
@media (min-width:900px){.ba{grid-template-columns:.9fr 1.1fr}}
.compare{--pos:50%;position:relative;background:#fff;padding:14px;box-shadow:var(--shadow);border:1px solid #ece4d3;user-select:none}
.compare .frame{position:relative;overflow:hidden}
.compare .frame>img{width:100%}
.compare .color{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--pos)) 0 0)}
.compare .color img{width:100%;height:100%;object-fit:cover;display:block}
.compare .handle{position:absolute;top:14px;bottom:14px;left:calc(14px + (100% - 28px) * var(--pos) / 100%);width:2px;background:var(--forest);pointer-events:none}
.compare .handle::after{content:"\2039  \203A";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;border-radius:50%;background:var(--forest);color:#fff;display:grid;place-items:center;font:500 1.2rem/1 var(--sans);letter-spacing:.1em}
.compare input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
.compare .tag{position:absolute;bottom:26px;font:600 .7rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;background:rgba(255,252,245,.92);padding:8px 10px;color:var(--forest-deep);pointer-events:none}
.compare .tag.a{right:26px}.compare .tag.b{left:26px}

/* Flip-through */
.flip-head{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;margin-bottom:40px}
.flip-head .section-head{margin:0}
.flip-btns{display:flex;gap:10px}
.track{display:flex;gap:28px;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px 24px 40px;margin:0 -24px;scrollbar-width:none}
.track::-webkit-scrollbar{display:none}
.track a{flex:0 0 auto;width:min(300px,70vw);scroll-snap-align:start;background:#fff;padding:12px;border:1px solid #ece4d3;box-shadow:var(--shadow);transition:transform .25s}
.track a:nth-child(odd){transform:rotate(-1deg)}.track a:nth-child(even){transform:rotate(1deg) translateY(10px)}
.track a:hover{transform:rotate(0) translateY(-4px)}
.track img{width:100%;aspect-ratio:4/5;object-fit:contain;background:#fff}
.track figcaption{font:italic 400 .98rem/1.3 var(--serif);color:var(--ink-soft);padding:12px 4px 2px}

/* Steps */
.steps{display:grid;gap:0;counter-reset:s}
@media (min-width:860px){.steps{grid-template-columns:repeat(4,1fr)}}
.step{padding:28px 28px 28px 0;border-top:1px solid rgba(255,255,255,.18)}
@media (min-width:860px){.step{padding-right:36px}}
.step .n{font:300 3.4rem/1 var(--serif);color:#e0c08a;display:block;margin-bottom:22px}
.step h3{font-size:1.35rem}
.step p{font-size:.98rem;margin:0}

/* Occasions */
.occ{display:grid;gap:0}
@media (min-width:760px){.occ{grid-template-columns:repeat(2,1fr);column-gap:64px}}
.occ div{display:grid;grid-template-columns:auto 1fr;gap:6px 22px;padding:26px 0;border-bottom:1px solid var(--rule)}
.occ i{grid-row:span 2;font:italic 300 2rem/1 var(--serif);color:var(--gold-ink);width:2ch}
.occ h3{margin:0;font-size:1.4rem}
.occ p{margin:0;color:var(--ink-soft)}

/* Pricing */
.pricing{display:grid;gap:48px;align-items:center}
@media (min-width:900px){.pricing{grid-template-columns:1.1fr .9fr}}
.price-card{background:var(--paper);border:1px solid var(--rule);padding:44px;box-shadow:var(--shadow);position:relative}
.price-card .amount{font:300 4.4rem/1 var(--serif);color:var(--forest-deep);margin:0;letter-spacing:-.03em}
.price-card .amount sup{font-size:.4em;vertical-align:.9em;margin-right:4px}
.price-card .per{color:var(--ink-soft);margin:10px 0 26px}
.price-card .pay{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:.85rem;color:var(--ink-soft);margin-top:18px}
.price-card .pay b{font-weight:600;color:var(--forest-deep);border:1px solid var(--rule);padding:5px 10px;border-radius:4px;background:#fff}
.seal{width:200px;height:200px;border-radius:50%;border:1px solid var(--gold);display:grid;place-items:center;text-align:center;padding:26px;position:relative;margin:0 auto 28px}
.seal::before{content:"";position:absolute;inset:8px;border:1px dashed var(--gold);border-radius:50%}
.seal b{display:block;font:italic 400 1.6rem/1.05 var(--serif);color:var(--forest-deep)}
.seal small{display:block;font:600 .64rem/1.3 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-ink);margin-top:8px}

/* Real work */
.work{display:grid;gap:40px}
@media (min-width:760px){.work{grid-template-columns:repeat(2,1fr)}}
.work figure{margin:0}
.work .sheet img{aspect-ratio:4/5;object-fit:cover;object-position:top;width:100%}
.work figcaption{padding-top:18px}
.work figcaption b{display:block;font:400 1.35rem/1.25 var(--serif);color:var(--forest-deep);margin-bottom:4px}
.work figcaption span{color:var(--ink-soft);font-size:.95rem}

/* Ready-made books */
.shelf{display:grid;gap:36px 28px;grid-template-columns:repeat(2,1fr)}
@media (min-width:900px){.shelf{grid-template-columns:repeat(5,1fr)}}
.book .cv{aspect-ratio:3/4;display:flex;align-items:flex-end;justify-content:center;background:var(--linen);padding:18px 18px 0;margin-bottom:16px}
.book .cv img{max-height:100%;width:auto;box-shadow:0 10px 24px -8px rgba(0,0,0,.35)}
.book h3{font-size:1.1rem;line-height:1.25;margin-bottom:6px}
.book .meta{font-size:.85rem;color:var(--ink-soft);margin-bottom:10px}
.book .links{display:flex;gap:14px;font-size:.88rem;align-items:center;flex-wrap:wrap}
.book .links button{background:none;border:0;padding:0;font:inherit;color:var(--forest);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.book .links button:hover{color:var(--gold-ink)}

/* About */
.about{display:grid;gap:44px;align-items:center}
@media (min-width:820px){.about{grid-template-columns:280px 1fr}}
.portrait{width:240px;aspect-ratio:4/5;justify-self:center;overflow:hidden;border:1px solid var(--rule);padding:10px;background:var(--paper)}
.portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.about .sig{font:italic 400 1.5rem/1 var(--serif);color:var(--forest-deep);margin-top:8px}

/* Free band */
.free{display:grid;gap:40px;align-items:center}
@media (min-width:860px){.free{grid-template-columns:1fr 1fr}}
.freebies{display:flex;gap:14px;margin-top:28px}
.freebies img{width:30%;max-width:130px;background:#fff;padding:6px;box-shadow:0 10px 24px rgba(0,0,0,.3)}
.freebies img:nth-child(1){transform:rotate(-4deg)}.freebies img:nth-child(2){transform:rotate(2deg) translateY(8px)}.freebies img:nth-child(3){transform:rotate(-1deg)}
.dark .form-card p{color:var(--ink-soft)}

/* Sticky mobile CTA */
.mobile-cta{position:fixed;left:12px;right:12px;bottom:12px;z-index:9;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--forest-deep);color:#fbf6ea;padding:10px 10px 10px 20px;border-radius:999px;box-shadow:0 12px 30px rgba(0,0,0,.3)}
.mobile-cta span{font:400 1.2rem/1 var(--serif)}
.mobile-cta .btn{min-height:44px;padding:.6em 1.2em}
@media (min-width:821px){.mobile-cta{display:none}}
@media (max-width:820px){body{padding-bottom:76px}}
