/* Mi Amoré — an intimate, mobile-first shop visit. */
.nav nav a[aria-current="page"]:after{width:100%}
.boutique-page{background:#f2e5d8}
.boutique-page .shop-hero{display:block;position:relative;isolation:isolate;min-height:0;height:600px;overflow:hidden;background:#30232c;color:#fff1df}
.boutique-page .shop-hero-photo{position:absolute;inset:0;height:100%;width:100%;overflow:hidden;z-index:-2}
.boutique-page .shop-hero-photo img{object-position:50% 48%;animation:boutique-arrive 1.6s ease-out both}
.boutique-page .shop-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#2b202de8,#39262bbb 32%,#33272a10 76%),linear-gradient(0deg,#2c2429a6,transparent 50%);z-index:-1;pointer-events:none}
.boutique-page .shop-hero-copy{padding:72px 7%;height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:none;position:relative}
.boutique-page .shop-hero-copy .eyebrow{font-size:11px;letter-spacing:.18em;color:#eed0ae}
.boutique-page .shop-hero-copy h1{font-size:clamp(56px,6.5vw,94px);line-height:1.04;letter-spacing:-.035em;margin:24px 0;max-width:760px}
.boutique-page .shop-hero-copy h1 em{color:#f6d2af}
.boutique-page .shop-hero-copy>p:not(.eyebrow){max-width:330px;font-size:15px;line-height:1.8;color:#f5e3d4;margin:0 0 27px}
.boutique-page .shop-hero-copy .button{padding:13px 23px;font-size:13px;background:linear-gradient(120deg,#fff2df,#e6b899);color:#4a2a34;border-color:#ebc9aa}
.shop-hero-note{position:absolute;right:6%;bottom:28px;font-size:9px;letter-spacing:.18em;color:#f3dec8}
.boutique-page .visit-ribbon{padding:19px 7%;background:linear-gradient(110deg,#d8b396,#edd9c5 45%,#cbb3c3)}
.boutique-page .visit-ribbon>span:first-child{font-size:22px}
.boutique-page .intro{padding:72px 7% 65px;background:radial-gradient(ellipse at 0 0,#d9b2a96b,transparent 60%),#f2e5d8}
.boutique-page .intro h2{font-size:clamp(36px,4.2vw,60px);margin:19px 0 22px}
.boutique-page .intro>p:last-child{font-size:15px;max-width:640px;margin:auto;line-height:1.85}
.boutique-page .shop-tour{padding:58px 7% 72px;background:radial-gradient(ellipse at 95% 0,#c7acc480,transparent 60%),linear-gradient(135deg,#e7cbb4,#ecdad0);position:relative}
.boutique-page .tour-heading{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:32px}
.boutique-page .tour-heading h2{font-size:clamp(38px,4.4vw,64px);margin:17px 0}
.boutique-page .tour-heading>p:last-child{font-size:14px;color:#78565b;max-width:390px}
.boutique-page .tour-layout{display:flex;flex-direction:column;gap:25px;max-width:1050px;margin:auto}
.boutique-page .tour-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.boutique-page .tour-tabs button{font:20px/1.2 var(--serif);border:1px solid #a47b7440;background:#fff7ed40;border-radius:5px;padding:18px 15px;display:flex;justify-content:center;align-items:center;gap:12px;color:#6e4d54;transition:background .3s,color .3s,box-shadow .3s}
.boutique-page .tour-tabs button>span:first-child{font:9px/1 var(--sans);letter-spacing:.1em;opacity:.7}
.boutique-page .tour-tabs button>span:last-child{display:none}
.boutique-page .tour-tabs button[aria-selected="true"]{background:linear-gradient(110deg,#57313f,#95615c);color:#fff0d9;border-color:#815651;box-shadow:0 5px 15px #5a354621}
.boutique-page .tour-tabs button:hover{background:#c4a49d50}.boutique-page .tour-tabs button[aria-selected="true"]:hover{background:#75474f}
.boutique-page #tour-panel{position:relative}
.boutique-page .tour-image{height:500px;aspect-ratio:auto;border-radius:7px;overflow:hidden;box-shadow:0 16px 45px #5d3e3d26}
.boutique-page .tour-photo{object-position:50% 53%;transition:opacity .3s}
.boutique-page .tour-caption{position:relative;margin:-65px 30px 0 auto;width:66%;padding:25px 30px;display:block;background:linear-gradient(120deg,#fcf0e3f7,#edddd9f5);backdrop-filter:blur(12px);border:1px solid #fff7ecad;border-radius:5px;box-shadow:0 12px 35px #53314514}
.boutique-page .tour-caption h3{font-size:31px;max-width:none;color:#673f49}
.boutique-page .tour-caption p{font-size:13px;line-height:1.7;max-width:none;margin-top:10px;color:#7a6261}
.boutique-page .shop-feature{padding:70px 8%;gap:9%;background:radial-gradient(ellipse at 0 70%,#d8b2a54a,transparent 65%),#f3e7da;position:relative}
.boutique-page .shop-feature.reverse{background:radial-gradient(ellipse at 100% 50%,#baa0b262,transparent 65%),#e9d6c8}
.boutique-page .feature-photo,.boutique-page .shop-feature.reverse .feature-photo{border-radius:6px;aspect-ratio:1.05;box-shadow:0 18px 38px #68474622;overflow:hidden;position:relative;transform:none}
.boutique-page .feature-photo img{object-position:50% 56%;position:absolute;inset:0;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
@media(hover:hover){.boutique-page .feature-photo:hover img{transform:scale(1.035)}}
.boutique-page .feature-copy h2{font-size:clamp(38px,4.2vw,62px);margin:22px 0}
.boutique-page .feature-copy .eyebrow{font-size:10px;letter-spacing:.14em;color:#99695c}
.boutique-page .feature-copy>p:not(.eyebrow){font-size:14px;line-height:1.85;color:#78615f;max-width:410px}
.boutique-page .feature-copy>p+p{margin-top:14px}
.boutique-page .feature-copy .text-link{font-size:12px;margin-top:27px}
.boutique-page .team{padding:65px 8%;gap:7%;background:linear-gradient(120deg,#352633,#754d59);color:#f7e4cf}
.boutique-page .team-photo{border-radius:6px;aspect-ratio:1.3;position:relative;box-shadow:0 18px 30px #21172230}
.boutique-page .team-photo img{position:absolute;inset:0;object-position:50% 42%}
.boutique-page .team h2{font-size:clamp(38px,4.1vw,59px)}
.boutique-page .team .eyebrow{color:#deb79a;font-size:10px}.boutique-page .team>div>p:not(.eyebrow){font-size:14px;color:#dfc6bb;line-height:1.85}.boutique-page .team .text-link{font-size:12px;border-color:#eed6bb70}
.boutique-page .visit-section{margin-top:0}.boutique-page .visit-copy:before{border-radius:5px;inset:22px}
.boutique-page .visit-copy{padding:65px 10%}.boutique-page .visit-copy h2{font-size:clamp(45px,4.8vw,68px)}
.boutique-page .visit-photo{min-height:530px}.boutique-page .visit-photo img{object-position:50% 55%}
.boutique-page .faq-section{padding-top:65px;padding-bottom:65px}.boutique-page .faq-section h2{font-size:42px}
.shop-map{padding:55px 6% 38px;background:radial-gradient(ellipse at 0 100%,#cba4af70,transparent 60%),linear-gradient(110deg,#efe0d1,#e5cfc1)}
.map-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:26px}.map-heading .eyebrow{font-size:10px;letter-spacing:.13em}.map-heading h2{font-size:50px;margin-top:14px}.map-heading .text-link{font-size:12px}
.map-frame{height:400px;border:1px solid #fcf0e0;border-radius:7px;overflow:hidden;box-shadow:0 12px 35px #5a353821;background:#d6cbbd}.map-frame iframe{height:100%;width:100%;border:0;display:block}.map-foot{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#856662;margin-top:18px;letter-spacing:.03em}
@keyframes boutique-arrive{from{transform:scale(1.045);opacity:.5}to{transform:scale(1);opacity:1}}
@media(max-width:760px){
 .boutique-page .shop-hero{height:520px;min-height:0;max-height:none}
 .boutique-page .shop-hero-photo{height:100%;order:0}.boutique-page .shop-hero-photo img{object-position:58% 40%}
 .boutique-page .shop-hero:after{background:linear-gradient(0deg,#2b202df5 0%,#3b2936d9 26%,#3b29366e 57%,#30232705 92%)}
 .boutique-page .shop-hero-copy{padding:0 7% 43px;justify-content:flex-end;order:0}
 .boutique-page .shop-hero-copy .eyebrow{font-size:9px;letter-spacing:.13em}
 .boutique-page .shop-hero-copy h1{font-size:46px;line-height:1.04;letter-spacing:-.025em;margin:17px 0 16px;max-width:340px}
 .boutique-page .shop-hero-copy>p:not(.eyebrow){font-size:13px;line-height:1.75;max-width:290px;margin-bottom:20px}
 .boutique-page .shop-hero-copy .button{padding:12px 20px;font-size:12px;gap:24px}
 .shop-hero-note{display:none}
 .boutique-page .visit-ribbon{padding:16px 7%;gap:8px;flex-wrap:wrap}.boutique-page .visit-ribbon>span:first-child{font-size:18px;flex-basis:100%}.boutique-page .visit-ribbon>span:nth-child(2){display:block;font-size:10px}.boutique-page .visit-ribbon>a{font-size:10px;margin-left:auto}
 .boutique-page .intro{padding:45px 7% 42px}.boutique-page .intro .eyebrow{font-size:9px}.boutique-page .intro h2{font-size:35px;margin:18px 0}.boutique-page .intro>p:last-child{font-size:13px;line-height:1.8}.boutique-page .intro br{display:none}.boutique-page .intro h2 br{display:block}
 .boutique-page .shop-tour{padding:42px 6% 45px}.boutique-page .tour-heading{margin-bottom:23px}.boutique-page .tour-heading .eyebrow{font-size:9px}.boutique-page .tour-heading h2{font-size:37px;margin:16px 0}.boutique-page .tour-heading>p:last-child{font-size:12px;max-width:280px}
 .boutique-page .tour-layout{gap:18px}.boutique-page .tour-tabs{grid-template-columns:1fr 1fr;gap:8px}.boutique-page .tour-tabs button{font-size:19px;padding:15px 9px;gap:10px;border:1px solid #a47b7440}.boutique-page .tour-tabs button>span:first-child{font-size:8px}
 .boutique-page .tour-image{height:315px;border-radius:5px}.boutique-page .tour-caption{margin:-42px 12px 0;width:calc(100% - 24px);padding:20px 19px}.boutique-page .tour-caption h3{font-size:27px}.boutique-page .tour-caption p{font-size:12px;margin-top:8px}
 .boutique-page .shop-feature,.boutique-page .shop-feature.reverse{display:flex;flex-direction:column;padding:38px 7% 42px;gap:25px}
 .boutique-page .feature-photo,.boutique-page .shop-feature.reverse .feature-photo{width:100%;aspect-ratio:1.23;order:0;border-radius:5px}
 .boutique-page .feature-copy{width:100%;order:1}.boutique-page .feature-copy h2{font-size:38px;margin:15px 0 17px}.boutique-page .feature-copy .eyebrow{font-size:9px}.boutique-page .feature-copy>p:not(.eyebrow){font-size:13px;line-height:1.85}.boutique-page .feature-copy>p+p{margin-top:11px}.boutique-page .feature-copy .text-link{font-size:11px;margin-top:20px}
 .boutique-page .team{display:flex;flex-direction:column;padding:40px 7%;gap:27px}.boutique-page .team-photo{width:100%;aspect-ratio:1.3}.boutique-page .team h2{font-size:37px;margin:16px 0 20px}.boutique-page .team>div>p:not(.eyebrow){font-size:13px}.boutique-page .team .text-link{font-size:11px}
 .boutique-page .visit-photo{min-height:0;height:290px}.boutique-page .visit-copy{padding:42px 8%}.boutique-page .visit-copy:before{display:none}.boutique-page .visit-copy h2{font-size:47px}.boutique-page .visit-copy>p:not(.eyebrow){font-size:13px}.boutique-page .visit-details{margin:25px 0}.boutique-page .visit-copy .button{font-size:12px;padding:12px 20px;gap:20px}.boutique-page .visit-links{gap:18px}.boutique-page .visit-links .text-link{font-size:12px}.boutique-page .visit-phone{font-size:10px}
 .boutique-page .faq-section{padding:43px 7%}.boutique-page .faq-section h2{font-size:35px}
 .shop-map{padding:38px 6% 28px}.map-heading{display:block;margin-bottom:22px}.map-heading h2{font-size:39px;margin:13px 0 18px}.map-heading .eyebrow{font-size:8px}.map-heading .text-link{font-size:11px}.map-frame{height:320px;border-radius:5px}.map-foot{font-size:9px;gap:14px;line-height:1.7}.map-foot>span{max-width:50%}.map-foot>span:last-child{text-align:right}
 .library-bar h2{font-size:34px;max-width:220px}.library-bar{gap:15px}
}
@media(max-width:360px){.boutique-page .shop-hero-copy h1{font-size:41px}.boutique-page .tour-tabs button{font-size:17px}}
@media(prefers-reduced-motion:reduce){.boutique-page .shop-hero-photo img{animation:none}.boutique-page .feature-photo img,.boutique-page .tour-tabs button{transition:none}}
