@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&display=swap');
:root{--ink:#17201c;--muted:#68706a;--yellow:#f3d447;--yellow-light:#faefb8;--blue:#d9eef3;--blue-strong:#b9dfe9;--cream:#f8f5e9;--paper:#fffdf6;--line:#e8e4d7;--green:#314c3d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}.wrap{width:min(1160px,calc(100% - 56px));margin-inline:auto}.topline{background:var(--ink);color:#fff;font-size:11px;letter-spacing:.04em}.topinner{height:36px;display:flex;justify-content:space-between;align-items:center}.topinner a{color:var(--yellow)}.site-header{height:82px;background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:5}.navrow{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:10px}.brandmark{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--yellow);font-family:'Playfair Display',serif;font-size:26px;font-weight:700;line-height:1}.brandmark span{color:var(--green)}.brandname{font-size:15px;font-weight:700;line-height:1.15;letter-spacing:-.02em}.brandname small{display:block;font-size:8px;letter-spacing:.17em;color:var(--muted);margin-top:5px;font-weight:600}.navlinks{display:flex;align-items:center;gap:35px;font-size:12px;font-weight:600}.navlinks>a:not(.nav-cta){color:#505851;transition:color .2s}.navlinks>a:hover,.navlinks>a.active{color:var(--ink)}.navlinks .active:not(.nav-cta):after{content:'';height:2px;background:var(--yellow);display:block;margin-top:4px}.nav-cta{background:var(--yellow);padding:12px 17px;border-radius:3px;color:var(--ink)}.nav-cta span{margin-left:11px}.active-cta{box-shadow:inset 0 0 0 1px #d6bc27}.menu-toggle{display:none;border:0;background:none;font-size:24px}.hero{overflow:hidden;background:var(--yellow);position:relative}.hero:before{content:'';position:absolute;width:490px;height:490px;border:1px solid rgba(30,40,30,.12);border-radius:50%;right:-130px;top:-230px}.hero-grid{min-height:550px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:56px;padding-top:36px;padding-bottom:40px}.hero-copy{padding:15px 0}.eyebrow{font-size:9px;letter-spacing:.17em;font-weight:700;color:var(--green);display:block}.hero-copy .eyebrow{display:flex;align-items:center;gap:9px}.hero-copy .eyebrow i{width:7px;height:7px;background:var(--green);border-radius:50%}h1,h2,h3,p{margin-top:0}.hero h1,.page-hero h1{font-family:'Playfair Display',serif;font-size:clamp(48px,6vw,74px);line-height:1.03;letter-spacing:-.045em;margin:20px 0}.hero h1 em,.page-hero h1 em,.service-band h2 em{font-weight:600}.hero-copy>p{max-width:440px;font-size:15px;line-height:1.8;color:#343b33}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:28px}.button{display:inline-flex;align-items:center;gap:23px;padding:14px 18px;font-size:11px;font-weight:700;letter-spacing:.01em;border-radius:3px}.button-dark{background:var(--ink);color:white}.button-dark span{font-size:16px;color:var(--yellow)}.text-link{font-size:11px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:4px}.text-link span{margin-left:8px}.hero-note{display:flex;align-items:center;gap:11px;margin-top:54px}.note-icon{font-size:21px}.hero-note strong,.hero-note small{display:block}.hero-note strong{font-size:11px}.hero-note small{font-size:10px;color:#4c5043}.hero-visual{position:relative;padding:13px 28px 20px 4px}.photo-frame{height:390px;position:relative;z-index:1;background:#eee;border:8px solid var(--paper);box-shadow:0 14px 35px #594b1933;transform:rotate(2deg)}.photo-frame img{width:100%;height:100%;object-fit:cover;object-position:center 42%}.photo-label{position:absolute;bottom:14px;left:14px;background:var(--paper);padding:7px 11px;font-size:9px;font-weight:700;letter-spacing:.06em}.sunburst{position:absolute;z-index:2;right:-5px;top:-13px;width:100px;height:100px;border-radius:50%;display:grid;align-content:center;text-align:center;background:var(--blue);font-size:8px;letter-spacing:.12em;line-height:1.7;box-shadow:0 0 0 6px var(--yellow)}.sunburst b{font-family:'Playfair Display',serif;font-size:16px;letter-spacing:0}.doodle{position:absolute;color:var(--green);font-size:38px}.doodle-one{left:-25px;bottom:30px}.doodle-two{right:-13px;bottom:0;font-size:25px}.quick-strip{background:var(--paper);border-bottom:1px solid var(--line)}.strip-grid{min-height:94px;display:grid;grid-template-columns:repeat(3,1fr);align-items:center}.strip-grid>div{display:flex;align-items:center;gap:13px;padding-left:27px;border-right:1px solid var(--line)}.strip-grid>div:first-child{padding-left:0}.strip-grid>div:last-child{border-right:0}.strip-icon{width:34px;height:34px;border-radius:50%;background:var(--blue);display:grid;place-items:center;font-size:17px}.strip-grid b,.strip-grid small{display:block}.strip-grid b{font-size:11px}.strip-grid small{font-size:10px;color:var(--muted);margin-top:2px}.section{padding-top:94px;padding-bottom:102px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:30px}.section-heading h2,.gallery-head h2{font-family:'Playfair Display',serif;font-size:36px;letter-spacing:-.03em;line-height:1.1;margin:9px 0 0}.section-heading>.text-link{margin-bottom:7px}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.category-card{min-height:280px;padding:23px 24px;position:relative;overflow:hidden;transition:transform .2s}.category-card:hover{transform:translateY(-4px)}.card-yellow{background:var(--yellow-light)}.card-blue{background:var(--blue)}.card-cream{background:var(--cream)}.card-number{font-size:8px;font-weight:700;letter-spacing:.15em;color:var(--muted)}.category-illustration{height:87px;display:flex;align-items:center;justify-content:center;font-size:54px;color:var(--green);font-family:'Playfair Display',serif}.category-illustration.book-stack{font-size:51px}.category-card h3{font-family:'Playfair Display',serif;font-size:21px;margin:0 0 8px}.category-card p{font-size:11px;color:#596058;max-width:270px;margin-bottom:0;line-height:1.75}.round-arrow{position:absolute;right:20px;bottom:20px;width:27px;height:27px;border:1px solid #aab1a7;border-radius:50%;display:grid;place-items:center;font-size:13px}.service-band{background:var(--blue);padding:75px 0}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.service-band h2{font-family:'Playfair Display',serif;font-size:43px;line-height:1.12;letter-spacing:-.035em;margin:13px 0}.service-band p{font-size:12px;color:#4e5c5c;max-width:370px;line-height:1.8;margin-bottom:22px}.service-band .button{margin-top:2px}.service-list{border-top:1px solid #a8ced7}.service-list>div{display:flex;align-items:center;padding:18px 0;border-bottom:1px solid #a8ced7;gap:18px}.service-list span{font-size:9px;color:#657e81}.service-list b{font-size:13px;flex:1}.service-list i{font-style:normal;font-size:16px}.visit-cta{display:grid;grid-template-columns:1fr 1fr;margin-top:95px;margin-bottom:95px;min-height:340px}.visit-card{padding:49px 45px;background:var(--yellow);position:relative;overflow:hidden}.visit-card h2{font-family:'Playfair Display',serif;font-size:39px;line-height:1.1;margin:12px 0}.visit-card p{font-size:11px;line-height:1.8;max-width:360px;margin-bottom:22px}.visit-spark{position:absolute;right:18px;top:5px;font-size:85px;opacity:.18}.visit-photo img{width:100%;height:100%;min-height:340px;object-fit:cover}.footer{background:var(--ink);color:white;padding:45px 0 0}.footer-main{display:grid;grid-template-columns:1.25fr 1fr 1.5fr 1fr;gap:22px;align-items:center;padding-bottom:34px}.brand-footer .brandname{color:white}.brand-footer .brandname small{color:#fff}.footer-main>p{font-size:10px;line-height:1.7;color:#fff;margin:0}.footer-contact a{display:block;font-size:10px;margin:3px 0;color:#fff}.footer-hours{font-size:8px;letter-spacing:.1em;color:#fff}.footer-hours b{display:block;font-size:11px;color:var(--yellow);margin-top:4px;letter-spacing:0}.footer-bottom{border-top:1px solid #3d4941;padding:14px 0;display:flex;justify-content:space-between;font-size:9px;color:#fff}.page-hero{background:var(--yellow);position:relative;overflow:hidden}.page-hero:after{content:'';position:absolute;width:310px;height:310px;border:1px solid #796d2d44;border-radius:50%;right:13%;top:-185px}.page-hero-inner{padding-top:76px;padding-bottom:75px;position:relative}.page-hero h1{font-size:60px;margin:13px 0}.page-hero p{max-width:570px;font-size:13px;line-height:1.8;color:#45493c;margin:0}.page-hero-mark{position:absolute;right:10%;bottom:24px;font-size:72px;color:#55715c;opacity:.45}.catalog{display:grid;grid-template-columns:.7fr 1.3fr;gap:85px;padding-top:95px;padding-bottom:100px}.catalog-intro{position:sticky;top:35px;align-self:start}.catalog-intro h2,.contact-details h2{font-family:'Playfair Display',serif;font-size:39px;line-height:1.12;letter-spacing:-.03em;margin:13px 0}.catalog-intro p{font-size:11px;line-height:1.8;color:var(--muted);max-width:300px}.catalog-item{display:grid;grid-template-columns:53px 1fr;gap:12px;padding:0 0 27px;margin-bottom:26px;border-bottom:1px solid var(--line);scroll-margin-top:30px}.catalog-item:last-child{margin-bottom:0;border:0}.catalog-no{font-family:'Playfair Display',serif;font-size:23px;color:#b8a22e}.catalog-item h3{font-family:'Playfair Display',serif;font-size:24px;line-height:1.2;margin:4px 0 9px}.catalog-item p{font-size:11px;line-height:1.8;color:var(--muted);max-width:580px;margin-bottom:13px}.catalog-item .eyebrow{font-size:8px}.tag-row{display:flex;flex-wrap:wrap;gap:6px}.tag-row span{font-size:9px;padding:5px 9px;background:var(--cream);border-radius:20px;color:#4d554d}.gallery-band{background:#f4f1e6;padding:65px 0 70px}.gallery-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:23px}.gallery-head h2{font-size:32px}.gallery-head p{font-size:13px;line-height:1.7;font-weight:500;color:var(--ink);text-align:right;margin:0}.photo-gallery{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px;height:260px}.photo-gallery img{width:100%;height:100%;object-fit:cover}.bottom-cta{padding-top:65px;padding-bottom:65px;display:flex;align-items:center;justify-content:space-between}.bottom-cta h2{font-family:'Playfair Display',serif;font-size:29px;margin:8px 0 0}.about-hero{background:var(--blue)}.story-section{padding-top:95px;padding-bottom:100px;display:grid;grid-template-columns:1fr .86fr;gap:90px;align-items:center}.story-image{height:415px;position:relative}.story-image img{width:100%;height:100%;object-fit:cover}.image-stamp{position:absolute;right:-20px;bottom:24px;border-radius:50%;width:97px;height:97px;display:grid;place-content:center;text-align:center;background:var(--yellow);font-size:9px;font-weight:700;letter-spacing:.1em;line-height:1.5;transform:rotate(8deg)}.story-copy h2{font-family:'Playfair Display',serif;font-size:42px;line-height:1.1;margin:12px 0 17px}.story-copy p{font-size:11px;line-height:1.9;color:var(--muted)}.story-copy .text-link{display:inline-block;margin-top:7px}.values-band{background:var(--cream);padding:75px 0}.values-band h2{font-family:'Playfair Display',serif;font-size:39px;line-height:1.08;margin:10px 0 32px}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.values-grid article{border-top:1px solid #d7d2c4;padding-top:14px}.values-grid article>span{font-size:9px;color:#a58f27;font-weight:700}.values-grid h3{font-family:'Playfair Display',serif;font-size:19px;margin:10px 0 7px}.values-grid p{font-size:10px;line-height:1.8;color:var(--muted);max-width:280px;margin:0}.contact-hero{background:var(--blue)}.contact-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;padding-top:82px;padding-bottom:80px;align-items:start}.contact-details h2{font-size:42px;margin-bottom:26px}.detail-block{display:flex;gap:14px;margin-bottom:18px}.detail-icon{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:var(--yellow-light);font-size:15px;flex:none}.detail-block small{font-size:8px;font-weight:700;letter-spacing:.13em;color:var(--green)}.detail-block p{font-size:11px;line-height:1.75;color:#5c655e;margin:3px 0 0}.detail-block a{border-bottom:1px solid #bbc1b9}.contact-details>.button{margin-top:8px}.map-card{background:white;box-shadow:0 10px 35px #25352814}.map-card iframe{display:block;width:100%;height:360px;border:0;filter:saturate(.72)}.map-caption{display:flex;align-items:center;gap:12px;padding:14px 17px}.map-pin{width:33px;height:33px;border-radius:50%;background:var(--yellow);display:grid;place-items:center}.map-caption b,.map-caption small{display:block}.map-caption b{font-size:11px}.map-caption small{font-size:9px;color:var(--muted)}.map-caption>a{margin-left:auto;width:28px;height:28px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}.contact-note{background:var(--yellow-light);padding:18px 0}.contact-note .wrap{display:flex;align-items:center;gap:15px}.contact-note .wrap>span{font-size:23px}.contact-note p{font-size:10px;line-height:1.8;margin:0}.contact-note p b{font-size:11px}
@media(max-width:800px){.wrap{width:min(100% - 36px,600px)}.site-header{height:70px}.menu-toggle{display:block}.navlinks{display:none;position:absolute;top:69px;left:0;right:0;background:var(--paper);padding:18px 22px 23px;box-shadow:0 8px 15px #0001;align-items:stretch;gap:16px;flex-direction:column}.navlinks.open{display:flex}.navlinks .active:not(.nav-cta):after{display:none}.hero-grid{grid-template-columns:1fr;gap:20px;padding-top:48px;padding-bottom:46px}.hero-copy{padding:0}.hero h1{font-size:58px}.hero-visual{max-width:520px;width:100%;margin:auto;padding:10px 20px 20px}.photo-frame{height:340px}.sunburst{right:0}.hero-note{margin-top:32px}.strip-grid{grid-template-columns:1fr;padding:12px 0}.strip-grid>div{padding:12px 0;border-right:0;border-bottom:1px solid var(--line)}.strip-grid>div:last-child{border-bottom:0}.section{padding-top:65px;padding-bottom:70px}.section-heading{align-items:start;gap:15px}.section-heading h2{font-size:29px}.category-grid{grid-template-columns:1fr}.category-card{min-height:250px}.category-illustration{height:70px}.service-grid{grid-template-columns:1fr;gap:38px}.service-band{padding:56px 0}.service-band h2{font-size:38px}.visit-cta{grid-template-columns:1fr;margin-top:65px;margin-bottom:65px}.visit-photo img{height:260px;min-height:0}.footer-main{grid-template-columns:1fr 1fr;gap:24px}.footer-bottom{gap:10px;flex-wrap:wrap}.page-hero-inner{padding-top:58px;padding-bottom:60px}.page-hero h1{font-size:47px}.page-hero p{max-width:90%}.page-hero-mark{right:4%;font-size:50px}.catalog{grid-template-columns:1fr;gap:35px;padding-top:65px;padding-bottom:70px}.catalog-intro{position:static}.catalog-intro h2{font-size:34px}.gallery-head{align-items:start;gap:15px;flex-direction:column}.gallery-head p{text-align:left}.photo-gallery{height:auto;grid-template-columns:1fr 1fr}.photo-gallery img{height:190px}.photo-gallery img:first-child{grid-column:span 2;height:240px}.bottom-cta{padding-top:45px;padding-bottom:45px;gap:20px;align-items:start;flex-direction:column}.story-section{grid-template-columns:1fr;gap:40px;padding-top:65px;padding-bottom:70px}.story-image{height:350px}.story-copy h2{font-size:36px}.values-band{padding:60px 0}.values-grid{grid-template-columns:1fr;gap:20px}.values-grid p{max-width:450px}.contact-layout{grid-template-columns:1fr;gap:40px;padding-top:60px;padding-bottom:55px}.map-card iframe{height:310px}}
@media(max-width:420px){.topinner{font-size:9px}.brandname{font-size:13px}.brandmark{width:37px;height:37px}.hero h1{font-size:51px}.hero-actions{align-items:flex-start;flex-direction:column;gap:17px}.photo-frame{height:300px}.section-heading{flex-direction:column}.section-heading h2{font-size:27px}.footer-main{grid-template-columns:1fr}.footer-hours{margin-top:-12px}.page-hero h1{font-size:40px}.photo-gallery{grid-template-columns:1fr}.photo-gallery img:first-child{grid-column:auto}.photo-gallery img,.photo-gallery img:first-child{height:220px}.catalog-item{grid-template-columns:37px 1fr}.catalog-no{font-size:19px}}
.whatsapp-float{position:fixed;right:24px;bottom:24px;z-index:20;display:flex;align-items:center;gap:10px;padding:12px 17px 12px 12px;border-radius:999px;background:#25d366;color:#103b24;font-size:12px;font-weight:700;box-shadow:0 5px 18px #17201c35;transition:transform .2s,box-shadow .2s}.whatsapp-float:hover{transform:translateY(-3px);box-shadow:0 8px 22px #17201c45}.whatsapp-float:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.whatsapp-icon{width:28px;height:28px;display:grid;place-items:center;border:2px solid currentColor;border-radius:50%;font-size:20px;line-height:1}
@media(max-width:420px){.whatsapp-float{right:16px;bottom:16px;padding:10px 14px 10px 10px}}
