/* Catfé Māo boarding — matches the Catfé Māo café visual identity.
   Scopes everything to the boarding merchant, leaving Paw Hub untouched. */
body[data-product=boarding]{
 --ink:#2e3d33;--muted:#738071;--accent:#526b51;--accent-strong:#344b3c;
 --accent-soft:#eef1e9;--canvas:#f9f7f1;--line:#e3e6db;
 background:#f9f7f1;color:#2e3d33;
 font-family:"Avenir Next",Avenir,"Segoe UI",system-ui,sans-serif;
}
body[data-product=boarding] :is(h1,h2,h3){font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.035em}
body[data-product=boarding] .pilot-ribbon{background:#e8ecdf;color:#4a624f;border-bottom:1px solid #d9e0d3;font-size:10px}
body[data-product=boarding] .site-header{background:rgba(250,250,246,.97);border-bottom:1px solid #dfe5d8;box-shadow:0 5px 24px #2238280e}
body[data-product=boarding] .header-row{min-height:89px}
body[data-product=boarding] .brand{display:flex;align-items:center;gap:11px;font-size:22px;max-width:none}
body[data-product=boarding] .catfe-brand-icon{display:block;width:55px;height:55px;object-fit:contain}
body[data-product=boarding] .catfe-brand-copy{display:flex;flex-direction:column;color:#344b3c;font-family:Georgia,serif;font-size:24px;letter-spacing:-.025em;line-height:1.07}
body[data-product=boarding] .catfe-brand-copy small{font-family:system-ui,sans-serif;font-size:9px;font-weight:800;letter-spacing:.12em;color:#718071;margin-top:7px}
body[data-product=boarding] .header-nav{gap:18px}
body[data-product=boarding] .header-nav a{font-weight:650;font-size:12px;color:#526a56}
body[data-product=boarding] .header-nav a[aria-current=page]{color:#2f4938;text-decoration:underline;text-underline-offset:7px}
body[data-product=boarding] .lang-switch{border:1px solid #d7dfd0;background:#f6f7ef;border-radius:999px;padding:3px}
body[data-product=boarding] .lang-switch button[aria-pressed=true]{background:#405a41;border-radius:999px;color:#fff}
body[data-product=boarding] .btn-primary{border-radius:999px;background:#405a41;color:#fff;box-shadow:0 6px 16px #344b3c1b}
body[data-product=boarding] .btn-outline{border-radius:999px;border-color:#b6c5b1;color:#405a41;background:transparent}
body[data-product=boarding] .eyebrow{font-size:11px;letter-spacing:.17em;color:#73876b}
body[data-product=boarding] .section-alt{background:#f0eee5}
body[data-product=boarding] .section-head h2{font-size:clamp(32px,4vw,48px);color:#415843}
body[data-product=boarding] .card,body[data-product=boarding] .service-card{border-radius:20px;background:#fffefb;border-color:#e4e6db;box-shadow:0 11px 34px #344b3c0a}
body[data-product=boarding] .card-num,body[data-product=boarding] .service-number{color:#879b74}
body[data-product=boarding] .story-note{background:#e6eadc;border-radius:24px}
body[data-product=boarding] .story-note blockquote{font-family:Georgia,serif;font-weight:400}
body[data-product=boarding] .cta{background:#41563e}
body[data-product=boarding] .cta .btn{background:#fffdf8;color:#405a41;border-radius:999px}
body[data-product=boarding] .site-footer{background:#434d37}
body[data-product=boarding] .site-footer strong{font-family:Georgia,serif;font-weight:400}
body[data-product=boarding] .footer-main p,body[data-product=boarding] .footer-bottom{color:#d8ddcc}
body[data-product=boarding] .booking-sidebar{background:#eff2e9;border-radius:22px}
body[data-product=boarding] .panel{border-radius:22px}
body[data-product=boarding] .faq-stack details{border-radius:16px}
.cm-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.96fr);gap:clamp(32px,5vw,76px);align-items:center;padding:85px 0 95px}
.cm-hero h1{font-size:clamp(43px,5vw,78px);line-height:1.13;margin:20px 0 24px;color:#344b3c}
.cm-hero h1 em{font-weight:400;color:#9d8566}
.cm-hero-copy>p{font-size:15px;line-height:1.9;max-width:510px;color:#647064}
.cm-hero-actions{display:flex;align-items:center;gap:17px;flex-wrap:wrap;margin-top:28px}
.cm-hero-facts{display:flex;gap:22px;flex-wrap:wrap;border-top:1px solid #d9ded0;padding-top:22px;margin-top:35px}
.cm-hero-facts span{display:block;font-size:11px;letter-spacing:.1em;color:#70836a;font-weight:800}
.cm-hero-facts strong{display:block;font-size:15px;margin-top:6px;color:#3a4f3c}
.cm-hero-art{position:relative;background:linear-gradient(145deg,#e6ecdc,#f5f1e6);border:1px solid #e0e5d8;border-radius:29px;min-height:560px;padding:35px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.cm-hero-art:before{content:"";position:absolute;width:340px;height:340px;border:2px solid #d7dfc9;border-radius:50%;right:-140px;top:-135px}
.cm-hero-mark{display:flex;gap:12px;align-items:center;position:relative;z-index:1}
.cm-hero-mark img{width:76px;height:76px;object-fit:contain}
.cm-hero-mark strong{font-family:Georgia,serif;font-size:25px;font-weight:400;color:#3e5743}
.cm-hero-mark small{display:block;margin-top:5px;font-size:10px;letter-spacing:.12em;color:#77826f}
.cm-hero-room{position:absolute;inset:115px 30px 95px;width:calc(100% - 60px);height:calc(100% - 210px);object-fit:cover;object-position:center 48%;border-radius:20px;box-shadow:0 16px 35px #344b3c2a}
.cm-hero-loc{position:relative;align-self:flex-end;max-width:280px;background:#fffdf8f2;border:1px solid #e4e4d9;padding:16px 19px;border-radius:17px;box-shadow:0 8px 22px #344b3c18}
.cm-hero-loc span{font-size:10px;color:#7f916c;letter-spacing:.13em}
.cm-hero-loc strong{display:block;font-size:17px;font-family:Georgia,serif;color:#3d5743;margin-top:5px}
.cm-wave{height:68px;background:#f0eee5;clip-path:polygon(0 52%,10% 60%,24% 40%,37% 55%,49% 30%,66% 62%,81% 42%,100% 60%,100% 100%,0 100%);margin-top:-68px;position:relative;pointer-events:none}
.cm-photo-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(30px,5vw,72px);align-items:center}
.cm-photo-intro img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:23px;box-shadow:0 15px 35px #344b3c12}
.cm-photo-intro h2,.cm-story-section h2{font-size:clamp(32px,3.6vw,50px);line-height:1.24;color:#405940}
.cm-photo-intro p{font-size:15px;line-height:1.9}
.cm-note{background:#fffef9;border:1px solid #dce3d5;border-radius:18px;padding:23px 25px;line-height:1.8;color:#52624f;margin:35px 0}
.cm-care-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}
.cm-care-item{background:#fffdf9;border:1px solid #e1e6d9;border-radius:20px;overflow:hidden}
.cm-care-item img{width:100%;height:218px;object-fit:cover;display:block}
.cm-care-item div{padding:22px 23px 28px}
.cm-care-item span{font-size:10px;letter-spacing:.16em;color:#8c9c7e;font-weight:800}
.cm-care-item h3{font-size:24px;margin:12px 0;color:#405742}
.cm-care-item p{font-size:13px;line-height:1.85;margin:0;color:#6c7466}
.cm-address-strip{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:40px}
.cm-address-strip article{border:1px solid #dce4d5;background:#fffefb;border-radius:18px;padding:24px}
.cm-address-strip article.cm-address-main{background:#eaf0e4;border-color:#cfddc6}
.cm-address-strip strong{display:block;color:#354c3a;font-size:16px}
.cm-address-strip p{margin:9px 0;color:#65735f;font-size:13px;line-height:1.7}
.cm-location-tag{display:inline-flex;font-size:10px;color:#64805e;letter-spacing:.13em;font-weight:800;margin-bottom:9px}
.cm-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.cm-gallery figure{margin:0;min-width:0;background:#fffdf8;border:1px solid #e6e4dd;border-radius:18px;overflow:hidden}
.cm-gallery img{display:block;width:100%;height:235px;object-fit:cover}
.cm-gallery figcaption{padding:15px 18px;color:#4f604e;font-size:13px;font-weight:700}
.cm-gallery-footer{margin-top:16px;color:#748071;font-size:12px;line-height:1.8}
.cm-contact-quick{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.cm-contact-quick a{display:inline-flex;padding:12px 16px;border:1px solid #cddbc4;border-radius:12px;background:#fff;color:#446047;font-size:13px;font-weight:700;text-decoration:none}
.cm-contact-quick a:hover{border-color:#869b7f;background:#f3f7ed}
.cm-kicker{font-size:11px;letter-spacing:.16em;color:#6e876c;font-weight:800}
@media(max-width:1000px){.cm-hero{gap:25px}.cm-hero-art{min-height:495px}.cm-care-item img{height:185px}}
@media(max-width:850px){.cm-hero{grid-template-columns:1fr;padding:55px 0 70px}.cm-hero-art{min-height:460px}.cm-hero-room{inset:95px 24px 79px;width:calc(100% - 48px);height:calc(100% - 174px)}.cm-photo-intro{grid-template-columns:1fr}.cm-care-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cm-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){body[data-product=boarding] .header-row{min-height:74px}body[data-product=boarding] .catfe-brand-icon{width:42px;height:42px}body[data-product=boarding] .catfe-brand-copy{font-size:19px}body[data-product=boarding] .catfe-brand-copy small{font-size:8px}body[data-product=boarding] .header-nav.open{background:#fffdf8}body[data-product=boarding] .mobile-toggle{border-radius:13px;color:#405a41}.cm-hero{padding:37px 0 50px;gap:22px}.cm-hero h1{font-size:clamp(38px,10vw,57px)}.cm-hero-art{min-height:392px;padding:23px;border-radius:22px}.cm-hero-room{inset:87px 16px 72px;width:calc(100% - 32px);height:calc(100% - 159px);border-radius:14px}.cm-hero-mark img{width:55px;height:55px}.cm-hero-mark strong{font-size:20px}.cm-hero-loc{padding:11px 13px}.cm-hero-loc strong{font-size:14px}.cm-hero-facts{gap:16px}.cm-care-grid,.cm-gallery,.cm-address-strip{grid-template-columns:1fr}.cm-care-item img{height:240px}.cm-gallery img{height:230px}.cm-wave{height:40px;margin-top:-40px}}
