@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');
:root{--paper:#f8f6f1;--cream:#f0ede5;--ink:#242722;--muted:#77756f;--green:#119451;--line:#e4e0d8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}.shell{max-width:1280px;margin:auto;padding-left:32px;padding-right:32px}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:#fff;z-index:999}.site-header{position:sticky;top:0;z-index:60;background:rgba(248,246,241,.97);backdrop-filter:blur(12px);border-bottom:1px solid #ebe7df}.admin-bar .site-header{top:32px}.nav-wrap{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;flex-direction:column;flex-shrink:0}.custom-logo{max-width:195px;height:auto}.brand-name{font:500 24px/1 'Playfair Display',serif;letter-spacing:.025em}.brand small{font-size:8px;letter-spacing:2px;margin-top:5px}.nav-links{margin:0;padding:0;list-style:none;display:flex;gap:23px;align-items:center;font-size:13px}.nav-links a:hover,.text-link:hover{color:#997f5a}.header-actions{display:flex;align-items:center;gap:12px}.languages{border:1px solid #c9c9c4;border-radius:30px;padding:3px;display:flex;font-size:11px}.languages a{padding:4px 9px;border-radius:20px}.languages .active{background:var(--ink);color:#fff}.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;border-radius:3px;font-size:13px;font-weight:700;padding:14px 19px;transition:transform .2s,opacity .2s}.btn:hover{transform:translateY(-2px);opacity:.94}.btn-dark{background:var(--ink);color:white}.btn-light{background:white;color:var(--ink)}.btn-whatsapp{background:var(--green);color:#fff}.menu-toggle{display:none;border:0;background:none;font-size:27px}.hero{position:relative;min-height:620px;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(0,0,0,.66),rgba(0,0,0,.1)),var(--hero) center 45%/cover no-repeat}.hero-content{position:relative;width:100%;padding-top:90px;padding-bottom:110px;z-index:1}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.6px;color:#82786b;margin-bottom:14px}.eyebrow.light{color:#e0d8cb}.hero h1{font:400 clamp(43px,5.6vw,80px)/1.1 'Playfair Display',serif;max-width:700px;margin:0 0 24px}.hero p{font-size:16px;max-width:510px;margin:0 0 28px}.hero-ctas{display:flex;gap:12px;flex-wrap:wrap}.hero-location{position:absolute;bottom:22px;right:35px;font-size:11px;letter-spacing:2px}.hero-location span{margin:0 10px}.trust-bar{background:#f0ede7;border-bottom:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);padding-top:24px;padding-bottom:24px}.trust-grid>div{padding:0 20px;border-right:1px solid #d7d3ca;font-size:20px;display:grid;grid-template-columns:24px 1fr;column-gap:6px;align-items:start}.trust-grid>div:first-child{padding-left:0}.trust-grid>div:last-child{border-right:0}.trust-grid strong{font-size:12px;line-height:1.4}.trust-grid small{font-size:11px;grid-column:2;color:var(--muted)}.section{padding-top:90px;padding-bottom:90px}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:30px}.section h2,.destinations h2,.cta-section h2,.archive-hero h1,.single-body h1{font:400 clamp(32px,3.1vw,48px)/1.2 'Playfair Display',serif;margin:0}.text-link{font-size:12px;font-weight:600;text-decoration:underline;text-underline-offset:5px;white-space:nowrap}.card-grid{display:grid;gap:18px}.card-grid.four{grid-template-columns:repeat(4,1fr)}.service-card{border:1px solid var(--line);background:#fff}.image-wrap{display:block;height:260px;overflow:hidden;background:#ddd}.image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.service-card:hover img{transform:scale(1.04)}.card-copy{padding:17px}.card-copy h3{font:500 22px 'Playfair Display',serif;margin:0 0 6px}.card-copy p{font-size:12px;color:#666;min-height:45px;margin:0 0 12px}.destinations{background:#20251f;color:#fff;padding:80px 0}.destinations .section-top p{color:#c8c7c0}.light-link{color:white}.destination-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.destination-card{height:330px;position:relative;overflow:hidden;background:#333}.destination-card:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.75))}.destination-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.destination-card:hover img{transform:scale(1.05)}.destination-card span{position:absolute;bottom:20px;left:20px;right:20px;font:25px 'Playfair Display',serif;z-index:1}.destination-card b{float:right}.portfolio-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.filter{font:12px 'DM Sans',sans-serif;cursor:pointer;padding:9px 17px;background:none;border:1px solid var(--line);border-radius:2px}.filter.active{background:var(--ink);color:white}.portfolio-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.portfolio-item{height:245px;position:relative;overflow:hidden;background:#ddd}.portfolio-item img{width:100%;height:100%;object-fit:cover}.portfolio-item span{position:absolute;bottom:0;left:0;right:0;padding:25px 12px 10px;color:white;background:linear-gradient(transparent,rgba(0,0,0,.65));font-size:12px}.portfolio-item[hidden]{display:none}.cta-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding-top:20px;padding-bottom:80px}.cta-image img{width:100%;height:340px;object-fit:cover}.cta-content p{color:#67645e;max-width:460px}.faq-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:70px}.faq-grid p{color:var(--muted)}.faqs details{border-bottom:1px solid var(--line);padding:18px 0}.faqs summary{cursor:pointer;font-size:14px;font-weight:600;list-style-position:inside}.faqs details p{padding-left:20px}.site-footer{background:#1c211c;color:#e8e5de;padding-top:65px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.footer-grid>div{display:flex;flex-direction:column;gap:8px}.footer-grid strong{margin-bottom:10px}.footer-grid a,.footer-grid p{font-size:13px;color:#c0c1b9;margin:0}.copyright{font-size:11px;color:#a5a59e;border-top:1px solid #3b3d39;margin-top:55px;padding-top:18px;padding-bottom:22px}.archive-hero{padding-top:90px;padding-bottom:55px;background:#eeeae3}.archive-hero p{max-width:620px}.archive-grid{padding-top:55px}.single-cover{max-height:560px;object-fit:cover;width:100%}.single-body{max-width:860px;margin:auto;padding:70px 28px}.single-body h1{margin-bottom:25px}.single-body .entry-content{font-size:16px;line-height:1.85}.single-body .entry-content img{margin:30px auto}.single-cta{padding:35px;background:#edeae3;margin:45px 0}.single-cta h2{font:30px 'Playfair Display',serif;margin:0 0 12px}.placeholder-note{color:#75716c;font-size:12px}.blog-card{background:white;border:1px solid var(--line)}.blog-card .card-copy{padding:18px}@media(max-width:1050px){.nav-links{gap:12px}.nav-cta{display:none}.card-grid.four{grid-template-columns:repeat(2,1fr)}.destination-grid{grid-template-columns:repeat(2,1fr)}.trust-grid{grid-template-columns:repeat(2,1fr);row-gap:22px}}@media(max-width:760px){.shell{padding-left:20px;padding-right:20px}.nav-wrap{min-height:66px;flex-wrap:wrap}.brand-name{font-size:21px}.menu-toggle{display:block;margin-left:auto}.main-nav{display:none;order:10;width:100%}.main-nav.open{display:block}.nav-links{display:flex;flex-direction:column;align-items:stretch;padding:12px 0;gap:15px}.header-actions{gap:7px}.hero{min-height:620px}.hero-content{padding-top:85px;padding-bottom:90px}.hero h1{font-size:clamp(41px,10vw,65px)}.hero-location{left:20px;right:auto;font-size:9px}.trust-grid{grid-template-columns:1fr 1fr}.trust-grid>div{padding:0 8px;font-size:14px}.trust-grid strong{font-size:10px}.trust-grid small{font-size:10px}.section{padding-top:65px;padding-bottom:65px}.section-top{align-items:flex-start;flex-direction:column}.card-grid.four{grid-template-columns:repeat(2,1fr);gap:10px}.image-wrap{height:190px}.card-copy{padding:12px}.card-copy h3{font-size:19px}.destination-grid{gap:9px}.destination-card{height:260px}.portfolio-grid{grid-template-columns:repeat(2,1fr)}.portfolio-item{height:225px}.cta-section,.faq-grid{grid-template-columns:1fr;gap:25px}.cta-image img{height:250px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:span 2}}@media(max-width:390px){.card-grid.four{grid-template-columns:1fr}.image-wrap{height:300px}.hero-ctas .btn{width:100%}.destination-card{height:210px}}

/* Hanami Visual v2 — editorial visual refinement */
:root{--paper:#f7f5f0;--cream:#f3f0e9;--ink:#252824;--green:#0fa451}body{font-size:16px}.shell{max-width:1430px;padding-left:clamp(20px,4vw,64px);padding-right:clamp(20px,4vw,64px)}.site-header{background:#faf8f4}.nav-wrap{min-height:82px}.brand-name{font-size:26px;letter-spacing:.04em}.brand small{font-size:9px}.hero{min-height:min(740px,76vw);background-position:center,center;background-image:linear-gradient(90deg,rgba(13,16,13,.79) 0%,rgba(13,16,13,.47) 40%,rgba(13,16,13,.08) 100%),var(--hero);background-size:cover}.hero-content{padding-top:100px;padding-bottom:125px}.hero h1{max-width:810px;font-size:clamp(50px,6.4vw,98px);line-height:1.06}.hero p{font-size:17px;max-width:510px}.hero-location{font-size:12px;letter-spacing:.1em}.trust-grid{padding-top:28px;padding-bottom:28px}.trust-grid>div{display:grid;grid-template-columns:40px 1fr;gap:2px 9px}.trust-grid>div>span{grid-row:span 2;font-size:25px}.trust-grid strong{font-size:13px}.trust-grid small{font-size:11px}.section{padding-top:100px;padding-bottom:100px}.section-top{margin-bottom:32px}.section h2,.destinations h2,.cta-section h2{font-size:clamp(36px,3.3vw,52px)}.eyebrow{letter-spacing:2.8px}.card-grid{gap:16px}.card-grid.three{grid-template-columns:repeat(3,1fr)}.service-card .image-wrap{height:300px}.image-wrap img{width:100%;height:100%;object-fit:cover}.card-copy{padding:19px}.card-copy h3{font-size:23px}.card-copy p{min-height:54px;font-size:13px}.destinations{background:#222723 url(../images/hero.webp) center/cover no-repeat;position:relative;isolation:isolate;padding:92px 0}.destinations:before{content:'';position:absolute;inset:0;background:rgba(17,22,18,.88);z-index:-1}.destination-grid{gap:15px}.destination-card{height:345px}.destination-card span{font-size:27px}.destination-card span small{display:block;font:12px 'DM Sans',sans-serif;color:#e7e4db;margin-top:5px}.destination-card span b{position:absolute;bottom:1px;right:0}.portfolio-grid{gap:9px}.portfolio-item{height:258px}.portfolio-item:hover img{transform:scale(1.045)}.portfolio-item img{transition:transform .35s}.demo-disclaimer{font-size:11px;color:#8c8579;margin-top:14px}.cta-section{grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,100px);padding-top:60px;padding-bottom:95px}.cta-image img{height:390px}.cta-content h2{max-width:520px}.cta-content p{font-size:15px}.faq-grid{padding-top:50px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:25px}.review-grid blockquote{margin:0;background:#fff;padding:28px;border:1px solid var(--line)}.review-grid p{font:20px/1.5 'Playfair Display',serif}.review-grid cite{font:600 12px 'DM Sans',sans-serif}.blog-card .image-wrap{height:235px}.site-footer{background:#1e251f}.faqs details p{max-width:620px}.portfolio-filters .filter{padding:10px 20px}.portfolio-item span:empty{display:none}
@media(min-width:1600px){.hero{min-height:780px}}@media(max-width:1100px){.hero{min-height:630px}.service-card .image-wrap{height:230px}.destination-card{height:270px}.review-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.hero{min-height:670px;background-position:57% center}.hero-content{padding-top:90px;padding-bottom:120px}.hero h1{font-size:clamp(45px,10vw,66px)}.hero p{font-size:14px}.hero-location{font-size:9px}.trust-grid>div{grid-template-columns:25px 1fr}.trust-grid>div>span{font-size:17px}.card-grid.four,.card-grid.three{grid-template-columns:repeat(2,1fr)}.service-card .image-wrap{height:210px}.destination-card{height:265px}.section{padding-top:65px;padding-bottom:65px}.portfolio-item{height:175px}.cta-section{padding-top:15px}.review-grid{grid-template-columns:1fr}.blog-card .image-wrap{height:180px}}@media(max-width:420px){.card-grid.four,.card-grid.three{grid-template-columns:1fr}.service-card .image-wrap{height:300px}.destination-grid{grid-template-columns:repeat(2,1fr)}.destination-card{height:200px}.destination-card span{font-size:20px}.hero-ctas .btn{width:auto;font-size:11px;padding:12px}.portfolio-item{height:142px}}
