@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#342d3b;--muted:#746e79;--line:#e9e6ea;--orange:#b24c2c;--purple:#bda7d6;--ease:cubic-bezier(.2,.7,.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:#e6d9f5}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #925cb5;outline-offset:6px}.section,.header{max-width:1440px;margin:auto;padding-left:7%;padding-right:7%}.header{height:112px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:5}.brand{display:flex;align-items:center;gap:11px}.brand svg{width:41px;height:45px}.brand>span{font-family:'Manrope',sans-serif;font-size:20px;line-height:1.04;font-weight:800;letter-spacing:-1px}.brand-dot{color:#b24c2c}.header nav{display:flex;align-items:center;gap:38px;font-size:13px;font-weight:500}.header nav a{transition:color .2s}.header nav a:hover{color:var(--orange)}.nav-contact{border:1px solid var(--line);padding:13px 20px;border-radius:50px}.nav-contact span{margin-left:18px}.menu,.mobile-nav{display:none!important}.hero{min-height:660px;display:grid;grid-template-columns:1.08fr 1fr;align-items:center;gap:12px;padding-top:45px;padding-bottom:65px}.eyebrow,.section-label{font-size:10px;font-weight:650;letter-spacing:1.8px}.eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 29px}.status-dot{width:7px;height:7px;background:#b1c776;border-radius:50%;box-shadow:0 0 0 4px #f3f6ec}.hero h1{font-family:'Manrope',sans-serif;font-size:clamp(45px,5.1vw,74px);font-weight:500;line-height:1.1;letter-spacing:-4px;position:relative;margin:0 0 30px;white-space:nowrap}.serif{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;letter-spacing:-.055em}.underline{position:absolute;bottom:-15px;left:22%;width:70%;height:20px;fill:none;stroke:#df9678;stroke-width:2;stroke-linecap:round}.hero-desc{font-size:16px;line-height:1.8;color:var(--muted);margin:0 0 29px}.button{display:inline-flex;align-items:center;justify-content:center;gap:35px;padding:17px 23px;border-radius:40px;font-size:13px;font-weight:500;transition:transform .3s,background .3s,box-shadow .3s}.button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #342d3b16}.primary{background:var(--ink);color:#fff}.primary:hover{background:#51415d}.button span{font-size:20px;line-height:1}.hero-footnote{margin-top:44px;font-size:10px;color:var(--muted);display:flex;align-items:center;gap:10px}.tiny-spark{font-size:24px;color:var(--orange)}.hero-art{position:relative;min-width:0;aspect-ratio:1/1;display:grid;place-items:center}.book-art{width:114%;position:relative;z-index:1;transform:rotate(-8deg);animation:float 9s ease-in-out infinite}.art-orbit{position:absolute;border:1px solid #eee9ef;border-radius:50%;width:94%;height:94%;transform:rotate(-30deg)}.orbit-two{width:72%;height:72%}.art-note{position:absolute;right:1%;top:3%;font-size:11px;line-height:1.5;transform:rotate(8deg);color:var(--muted)}.art-note i{font-family:Georgia,serif;font-size:19px;color:var(--ink)}.art-label{position:absolute;bottom:0;right:2%;font-size:9px;letter-spacing:1.8px}.art-label span{font-size:23px;margin-right:14px}.floating-star{position:absolute;left:1%;top:9%;color:#bca4d6;font-size:51px;animation:turn 35s linear infinite}.word-strip{display:flex;justify-content:space-around;align-items:center;gap:25px;padding:25px 7%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;letter-spacing:-.2px;overflow:hidden;white-space:nowrap}.word-strip i{color:#bba2d0;font-size:21px;font-style:normal}.intro{display:grid;grid-template-columns:1fr 2.6fr;gap:55px;padding-top:110px;padding-bottom:110px}.intro>.section-label{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start}.mini-mark{font-size:75px;font-weight:400;color:#b9a1cd;line-height:1}h2{font-family:'Manrope',sans-serif;font-weight:500;font-size:clamp(35px,4vw,53px);line-height:1.15;letter-spacing:-2.5px;margin:0 0 30px}.intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:38px}.intro p:not(.section-label){font-size:14px;line-height:1.9;color:var(--muted)}strong{font-weight:600;color:var(--ink)}.intro .mission{border-left:2px solid #d6c5e7;padding:0 0 0 20px;margin:25px 0 0;max-width:670px}.fronts{padding-top:80px;padding-bottom:90px;background:#fcfbfa;border-radius:35px;max-width:calc(1440px - 6%);width:94%;padding-left:4%;padding-right:4%}.fronts-top{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:42px}.fronts-top h2{margin:24px 0 0}.fronts-top>p{font-size:13px;line-height:1.8;color:var(--muted);margin:0 0 6px}.fronts-top>p span{font-size:10px;display:block;margin-top:23px}.front{border-top:1px solid #ddd9dc;transition:background .3s;border-radius:0}.front:last-child{border-bottom:1px solid #ddd9dc}.front[open]{background:var(--soft)}summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:34px 58px 1fr auto 32px;align-items:center;gap:15px;padding:27px 12px;min-height:108px}summary::-webkit-details-marker{display:none}.front-number{font-size:10px;color:var(--muted)}.front-icon{width:44px;height:44px;background:var(--accent);display:grid;place-items:center;border-radius:50%;font-size:28px;transition:transform .5s var(--ease)}summary:hover .front-icon{transform:rotate(-15deg)}h3{font-size:clamp(16px,1.8vw,23px);font-weight:500;letter-spacing:-.8px;margin:0}.front-teaser{font-size:11px;color:var(--muted);padding-right:20px}.toggle{height:28px;width:28px;border:1px solid #d8d2dc;border-radius:50%;position:relative}.toggle:before,.toggle:after{content:'';position:absolute;background:var(--ink);width:10px;height:1px;top:13px;left:8px;transition:transform .3s}.toggle:after{transform:rotate(90deg)}[open] .toggle:after{transform:rotate(0)}.front-body{padding:0 65px 30px 119px;animation:appear .4s var(--ease)}.front-body p{font-size:14px;line-height:1.9;color:#625a66;max-width:690px;margin:0 0 22px}.tags{display:flex;flex-wrap:wrap;gap:8px}.tags span{font-size:10px;border:1px solid #dcd6dc;border-radius:20px;padding:7px 11px;background:#ffffff70}.manifesto{display:grid;grid-template-columns:1fr 1fr;gap:13%;padding-top:130px;padding-bottom:110px;align-items:center}.manifesto-art{aspect-ratio:1/1;position:relative;max-width:430px;background:#f9f7fb;border-radius:50% 50% 8px 8px;overflow:hidden}.shape{position:absolute;width:29%;height:61%;bottom:18%;border-radius:100px 100px 3px 3px;transform-origin:50% 100%;left:35%;border:1px solid #342d3b0b}.s1{background:#eaa184;transform:rotate(-48deg)}.s2{background:#ccdc99;transform:rotate(45deg)}.s3{background:#d6c1ec;transform:rotate(-23deg)}.s4{background:#f3d492;transform:rotate(23deg)}.s5{background:#f5eee2;width:17%;left:41%;height:65%}.art-caption{position:absolute;bottom:6%;left:8%;font-size:8px;letter-spacing:1.5px;line-height:1.7}.manifesto-copy .section-label{margin-bottom:25px}.manifesto-copy>p:not(.section-label){font-size:14px;line-height:1.9;color:var(--muted)}.audience{text-align:center;padding-top:45px;padding-bottom:110px}.audience h2{margin-top:25px}.audience-tags{max-width:750px;margin:35px auto 26px;display:flex;flex-wrap:wrap;justify-content:center;gap:11px}.audience-tags span{padding:13px 20px;border:1px solid var(--line);border-radius:40px;font-size:13px;transition:background .3s,transform .3s}.audience-tags span:hover{background:#f4eef9;transform:translateY(-3px)}.audience>p:last-child{font-size:13px;color:var(--muted);line-height:1.9}.contact{position:relative;overflow:hidden;border-top:1px solid var(--line);padding-top:80px;padding-bottom:80px;display:flex;justify-content:space-between;align-items:center}.contact h2{margin:27px 0 24px}.contact p:not(.section-label){font-size:14px;line-height:1.9;color:var(--muted)}.contact .button{margin-top:20px}.instagram{font-size:11px;display:inline-block;margin-left:24px;border-bottom:1px solid #bdb2c4;padding-bottom:3px}.contact-flower{font-family:Georgia,serif;font-size:290px;color:#d4c2e5;line-height:1;display:inline-block;transition:transform 1.8s var(--ease)}.contact:hover .contact-flower{transform:rotate(45deg)}.footer{padding-top:50px;padding-bottom:24px;background:#fbfaf9;border-radius:30px 30px 0 0}.footer-name{font-family:'Manrope',sans-serif;font-size:25px;font-weight:750;letter-spacing:-1px}.footer-name span{color:var(--orange)}.footer>p{font-size:12px;line-height:1.8;color:var(--muted);margin:16px 0 38px}.footer-bottom{border-top:1px solid var(--line);padding-top:23px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}.footer-bottom a:hover{color:var(--orange)}.footer-bottom span a{color:var(--ink);font-weight:600}.skip{position:fixed;top:-100px;left:16px;z-index:30;background:var(--ink);color:white;padding:15px}.skip:focus{top:10px}.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.js .reveal.visible{opacity:1;transform:none}@keyframes float{50%{transform:translateY(-10px) rotate(-5deg)}}@keyframes turn{to{transform:rotate(360deg)}}@keyframes appear{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media(min-width:1450px){.hero h1{font-size:74px}}@media(max-width:1050px){.front-teaser{display:none}summary{grid-template-columns:25px 48px 1fr 28px}.front-body{padding-left:115px}.hero h1{letter-spacing:-2.8px}.hero-footnote{font-size:9px}.intro{gap:35px}.manifesto{gap:8%}.contact-flower{font-size:230px}}
@media(max-width:700px){.section,.header{padding-left:6%;padding-right:6%}.header{height:88px}.brand>span{font-size:18px}.brand svg{width:33px}.header>nav{display:none}.menu{display:flex!important;flex-direction:column;gap:6px;padding:12px;background:none;border:1px solid var(--line);border-radius:50%;height:42px;width:42px;justify-content:center}.menu span{width:16px;height:1px;background:var(--ink)}.mobile-nav:not([hidden]){display:flex!important;position:absolute;top:78px;right:6%;left:6%;padding:25px;flex-direction:column;align-items:stretch;gap:24px;background:white;border:1px solid var(--line);box-shadow:0 20px 40px #342d3b10;border-radius:18px}.hero{grid-template-columns:1fr;padding-top:35px;padding-bottom:35px;gap:25px}.eyebrow{font-size:8px;letter-spacing:1.3px;margin-bottom:27px}.hero h1{font-size:clamp(40px,9.5vw,65px);letter-spacing:-2.5px;margin-bottom:32px}.hero-desc{font-size:14px}.hero-footnote{margin-top:25px;font-size:9px}.hero-art{width:85%;max-width:410px;justify-self:center;margin:15px 0 10px}.book-art{width:112%}.art-note{top:-2%;right:-6%}.art-label{font-size:8px;right:-5%}.floating-star{font-size:38px}.word-strip{padding:20px 6%;justify-content:flex-start;gap:25px;font-size:12px}.word-strip span{flex-shrink:0}.intro{grid-template-columns:1fr;padding-top:65px;padding-bottom:65px;gap:25px}.intro>.section-label{display:block}.mini-mark{display:none}.intro-columns{grid-template-columns:1fr;gap:0}.intro p:not(.section-label){font-size:13px}.intro .mission{margin-top:15px}h2{font-size:37px;letter-spacing:-1.7px}.fronts{width:94%;padding:48px 5%;border-radius:22px}.fronts-top{display:block;margin-bottom:25px}.fronts-top>p{margin-top:24px}.fronts-top>p span{margin-top:12px}summary{grid-template-columns:18px 34px 1fr 24px;gap:10px;padding:21px 0;min-height:95px}.front-icon{width:31px;height:31px;font-size:21px}h3{font-size:17px;letter-spacing:-.5px;line-height:1.35}.toggle{width:24px;height:24px}.toggle:before,.toggle:after{top:11px;left:6px}.front-body{padding:0 15px 25px 0}.front-body p{font-size:13px}.tags span{font-size:9px}.manifesto{grid-template-columns:1fr;padding-top:65px;padding-bottom:50px;gap:35px}.manifesto-art{max-width:340px;width:85%;margin:auto}.manifesto-copy>p:not(.section-label){font-size:13px}.audience{padding-top:30px;padding-bottom:60px}.audience-tags{gap:8px;margin-top:27px}.audience-tags span{font-size:11px;padding:11px 14px}.audience>p:last-child{font-size:12px}.contact{padding-top:50px;padding-bottom:55px}.contact h2{font-size:34px}.contact-flower{position:absolute;font-size:140px;right:-45px;top:55px;opacity:.35;z-index:-1}.contact .button{gap:20px;font-size:12px}.instagram{display:block;margin:20px 0 0;width:max-content}.footer{padding-top:36px;border-radius:20px 20px 0 0}.footer-bottom{flex-wrap:wrap;gap:16px;font-size:9px}.footer-bottom>span:nth-child(2){order:3;width:100%}.footer-bottom>a{margin-left:auto}.desktop{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}
/* A living bookshelf: the selected cover stays at the center. */
.books{padding-top:105px;padding-bottom:55px}.books-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.books-heading h2{margin-top:25px;margin-bottom:0}.books-heading>p{font-size:14px;line-height:1.8;color:var(--muted);margin-bottom:5px}.books-heading>p span{font-size:11px}.book-selector{--book-color:#ebf1dc;outline-offset:12px;margin-top:28px}.book-stage{position:relative;overflow:hidden;min-height:390px;touch-action:pan-y;isolation:isolate}.book-halo{position:absolute;left:50%;top:50%;width:340px;height:340px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,var(--book-color),#fff 72%);transition:background .7s;z-index:-1}.book-shelf{display:flex;gap:30px;overflow:auto;align-items:center;padding:30px 10px}.book-cover{border:0;background:none;padding:0;flex-shrink:0;width:200px;cursor:pointer;color:var(--ink)}.book-cover img{display:block;max-width:100%;width:auto;height:auto;max-height:290px;margin:auto;box-shadow:3px 5px 8px #342d3b18,10px 18px 30px #342d3b18;border-radius:2px;user-select:none}.cover-caption{display:block;font-size:11px;margin-top:15px}.is-ready .book-shelf{display:block;overflow:visible;padding:0;height:390px;position:relative;perspective:1200px}.is-ready .book-cover{position:absolute;left:50%;top:50%;width:240px;transform:translate(calc(-50% + var(--offset)*210px),-50%) scale(calc(1 - var(--distance)*.15)) rotateY(calc(var(--offset)*-10deg));opacity:calc(1 - var(--distance)*.24);transition:transform .75s var(--ease),opacity .6s,filter .6s;filter:saturate(.6);will-change:transform}.is-ready .book-cover img{max-height:310px}.is-ready .book-cover.is-selected{filter:saturate(1);opacity:1}.is-ready .book-cover:hover{filter:saturate(1)}.is-ready .cover-caption{display:none}.book-navigation{display:flex;align-items:center;justify-content:center;gap:25px;margin-top:10px}.book-arrow{width:46px;height:46px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);font-size:22px;cursor:pointer;transition:background .25s,transform .25s}.book-arrow:hover{background:var(--ink);color:#fff;transform:translateY(-2px)}.book-dots{display:flex;align-items:center;gap:7px}.book-dots button{border:0;background:none;padding:8px 0;cursor:pointer;color:var(--muted);min-width:28px;min-height:40px}.book-dots button span{display:block;font-size:9px;transition:all .3s;position:relative;padding:8px 0}.book-dots button span:after{content:'';height:3px;border-radius:5px;position:absolute;left:4px;right:4px;bottom:0;background:#e9e5eb;transition:background .3s}.book-dots button[aria-pressed=true]{color:var(--ink);font-weight:700}.book-dots button[aria-pressed=true] span:after{background:var(--ink)}.book-hint{text-align:center;font-size:8px;letter-spacing:1.7px;color:var(--muted);margin:17px 0 38px}.book-info{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;border-top:1px solid var(--line);padding-top:32px;min-height:350px}.book-byline{font-size:9px;letter-spacing:1.5px;margin:0 0 17px}.book-info h3{font-family:'Manrope',sans-serif;font-weight:500;font-size:30px;line-height:1.2;letter-spacing:-1px;margin-bottom:16px}.book-genre{display:inline-block;font-size:10px;line-height:1.6;padding:7px 13px;border:1px solid var(--line);border-radius:20px}.book-subtitle{font-family:Georgia,serif;font-style:italic;font-size:18px;color:var(--muted);line-height:1.5;margin:0 0 16px}.book-count{font-size:12px;letter-spacing:2px;margin-top:23px}.book-count span{color:#a49aa9;font-size:10px}.book-description p{font-size:13px;line-height:1.9;color:var(--muted);margin:0 0 12px}.book-description .book-audience{font-size:11px;color:var(--ink);margin-top:20px;border-left:2px solid #c6b1d9;padding-left:13px}.book-navigation,.book-hint{display:none}.is-ready .book-navigation{display:flex}.is-ready .book-hint{display:block}
@media(max-width:1050px){.is-ready .book-cover{transform:translate(calc(-50% + var(--offset)*175px),-50%) scale(calc(1 - var(--distance)*.16)) rotateY(calc(var(--offset)*-12deg))}.book-info{gap:35px}.header nav{gap:24px}}
@media(max-width:700px){.books{padding-top:65px;padding-bottom:20px}.books-heading{display:block}.books-heading>p{font-size:12px;margin-top:20px}.books-heading>p span{font-size:10px}.book-selector{margin-top:10px}.book-stage{min-height:330px;margin-left:-6.8%;margin-right:-6.8%}.is-ready .book-shelf{height:330px}.is-ready .book-cover{width:185px;transform:translate(calc(-50% + var(--offset)*145px),-50%) scale(calc(1 - var(--distance)*.2)) rotateY(calc(var(--offset)*-13deg));opacity:calc(1 - var(--distance)*.29)}.is-ready .book-cover img{max-height:270px}.book-halo{width:300px;height:300px}.book-navigation{gap:13px;margin-top:3px}.book-arrow{width:42px;height:42px}.book-dots{gap:2px}.book-dots button{min-width:25px}.book-info{grid-template-columns:1fr;gap:15px;min-height:460px;padding-top:25px}.book-info h3{font-size:27px}.book-byline{font-size:8px}.book-count{margin:15px 0 0}.book-hint{font-size:7px;letter-spacing:1.3px;margin-bottom:28px}.book-description p{font-size:12px}.book-cover{width:175px}}
@media(prefers-reduced-motion:reduce){.is-ready .book-cover{will-change:auto}}

/* Official Casa Macanudo identity */
.brand-icon{width:52px;height:52px;object-fit:contain;flex-shrink:0}.brand>span{font-family:Georgia,'Times New Roman',serif;color:#481530;font-weight:700;letter-spacing:-.8px}.brand-dot{display:none}.intro .mini-mark{object-fit:contain}@media(max-width:700px){.brand-icon{width:43px;height:43px}}
