/* YELI BOUTIQUE — VISION 5.4: the four approved visual references, implemented
 * as responsive, accessible web sections. The original portrait pixels are preserved.
 * This stylesheet only affects the customer-facing presentation. */
:root {
  --y54-ink:#652439;
  --y54-plum:#791f43;
  --y54-pink:#be4e73;
  --y54-dusty:#d78fa6;
  --y54-rose:#f6dfe3;
  --y54-peach:#ffece3;
  --y54-ivory:#fffaf5;
  --y54-shadow:0 18px 42px rgba(135,68,81,.105);
}
body {background:#fff8f4;color:var(--y54-ink)}
.v50-home.y54-home {max-width:none;padding:0 0 55px;background:linear-gradient(135deg,#fff8f4,#fffdfb 47%,#fff0ee);overflow:clip}
.y54-home h1,.y54-home h2,.y54-home h3 {font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.044em}
.y54-home h1 em,.y54-home h2 em,.y54-home h3 em {font-weight:400;color:#c65c7c}
.y54-home button,.y54-home a {touch-action:manipulation}
.y54-home button:focus-visible,.y54-home a:focus-visible {outline:3px solid #bc6384;outline-offset:3px}
.y54-overline {display:block;font:700 11px/1.65 system-ui,sans-serif;letter-spacing:.22em;color:#b35c77;text-transform:uppercase}
.y54-btn {display:inline-flex;align-items:center;justify-content:center;gap:14px;cursor:pointer;min-height:50px;max-width:100%;padding:12px 22px;border-radius:60px;border:1px solid #ad526e;background:#fff8f6;color:#762b47;text-decoration:none;font:700 14px/1.25 system-ui,sans-serif;box-shadow:0 6px 20px #904b6420;transition:transform .18s,filter .18s}
.y54-btn span:last-child{font-size:22px;font-weight:350;line-height:1}
.y54-btn:hover {transform:translateY(-2px);filter:saturate(1.1)}
.y54-btn-primary {background:linear-gradient(112deg,#a94266,#a84b68 47%,#c05979);color:#fff9fa;border:2px solid #f3d8dc;box-shadow:0 10px 25px rgba(152,64,93,.22)}
.y54-btn-outline {background:#fff9f4df;border-color:#ab4a68;color:#7d2b4a}
/* Header: keep all original controls operational, give them their approved visual balance. */
.v50-header {background:#fff9f4f5!important;box-shadow:0 6px 18px #a8697c13!important;min-height:82px;border-bottom:1px solid #f2d8df!important}
.v50-header .brand {color:#9f3155!important;font:400 41px/1 Georgia,serif;letter-spacing:.045em}
.v50-header .brand small {font:700 8px/1.1 system-ui,sans-serif;letter-spacing:.48em;color:#9a4f6c}
.v50-header .nav-right>.yeli-lang-control {background:#fff8f4;border:1px solid #ecc5d0;border-radius:60px;min-height:35px}
.v50-header .nav-right>.yeli-lang-control button.active {background:#a64467;color:#fff;border-radius:55px}
.v50-header .icon-btn {color:#732a49!important}
.v50-announcement {background:linear-gradient(90deg,#a05b71,#bd7e91)!important}
.v53-mobile-lang{display:none!important}
/* 1 — The first approved cover: living editorial pink with real Yeli portrait. */
.y54-hero {position:relative;isolation:isolate;min-height:690px;max-width:1450px;margin:0 auto;overflow:hidden;
 background:radial-gradient(ellipse at 95% 28%,rgba(240,176,183,.58),transparent 48%),linear-gradient(109deg,#fff9f2 7%,#ffe9e4 63%,#f6d8d5 100%)}
.y54-hero::before {content:"";position:absolute;inset:0;z-index:-1;background:url('assets/vision54-blush-bokeh.webp') center bottom/cover no-repeat;opacity:.14;filter:blur(1px)}
.y54-hero::after {content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:linear-gradient(90deg,rgba(255,251,245,.95) 0%,rgba(255,249,243,.82) 28%,rgba(255,249,242,.42) 45%,transparent 72%)}
.y54-hero-person {position:absolute;z-index:0;right:-4.3%;top:4%;height:105%;max-width:none;width:auto;object-fit:contain;object-position:bottom right;filter:saturate(1.04)}
.y54-hero-flower {position:absolute;z-index:0;pointer-events:none;border-radius:50%;filter:blur(40px)}
.y54-hero-flower-a {width:480px;height:300px;right:-10%;bottom:-110px;background:#e6a5ad75}
.v50-hero-copy.y54-hero-copy {position:relative;z-index:2;display:flex;flex-direction:column;align-items:start;justify-content:center;max-width:60%;min-height:665px;padding:60px 30px 60px clamp(35px,5.8vw,92px);pointer-events:none}
.y54-hero-copy >*{pointer-events:auto}
.y54-hero-copy .y54-overline {max-width:370px;margin-bottom:16px}
.y54-home .y54-hero h1 {font-size:clamp(57px,6.2vw,101px);line-height:.98;letter-spacing:-.065em;max-width:640px;margin:0 0 25px;color:#671d39;text-wrap:pretty;text-shadow:0 1px 12px #fff8f799}
.y54-home .y54-hero h1 em {display:inline;color:#c45a7b;font-style:italic}
.v50-hero-copy.y54-hero-copy >p {font-size:clamp(15px,1.38vw,19px);line-height:1.75;color:#8c6070;max-width:450px;margin:0 0 26px;text-wrap:pretty}
.y54-hero-actions {display:grid;gap:13px;width:min(100%,400px)}
.y54-hero-actions .y54-btn {justify-content:space-between;width:100%;padding-inline:24px;min-height:58px}
.y54-signature {font:italic 23px/1.35 cursive;color:#d18493;transform:rotate(-11deg);margin:26px 0 0 17px;opacity:.92}
.y54-signature i {font:italic 29px Georgia,serif}
.y54-hero-object {position:absolute;z-index:1;right:7%;bottom:22px;padding:18px 25px 15px;transform:rotate(-5deg);border-radius:17px;background:linear-gradient(130deg,#f7d9d4f0,#fff5efdc);box-shadow:12px 12px 30px #9c607634;border:1px solid #fff8f3;min-width:215px;text-align:center;color:#b67986}
.y54-hero-object span {display:block;font:31px Georgia,serif;letter-spacing:.16em}
.y54-hero-object small {display:block;font:700 8px system-ui;letter-spacing:.16em;margin-top:3px}
/* The three promises are inside the first-screen composition, like the approved mockup. */
.y54-promise {position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;max-width:1320px;margin:-5px auto 0;padding:22px 15px 20px;background:#fff8f5ee;border:3px double #f0beca;border-radius:26px;box-shadow:var(--y54-shadow)}
.y54-promise>div {display:flex;justify-content:center;align-items:center;gap:16px;padding:7px 14px;text-align:left;color:#7e3450;font:22px/1.32 Georgia,serif}
.y54-promise>div+div {border-left:1px solid #e5b8c4}
.y54-promise-icon {font:34px Georgia,serif;color:#cc7490}
/* 2 — The exact category rhythm: editorial title + 2x2 pink photo cards. */
.y54-category-section {position:relative;max-width:1180px;margin:0 auto;padding:94px clamp(20px,5vw,60px) 90px;background:radial-gradient(ellipse at 100% 12%,#f9dedb77,transparent 50%)}
.y54-section-head {max-width:870px;margin-bottom:31px}
.y54-section-head h2 {font-size:clamp(58px,6.2vw,94px);line-height:.98;letter-spacing:-.063em;color:#650c31;margin:13px 0 21px}
.y54-section-head p {font-size:clamp(17px,1.65vw,22px);line-height:1.42;color:#906879;max-width:670px;margin:0}
.y54-category-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px}
.y54-category-card {position:relative;display:block;border:1px solid #e8bac7;border-radius:26px;background:#f6d9d6;padding:0;aspect-ratio:1.14/1;overflow:hidden;box-shadow:0 15px 26px #a9687c20;cursor:pointer;text-align:left}
.y54-category-card>img {display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}
.y54-category-card:hover>img {transform:scale(1.055)}
.y54-category-card-title {position:absolute;inset:auto 0 0;min-height:76px;padding:12px 22px 12px 24px;display:flex;justify-content:space-between;align-items:center;gap:12px;color:#70223d;border-radius:23px 23px 0 0;background:#fff8f5eF;backdrop-filter:blur(8px);box-shadow:0 -2px 12px #7f435014}
.y54-category-card-title strong {font:400 clamp(27px,3vw,39px)/1 Georgia,serif;letter-spacing:-.05em}
.y54-category-card-title i {display:grid;place-items:center;flex:none;font:28px/1 Georgia,serif;font-style:normal;width:49px;height:49px;border-radius:100%;background:#fce5e7;color:#8a3152}
.y54-all-boutique {display:flex;justify-content:space-between;width:min(100%,430px);margin:38px auto 0;padding-inline:35px;min-height:59px}
/* 3 — Curated section uses the same approved real portrait and dynamic real inventory. */
.y54-curated {position:relative;max-width:1360px;margin:15px auto 90px;padding:15px 18px 30px;background:radial-gradient(ellipse at 99% 30%,#f3c6c466,transparent 50%),#fff8f4}
.y54-curated-head {position:relative;min-height:400px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:18px;overflow:hidden}
.y54-curated-heading {position:relative;z-index:2;padding:25px 20px 30px clamp(14px,4.5vw,70px)}
.y54-curated-heading h2 {font-size:clamp(60px,6.5vw,99px);line-height:.97;margin:12px 0 20px;color:#68223f}
.y54-curated-heading p {font-size:clamp(16px,1.45vw,21px);line-height:1.53;color:#8e6672;max-width:415px;margin:0}
.y54-curated-photo {position:relative;height:400px;overflow:hidden;border-radius:47% 47% 0 0 / 35% 35% 0 0;background:radial-gradient(ellipse at 55% 35%,#f8e6e2,#f2c9c4)}
.y54-curated-photo>img {width:100%;height:130%;object-fit:contain;object-position:center bottom;position:absolute;bottom:-23%;right:0}
.y54-curated-photo>span {position:absolute;right:8%;top:10%;font:italic 29px/1.2 Georgia,serif;color:#ba6b83;transform:rotate(-8deg);text-align:center}
.y54-curated-coming,.y54-curated-live {position:relative;padding:40px;display:grid;grid-template-columns:1fr .95fr;min-height:495px;gap:30px;border:3px double #e9b9c3;border-radius:33px;background:linear-gradient(113deg,#fff2f1ef,#fffaf5ef);box-shadow:var(--y54-shadow);overflow:hidden}
.y54-curated-copy {position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;gap:10px}
.y54-curated-copy h3,.y54-curated-live h3 {font-size:clamp(45px,5.2vw,72px);line-height:1.04;color:#6d2440;margin:13px 0}
.y54-curated-copy>p {color:#8f6975;font-size:clamp(16px,1.45vw,19px);line-height:1.55;margin:0 0 15px;max-width:460px}
.y54-curated-actions {display:grid;gap:12px;max-width:385px}
.y54-curated-actions .y54-btn {justify-content:space-between}
.y54-prelaunch-note {grid-column:1/-1;color:#a97b87;font-size:11px;margin-top:-18px;text-align:center}
.y54-polaroids {position:relative;min-height:405px}
.y54-polaroid {position:absolute;margin:0;padding:9px 9px 26px;background:#fffafa;border:1px solid #f0cbd0;box-shadow:0 16px 28px #944d6429;transform-origin:center;overflow:hidden}
.y54-polaroid img {width:100%;height:100%;display:block;object-fit:cover}
.y54-polaroid-1 {left:2%;top:1%;width:53%;height:54%;transform:rotate(-8deg)}
.y54-polaroid-2 {right:0;top:30%;width:52%;height:50%;transform:rotate(11deg)}
.y54-polaroid-3 {left:10%;bottom:-1%;width:45%;height:43%;transform:rotate(-4deg)}
.y54-polaroid-note {position:absolute;left:42%;top:46%;z-index:2;padding:18px 13px;background:#ffe2d6;transform:rotate(-12deg);font:italic 19px/1.4 Georgia,serif;color:#ca6f82;border:1px solid #ffece7;box-shadow:0 8px 15px #924f6322}
.y54-curated-live{display:block;padding:35px}
.y54-curated-live .v50-featured-grid{margin:25px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.y54-curated-promises{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:25px;align-items:center;text-align:center;color:#ae6180}
.y54-curated-promises>div{font-size:25px;padding:10px 8px;display:flex;align-items:center;justify-content:center;gap:11px}
.y54-curated-promises>div+div{border-left:1px solid #ebcbd0}
.y54-curated-promises span{font:700 10px/1.45 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.11em;color:#a35e75;text-align:left}
/* 4 — Concierge section visually matches the approved personal-chat mockup.
 * The preview below is explicitly illustrative; the real chat opens via the
 * existing help function, never a fabricated AI response or fake product listing. */
.y54-concierge {max-width:1310px;margin:0 auto 30px;padding:0 24px;background:linear-gradient(135deg,#fff3f1,#ffe8e3 80%)}
.y54-concierge-intro {min-height:400px;display:grid;grid-template-columns:1.05fr .95fr;position:relative;align-items:center;gap:20px}
.y54-concierge-heading {padding:60px 10px 30px 20px;z-index:2}
.y54-concierge-heading h2 {font-size:clamp(54px,5.7vw,83px);line-height:1.06;margin:13px 0 14px;color:#6b1d3b}
.y54-concierge-heading>p {font-size:clamp(16px,1.4vw,19px);line-height:1.54;color:#935a70;max-width:460px;margin-bottom:22px}
.y54-concierge-features {display:flex;gap:22px;color:#ba6483;max-width:475px;justify-content:space-between}
.y54-concierge-features>span {font:24px/1 Georgia,serif;text-align:center;flex:1}
.y54-concierge-features small {display:block;font:500 11px/1.4 system-ui,sans-serif;color:#92536c;margin-top:9px}
.y54-concierge-photo {position:relative;align-self:stretch;overflow:hidden;min-height:350px;background:radial-gradient(ellipse at 50% 20%,#fff9f3,#f3d5d3);border-radius:46% 46% 0 0/32% 32% 0 0}
.y54-concierge-photo img {position:absolute;bottom:-20%;height:130%;width:100%;object-fit:contain;object-position:center bottom}
.y54-chat-card {position:relative;z-index:3;margin:-8px 0 25px;padding:25px 28px;border:3px double #f1bdc9;border-radius:32px;background:#fffaf9ed;box-shadow:0 14px 44px #ae65792b;display:grid;gap:17px}
.y54-chat-label {font:750 10px system-ui,sans-serif;letter-spacing:.18em;color:#b46780}
.y54-chat-question {display:flex;align-items:center;gap:14px;margin:0 0 0 5%;max-width:80%;align-self:end}
.y54-chat-avatar {display:grid;place-items:center;border-radius:50%;height:49px;width:49px;background:#f5d7de;color:#a64969;font-size:24px;flex:none}
.y54-chat-question>span:last-child {padding:14px 20px;background:#fbe5e9;border-radius:22px 22px 22px 5px;color:#8b4e67;font-size:14px;line-height:1.6}
.y54-chat-answer {display:flex;gap:14px;align-items:flex-start;margin-left:13%;max-width:78%}
.y54-chat-answer>img {height:52px;width:52px;object-fit:cover;object-position:center 19%;border-radius:50%;border:2px solid #f4cbd5;background:#fff;flex:none}
.y54-chat-answer>div {border-radius:23px 23px 5px 23px;padding:17px 20px;background:white;box-shadow:0 4px 21px #a9617222}
.y54-chat-answer p {font-size:15px;line-height:1.55;color:#794058;margin:0}
.y54-chat-safe {font-size:10px;color:#a57c8c;margin-top:10px;display:block}
.y54-chat-suggest {display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.y54-chat-suggest button {border:1px solid #edbdc9;border-radius:50px;padding:10px 16px;background:#fff3f3;color:#973e5f;font-size:11px;cursor:pointer}
.y54-chat-cta {min-height:56px;width:100%;justify-content:center;font-size:16px}
.y54-whatsapp{font-size:12px;color:#994c68;text-align:center;text-underline-offset:3px}
/* A separate mirror teaser using real product inspiration, never fake try-on output. */
.y54-studio {max-width:1310px;margin:0 auto 75px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:25px;padding:35px;background:#fff1f0;border:3px double #f1c5cd;border-radius:32px}
.y54-studio-copy h2{font-size:clamp(44px,5vw,73px);color:#6c2943;line-height:1.06;margin:12px 0}
.y54-studio-copy p{font-size:15px;line-height:1.65;color:#91566e;max-width:475px}
.y54-studio-copy .y54-btn{margin-top:12px}
.y54-studio-gallery{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:1fr 1fr;gap:10px;height:310px}
.y54-studio-gallery img {width:100%;height:100%;object-fit:cover;border-radius:18px;border:4px solid #fffafa;box-shadow:0 4px 16px #ab697b22}
.y54-studio-gallery img:first-child {grid-row:1/3}
/* Responsive layout; never render the entire 4-screen mockup as one fake image. */
@media(max-width:900px){
  .y54-hero{min-height:640px}
  .v50-hero-copy.y54-hero-copy{min-height:630px;max-width:65%;padding-left:31px}
  .y54-home .y54-hero h1{font-size:clamp(52px,7vw,73px)}
  .y54-hero-person{height:100%;right:-11%}
  .y54-hero-object{display:none}
  .y54-curated-photo{height:340px}
  .y54-curated-head{min-height:340px}
}
@media(max-width:600px){
  .v50-announcement{display:none!important}
  .v50-header{min-height:72px;height:72px;padding:9px 11px;gap:4px;justify-content:space-between;display:flex;align-items:center}
  .v50-header .nav-left{display:flex;align-items:center;gap:5px;flex:0 0 auto}
  .v50-header .brand{position:static!important;left:auto!important;transform:none!important;font-size:31px!important;line-height:.9;text-align:center;letter-spacing:.035em!important}
  .v50-header .brand small{font-size:6px!important;letter-spacing:.31em!important;margin-top:5px!important}
  .v50-header .nav-right{display:flex;align-items:center;gap:5px;margin-left:auto}
  .v50-header .nav-right>.yeli-lang-control{display:flex!important;min-height:34px;height:34px;min-width:74px;margin:0 3px 0 0;padding:2px;border-radius:60px;gap:0}
  .v50-header .nav-right>.yeli-lang-control button{min-width:30px;padding:3px 6px;font-size:10px;border-radius:45px}
  .v50-header .nav-right>.yeli-lang-control span{font-size:10px}
  .v50-header .icon-btn{width:31px;height:34px;padding:4px}
  .v50-header .ic{width:21px;height:21px}
  .y54-home{background:#fffaf7}
  .y54-hero{min-height:665px;margin:0;background:radial-gradient(ellipse at 84% 50%,#efbdbe91,transparent 58%),linear-gradient(118deg,#fff8f3 8%,#ffebe8 68%,#f3cec9);}
  .y54-hero::after{background:linear-gradient(90deg,#fff8f3e9 0%,#fff8f3d9 22%,#fff8f3a6 44%,#fff8f333 70%,transparent 96%)}
  .y54-hero-person{height:73%;width:auto;right:-43%;top:18%;object-fit:contain;object-position:center bottom;filter:saturate(1.02)}
  .v50-hero-copy.y54-hero-copy{min-height:655px;max-width:77%;padding:55px 4px 50px 22px;justify-content:flex-start}
  .y54-hero-copy .y54-overline{font-size:10px;max-width:235px;margin-bottom:17px;letter-spacing:.21em}
  .y54-home .y54-hero h1{max-width:315px;font-size:clamp(43px,11.3vw,54px);line-height:1.02;letter-spacing:-.07em;margin:0 0 18px}
  .v50-hero-copy.y54-hero-copy >p{font-size:13px;line-height:1.58;max-width:225px;margin:0 0 18px;color:#834d60;text-shadow:0 1px #fff7}
  .y54-hero-actions{width:205px;gap:10px;margin-top:0}
  .y54-hero-actions .y54-btn{font-size:12px;min-height:52px;padding:9px 13px}
  .y54-signature{margin:18px 0 0 15px;font-size:19px}
  .y54-signature i{font-size:22px}
  .y54-promise{margin:-5px 12px 0;padding:17px 3px 15px;gap:0;border-radius:20px}
  .y54-promise>div{flex-direction:column;gap:4px;text-align:center;padding:7px 6px;font-size:12px;line-height:1.35;min-width:0}
  .y54-promise-icon{font-size:25px}
  .y54-category-section{padding:72px 16px 67px}
  .y54-overline{font-size:9px;letter-spacing:.18em}
  .y54-section-head{margin-bottom:24px}
  .y54-section-head h2{font-size:clamp(45px,12.5vw,58px);line-height:.96;margin:13px 0 20px}
  .y54-section-head p{font-size:15px;line-height:1.45}
  .y54-category-grid{gap:10px}
  .y54-category-card{border-radius:18px;aspect-ratio:1/1.03}
  .y54-category-card-title{border-radius:16px 16px 0 0;min-height:55px;padding:7px 11px 7px 12px;gap:5px}
  .y54-category-card-title strong{font-size:clamp(22px,6vw,30px)}
  .y54-category-card-title i{width:33px;height:33px;font-size:23px}
  .y54-all-boutique{margin-top:21px;min-height:50px;width:75%;font-size:13px}
  .y54-curated{margin:0 0 58px;padding:5px 14px 25px}
  .y54-curated-head{min-height:320px;grid-template-columns:1fr .88fr;gap:0}
  .y54-curated-heading{padding:23px 0 25px 5px}
  .y54-curated-heading h2{font-size:clamp(44px,11.4vw,56px);margin:12px 0 13px}
  .y54-curated-heading p{font-size:13px;line-height:1.43;max-width:225px}
  .y54-curated-photo{height:305px;border-radius:45% 45% 0 0 / 23% 23% 0 0}
  .y54-curated-photo img{height:125%;bottom:-16%;width:140%;left:-21%;object-fit:contain}
  .y54-curated-photo>span{font-size:17px;right:4%;top:10%}
  .y54-curated-coming,.y54-curated-live{padding:22px 18px 15px;min-height:0;grid-template-columns:1fr 1fr;gap:8px;border-radius:21px}
  .y54-curated-copy h3{font-size:clamp(35px,9.4vw,48px);margin:7px 0}
  .y54-curated-copy>p{font-size:12px;line-height:1.48;margin:0 0 7px}
  .y54-curated-copy .y54-overline{letter-spacing:.09em;font-size:8px}
  .y54-curated-actions{gap:7px}
  .y54-curated-actions .y54-btn{font-size:10px;min-height:40px;padding:8px 9px;gap:3px}
  .y54-curated-actions .y54-btn span:last-child{font-size:15px}
  .y54-polaroids{min-height:335px;margin-right:-15px}
  .y54-polaroid{padding:5px 5px 13px}
  .y54-polaroid-1{width:65%;height:42%;top:0;left:-2%}
  .y54-polaroid-2{width:69%;height:39%;top:30%;right:0}
  .y54-polaroid-3{width:65%;height:37%;bottom:0;left:0}
  .y54-polaroid-note{top:49%;left:-4%;padding:10px 6px;font-size:13px}
  .y54-prelaunch-note{font-size:9px;line-height:1.45;margin-top:7px}
  .y54-curated-live .v50-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .y54-curated-promises{margin-top:14px}
  .y54-curated-promises>div{font-size:21px;gap:5px;padding:8px 3px}
  .y54-curated-promises span{font-size:8px;letter-spacing:.03em}
  .y54-concierge{padding:0 13px;margin-bottom:23px}
  .y54-concierge-intro{min-height:285px;grid-template-columns:1.08fr .92fr;gap:0}
  .y54-concierge-heading{padding:24px 0 12px 5px}
  .y54-concierge-heading h2{font-size:clamp(40px,10.8vw,58px);margin:10px 0}
  .y54-concierge-heading>p{font-size:12px;line-height:1.48;margin-bottom:15px}
  .y54-concierge-features{gap:4px}
  .y54-concierge-features>span{font-size:20px}
  .y54-concierge-features small{font-size:8px;margin-top:5px}
  .y54-concierge-photo{min-height:270px}
  .y54-concierge-photo img{width:160%;height:125%;left:-30%;bottom:-16%}
  .y54-chat-card{padding:17px 13px;border-radius:21px;gap:11px}
  .y54-chat-label{font-size:8px}
  .y54-chat-question{max-width:96%;gap:7px;margin-left:0}
  .y54-chat-avatar{width:35px;height:35px;font-size:17px}
  .y54-chat-question>span:last-child{font-size:11px;padding:10px 12px;line-height:1.45}
  .y54-chat-answer{max-width:98%;margin-left:0;gap:8px}
  .y54-chat-answer>img{width:40px;height:40px}
  .y54-chat-answer>div{padding:11px 13px}
  .y54-chat-answer p{font-size:12px;line-height:1.55}
  .y54-chat-safe{font-size:8px}
  .y54-chat-suggest{gap:5px}
  .y54-chat-suggest button{font-size:10px;padding:8px 10px}
  .y54-chat-cta{min-height:49px;font-size:12px}
  .y54-studio{padding:19px 14px;margin:20px 13px 60px;grid-template-columns:1.15fr .85fr;gap:11px;border-radius:21px}
  .y54-studio-copy h2{font-size:clamp(33px,8.3vw,46px)}
  .y54-studio-copy p{font-size:11px;line-height:1.5}
  .y54-studio-copy .y54-btn{padding:9px 10px;min-height:39px;font-size:10px;gap:6px}
  .y54-studio-gallery{height:230px;gap:5px}
  .y54-studio-gallery img{border-width:2px;border-radius:11px}
  .yeli-help-launcher{bottom:calc(80px + env(safe-area-inset-bottom))}
}
@media(max-width:375px){
  .v50-header .brand{font-size:27px!important}
  .v50-header .nav-right{gap:2px}
  .v50-header .nav-right>.yeli-lang-control{min-width:67px;margin:0}
  .v50-header .nav-right>.yeli-lang-control button{min-width:26px;padding:2px 4px;font-size:9px}
  .y54-hero{min-height:625px}
  .v50-hero-copy.y54-hero-copy{min-height:625px;padding-left:16px}
  .y54-home .y54-hero h1{font-size:41px}
  .y54-hero-person{right:-45%}
  .y54-hero-actions{width:186px}
  .y54-curated-heading h2{font-size:42px}
  .y54-curated-copy h3{font-size:32px}
}
@media(prefers-reduced-motion:reduce){.y54-btn,.y54-category-card img{transition:none!important}}

/* Floral tabletop detail from the original approved art direction. */
.y54-hero-stilllife{position:absolute;z-index:2;right:0;bottom:0;width:clamp(130px,16vw,230px);height:340px;object-fit:cover;object-position:bottom right;pointer-events:none;opacity:.85;filter:saturate(1.05)}
@media(max-width:900px){.y54-hero-stilllife{height:245px;width:155px}}
@media(max-width:600px){.y54-hero-stilllife{right:-4px;bottom:1px;height:205px;width:112px;opacity:.86}.y54-hero-object{display:block!important;right:12px;bottom:9px;min-width:96px;padding:8px 9px;border-radius:9px;transform:rotate(-3deg);opacity:.88}.y54-hero-object span{font-size:16px}.y54-hero-object small{font-size:5px}}
/* Avoid hard photographic cut lines in the small floral foreground. */
.y54-hero-stilllife{
  -webkit-mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.18) 24%,black 82%);
  mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.18) 24%,black 82%);
}
/* Center the mobile wordmark as in the approved design while giving ES/EN its own space. */
@media(max-width:600px){
  .v50-header .brand {position:absolute!important;left:47%!important;transform:translateX(-50%)!important;white-space:nowrap}
}

.y54-studio-ai-link{display:block;max-width:max-content;margin-top:14px;color:#965572;font-size:11px;text-decoration:underline;text-underline-offset:4px}
