@font-face{font-family:Fredoka;src:url("assets/fonts/fredoka.ttf") format("truetype");font-weight:300 700;font-display:swap}
@font-face{font-family:DynaPuff;src:url("assets/fonts/dynapuff.ttf") format("truetype");font-weight:400 700;font-display:swap}
@font-face{font-family:Nunito;src:url("assets/fonts/nunito.ttf") format("truetype");font-weight:200 1000;font-display:swap}
:root{--berry:#a01862;--pink:#ed4799;--mauve:#a775d4;--purple:#7850a7;--body:"Nunito","Trebuchet MS",sans-serif;--display:"Fredoka","Arial Rounded MT Bold",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--berry);font-family:var(--body);background:#fac5da;font-size:16px;overflow-x:clip}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button,a,select,input{touch-action:manipulation}button{color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible,.gallery:focus-visible{outline:3px solid #71439b;outline-offset:5px}input:focus,select:focus{outline:2px solid #ae78d4;outline-offset:1px}.svg-definitions{position:absolute;width:0;height:0;overflow:hidden}.skip-link{position:fixed;top:8px;left:8px;z-index:20;padding:12px 18px;background:#fff;border-radius:20px;transform:translateY(-160%)}.skip-link:focus{transform:none}
.stage{position:relative;isolation:isolate;overflow:clip}.fur-layer{position:absolute;z-index:-2;inset:0;background:url("assets/fourrure.webp") center/cover no-repeat}.stage:after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 48%,#fff7fb61,transparent 70%);pointer-events:none}
.glass{position:relative;isolation:isolate;border:2px solid #fff9;box-shadow:inset 0 2px 7px #fffffff0,inset 0 -4px 9px #de8ad244,0 9px 22px #c2538833,0 0 1px 2px #f29bc755;background:linear-gradient(130deg,#fff9 0%,#fff4 38%,#fed5e677 72%,#d5c9fc66 100%);backdrop-filter:blur(13px) saturate(125%);-webkit-backdrop-filter:blur(13px) saturate(125%)}
.glass:before{content:"";position:absolute;inset:4px;border-radius:inherit;border-top:1px solid #fffe;border-left:1px solid #ffffff80;pointer-events:none;z-index:2}
.capsule{border-radius:999px;background:linear-gradient(180deg,#f4dbffa1 0%,#dcb8f0b3 28%,#b489d8c7 62%,#ca9ee6c4 89%,#efdcfabf 100%);border-color:#ffffffe0;box-shadow:inset 0 4px 7px #fff9,inset 0 -4px 9px #8e4dba44,0 6px 13px #a45db644,0 0 0 2px #dcadd633;color:white;text-shadow:0 1px 3px #86559b;overflow:hidden}
.capsule:after{content:"";position:absolute;inset:5px 10px 48%;border-radius:80px;background:linear-gradient(115deg,#fff8,transparent 48%,#ffdfe959 80%,#daf8ff70);pointer-events:none;z-index:-1}
.capsule:hover{filter:brightness(1.065)}.capsule:active{transform:translateY(2px)}
.outlined{font-family:var(--display);font-weight:600;color:#ae2469;-webkit-text-stroke:5px #fff5fa;paint-order:stroke fill;text-shadow:0 3px 2px #e291b9,0 5px 12px #fff9;line-height:1.3}
.hero{min-height:900px;padding:32px 0 180px}.hero-inner{max-width:1540px;margin:auto;padding:0 45px}.navigation{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:5;gap:16px}.navigation .capsule{display:flex;gap:12px;align-items:center;justify-content:center;padding:12px 26px;font-weight:900;font-size:21px;white-space:nowrap;min-height:54px}.navigation svg{width:25px;height:25px;color:#fff0fb;filter:drop-shadow(0 1px 1px #ac5b9d)}.nav-right{display:flex;gap:24px}
.hero-heading{position:relative;text-align:center;margin:-30px auto 0;pointer-events:none}.brand-logo{width:min(760px,60vw);margin:0 auto;filter:drop-shadow(0 8px 9px #ba498148)}.hero h1{font-size:clamp(29px,3.05vw,50px);margin:-2px auto 0;max-width:1210px;letter-spacing:-.8px}
.profile{position:absolute;right:max(34px,calc((100vw - 1460px)/2));top:125px;width:200px;padding:0;background:transparent;z-index:3;filter:drop-shadow(0 7px 9px #8d3d7c33)}.profile>img{width:100%}.availability{position:absolute;bottom:0;right:-4px;display:flex;align-items:center;gap:8px;font-size:19px;font-weight:900;padding:6px 14px;white-space:nowrap}.status-light{width:16px;height:16px;border:2px solid #ecffe7;border-radius:50%;background:#35ef43;box-shadow:0 0 8px #53ff67;animation:blink 1.7s ease-in-out infinite}@keyframes blink{0%,100%{opacity:1;box-shadow:0 0 9px #57ff55}50%{opacity:.3;box-shadow:0 0 1px #57ff55}}
.occasions{display:flex;justify-content:center;gap:clamp(25px,5vw,84px);align-items:center;padding:0;margin:22px auto 9px;list-style:none;font-size:21px;font-weight:900}.occasions li{display:flex;align-items:center;gap:10px;white-space:nowrap}.occasion-icon{font-size:37px;line-height:1.2;filter:drop-shadow(0 3px 2px #b9447955)}.star-emoji{color:#f23f94;-webkit-text-stroke:1px #b2156a;text-shadow:0 1px #fff,1px 2px 3px #f898c4;font-size:46px}
.gallery-shell{position:relative;max-width:1250px;margin:0 auto;padding:0 70px}.gallery{display:flex;overflow-x:auto;overflow-y:hidden;gap:20px;scroll-snap-type:x mandatory;scrollbar-width:none;padding:28px 10px 32px;perspective:1000px;scroll-behavior:smooth;touch-action:pan-x pan-y}.gallery::-webkit-scrollbar{display:none}.photo-card{position:relative;flex:0 0 calc((100% - 80px)/5);aspect-ratio:1/1;min-width:0;padding:4px;border:2px solid #fffa;border-radius:24px;background:linear-gradient(130deg,#fff8,#eb8ebe7d,#dcb7fbab);box-shadow:inset 0 1px 5px #fffffff0,0 9px 0 -3px #e58ab947,0 16px 16px -6px #b9407859;transform:rotate(var(--angle,-3deg)) translateZ(0);scroll-snap-align:center;transition:transform .35s ease,box-shadow .35s ease;overflow:hidden}
.photo-card:nth-child(2n){--angle:3deg}.photo-card:nth-child(3n){--angle:-1deg}.photo-card.featured{transform:rotate(-1deg) scale(1.07);z-index:1;box-shadow:inset 0 1px 5px #fff,0 10px 0 -3px #e58ab944,0 18px 20px -6px #b9407877}.photo-card:hover{transform:rotate(0deg) scale(1.065);z-index:2}.photo-card img{width:100%;height:100%;object-fit:cover;border-radius:19px;pointer-events:none}.photo-card:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 2px 2px 5px #fffa,inset -2px -4px 6px #cf91b533;pointer-events:none}.gallery-arrow{position:absolute;top:50%;margin-top:-33px;width:64px;height:64px;display:grid;place-items:center;z-index:3}.gallery-arrow svg{width:37px;height:37px;stroke-width:4}.previous{left:0}.previous svg{transform:rotate(180deg)}.next{right:0}
.gallery-dots{display:flex;justify-content:center;gap:10px;margin:-2px 0 22px}.gallery-dots button{width:11px;height:11px;padding:0;border-radius:50%;background:#db79a6a1;transition:background .2s,transform .2s}.gallery-dots button[aria-current="true"]{background:#f03790;transform:scale(1.2)}
.benefits{border:0;border-radius:65px;display:grid;grid-template-columns:1.12fr 1fr 1.15fr 1fr;align-items:center;padding:20px 22px;max-width:1390px;margin:auto;background:linear-gradient(120deg,#fff9,#ffe5eea8,#ffffff99);box-shadow:0 9px 24px #eaa3c03d;gap:0}.benefit{display:flex;gap:14px;padding:0 17px;align-items:center;min-width:0;border-right:1px solid #e586b29c;min-height:78px}.benefit:last-child{border:0}.benefit>img{flex:0 0 73px;width:73px;height:78px;object-fit:contain;filter:drop-shadow(0 3px 3px #bb448c26)}.benefit strong{font-size:17px;font-weight:900;line-height:1.28;display:block}.benefit p{font-size:14px;line-height:1.32;margin-top:5px;color:#ad3371;font-weight:600}

.sparkles{pointer-events:none;position:absolute;inset:0;z-index:-1}.sparkles i{position:absolute;background:#fff;clip-path:polygon(50% 0,58% 38%,100% 50%,58% 58%,50% 100%,42% 58%,0 50%,42% 38%);width:25px;height:48px;filter:drop-shadow(0 0 9px white);opacity:.9}.sparkles i:nth-child(1){left:18%;top:21%}.sparkles i:nth-child(2){left:76%;top:30%;width:22px;height:58px}.sparkles i:nth-child(3){left:14%;top:66%}.sparkles i:nth-child(4){right:12%;top:65%;width:16px;height:28px}.sparkles i:nth-child(5){left:60%;top:11%;width:18px;height:38px}.sparkles i:nth-child(6){left:36%;top:43%;width:14px;height:20px}
.offers-stage{min-height:100svh;padding:170px 40px 22px}.offers-stage .fur-layer{background-position:center 30%}.offers-layout{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(350px,1fr);grid-template-rows:auto 1fr;gap:20px 28px;max-width:1480px;margin:auto}.offers-heading{grid-column:1;grid-row:1;text-align:center;padding:0 20px}.offers-heading>img{width:min(550px,85%);margin:auto}.offers-heading h2{font-size:27px;margin-top:-5px}.offers-grid{grid-column:1;grid-row:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;margin:74px 0 47px;align-items:stretch}
.offer{border-radius:34px;border:3px solid #f5eaff;padding:18px 16px 64px;background:linear-gradient(130deg,#efe0f3b8,#ffdbe68c 53%,#dfb8edab);box-shadow:inset 0 0 0 4px #b387d691,inset 0 0 0 6px #fbebffb0,inset 0 -5px 16px #c891d44d,0 10px 22px #a763a937;display:flex;flex-direction:column;min-width:0}
.offer-heading{position:absolute;top:-29px;left:20px;right:20px;text-align:center;padding:12px 8px 14px;border-width:2px}.offer-heading h3{font-family:var(--display);font-size:30px;font-weight:500;line-height:1.14}.offer-heading p{font-size:18px;font-weight:900;margin-top:5px}.offer-photo{width:100%;height:240px;object-fit:cover;object-position:center;border-radius:26px;border:2px solid #fff;box-shadow:0 4px 9px #ba6a9a33}.offer:first-child .offer-photo{object-position:48% center}
.offer-features{list-style:none;padding:0 3px;margin:20px 0 22px;display:flex;flex-direction:column;gap:10px;min-height:167px;font-weight:800;font-size:15px;line-height:1.25}.offer-features li{display:flex;align-items:center;gap:8px;flex-wrap:wrap;row-gap:3px}.offer-features li>span:not(.check){font-weight:600}.check{background:linear-gradient(150deg,#e6c5ff,#9a60c7);color:white;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid #ffeaff;border-radius:50%;box-shadow:0 2px 2px #a156a322}.check svg{width:16px;height:16px;stroke-width:3}.offer-features .feature-note{padding-left:28px;font-size:13px;color:#794a8d;margin-top:-6px;font-weight:700}
.offer-meta{margin-top:auto;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;font-weight:700;font-size:15px;padding:0 3px;align-items:center}.offer-meta>span{display:flex;align-items:center;gap:5px}.offer-meta svg{width:23px;height:23px;color:#b23983}.price{position:absolute;bottom:-38px;left:50%;transform:translateX(-50%);min-width:190px;min-height:92px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 30px 12px;box-shadow:inset 0 5px 9px #fff9,inset 0 -5px 10px #9457b74d,0 8px 16px #a56ac342,0 0 0 3px #efcbed77}.price:active{transform:translateX(-50%) translateY(2px)}.price>strong{font-family:var(--display);font-size:45px;font-weight:600;line-height:1.1;filter:drop-shadow(0 3px 1px #9e54935e)}.price>strong>span{font-size:33px;margin-left:3px}.price>span{font-weight:900;font-size:16px;margin-top:4px}
.booking{grid-column:2;grid-row:1/3;border-radius:32px;padding:23px 19px 16px;align-self:start;background:linear-gradient(130deg,#fff4f9d1,#ffd4e3bb 66%,#eedcf5bd);border:3px solid #fff3f9;box-shadow:inset 0 2px 10px #fff,inset 0 -2px 12px #e395c351,0 12px 25px #b4538b38;scroll-margin-top:25px}.booking-heading{display:flex;align-items:center;gap:10px;margin-bottom:18px}.booking-heading h2{font-family:var(--display);font-size:24px;line-height:1.28;font-weight:500;color:#bd246e}.booking-heading p{font-size:14px;margin-top:6px}.round-icon{width:44px;height:44px;border:1px solid #fff8;border-radius:50%;background:linear-gradient(145deg,#fff8,#f6afcf85);box-shadow:inset 0 2px 5px #fffa,0 2px 3px #ca78a030;color:#d33388;display:grid;place-items:center;flex-shrink:0}.round-icon svg{width:25px;height:25px}
.form-section{display:flex;gap:10px;margin-top:10px;align-items:flex-start}.form-section>.round-icon{margin-top:16px;width:43px;height:43px}.field-stack{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}label{font-size:13px;font-weight:900;line-height:1.35}label>span{color:#d3418c}input,select{width:100%;min-width:0;border:1px solid #f4bad2a1;border-radius:12px;background:#fff7faad;color:#a32a69;padding:8px 11px;font-size:14px;min-height:36px;box-shadow:0 2px 3px #db86ab16;accent-color:#a275cf}input::placeholder{color:#aa5177;opacity:.88}select{padding-right:23px}input[type=date],input[type=time]{min-height:36px}input[type=date]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator{opacity:.7}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.quantity{display:flex;align-items:center;gap:6px}.quantity button{width:38px;height:36px;padding:0;border-radius:10px;background:linear-gradient(#f8d3e7,#efafd0);font-size:26px;font-weight:700;border:1px solid #ffffffa3}.quantity button:disabled{opacity:.45;cursor:default}.quantity input{width:65px;text-align:center;font-weight:800;appearance:textfield;-moz-appearance:textfield}.quantity input::-webkit-inner-spin-button,.quantity input::-webkit-outer-spin-button{appearance:none;margin:0}.quantity>span{font-size:11px;white-space:nowrap;color:#ab577e;margin-left:3px}.booking-total{display:flex;align-items:center;justify-content:space-between;margin:15px 0 10px;padding-left:53px;font-size:13px;font-weight:800}.booking-total output{font-size:20px;color:#8656a8;font-weight:900}.submit-button{width:100%;display:flex;align-items:center;justify-content:center;gap:9px;padding:11px;font-size:19px;font-weight:900;background:linear-gradient(180deg,#fbdbefbb,#ee88bcbf 39%,#e94d9da6 78%,#ffc9e3b3);text-shadow:0 1px 3px #b237795e;box-shadow:inset 0 3px 6px #fff9,inset 0 -4px 5px #d9317f33,0 5px 10px #cc579748}.submit-button svg:last-child{width:19px}.form-footnote{font-size:10px;text-align:center;margin-top:10px;color:#a1557a;line-height:1.4}
footer{max-width:1480px;margin:22px auto 0;display:flex;justify-content:center;gap:24px;font-size:12px;font-weight:700;flex-wrap:wrap}footer button{font:inherit;background:transparent;padding:0}footer a:hover,footer button:hover{text-decoration:underline}
dialog{color:var(--berry);font-family:var(--body);margin:auto;border-radius:32px;max-height:90svh;max-width:calc(100vw - 32px);overflow-y:auto;padding:36px;box-shadow:0 25px 90px #5626475e}.glass[open]{position:fixed;background:linear-gradient(135deg,#fff0f6f5,#f9deedee 65%,#ead7f6f5)}dialog::backdrop{background:#54274280;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.dialog-close{position:absolute;right:14px;top:14px;z-index:5;width:38px;height:38px;font-size:28px;line-height:1;display:grid;place-items:center;padding:0}.about-dialog{width:650px;padding:38px 44px;font-size:16px;line-height:1.65}.about-avatar{width:130px;margin:0 auto 16px;filter:drop-shadow(0 5px 4px #bd78ba3d)}.small-title{display:block;text-align:center;font-size:12px;font-weight:900;letter-spacing:.6px;color:#915dab}.about-dialog h2{font-family:var(--display);font-size:27px;text-align:center;margin:8px 0 22px;line-height:1.3;font-weight:500}.about-dialog p{margin-top:13px}.signature strong{font-family:var(--display);font-weight:500;font-size:21px}.about-cta{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:23px;padding:12px 22px;font-size:16px;font-weight:900;width:100%}
.lightbox{padding:16px 16px 20px;width:min(720px,90vw);text-align:center}.lightbox>img{width:100%;max-height:68svh;object-fit:contain;border-radius:22px}.lightbox>p{font-weight:800;font-size:15px;margin-top:12px}.lightbox-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:12px;font-size:13px}.lightbox-controls button{width:45px;height:34px;font-size:21px}.request-dialog{width:570px;padding:34px}.request-dialog>.round-icon{margin:0 auto 12px}.request-dialog h2{text-align:center;font-family:var(--display);font-weight:500;font-size:24px}.request-state{background:#efd9fa;border:1px solid #ccacd9;border-radius:16px;padding:13px;margin-top:18px;color:#734891;font-size:14px;line-height:1.5}.request-dialog pre{font-family:var(--body);white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.7;margin:20px 0 0}.request-dialog #copy-state{text-align:center;font-size:13px;margin-top:12px;min-height:18px}.noscript-note{padding:15px;background:#fff9;text-align:center}
@media(min-width:1600px){.hero{padding-top:40px;min-height:960px}.hero-heading{margin-top:-28px}.brand-logo{width:810px}.gallery-shell{max-width:1320px}.gallery{padding-top:34px;padding-bottom:37px}.hero h1{font-size:49px}.occasions{margin-top:23px}.benefits{margin-top:8px;padding-top:24px;padding-bottom:24px}.profile{top:140px;width:225px}}
@media(max-width:1200px) and (min-width:701px){.hero-inner{padding:0 28px}.navigation .capsule{font-size:18px;padding:11px 21px}.profile{width:164px;top:126px;right:25px}.availability{font-size:15px;padding:5px 10px}.brand-logo{width:640px;max-width:64vw}.hero-heading{margin-top:0}.hero h1{font-size:34px}.occasions{font-size:18px;gap:35px}.gallery-shell{padding:0 57px}.gallery{gap:15px}.photo-card{flex-basis:calc((100% - 60px)/5)}.gallery-arrow{width:50px;height:50px;margin-top:-25px}.gallery-arrow svg{width:30px;height:30px}.benefits{padding:16px 10px}.benefit{padding:0 10px;gap:8px}.benefit>img{width:58px;flex-basis:58px;height:62px}.benefit strong{font-size:14px}.benefit p{font-size:12px}.hero{min-height:860px;padding-bottom:180px}.offers-stage{padding:170px 28px 20px}.offers-layout{grid-template-columns:minmax(0,1.65fr) minmax(330px,1fr);gap:20px}.offers-grid{gap:18px}.offer{padding:18px 12px 65px}.offer-heading{left:10px;right:10px}.offer-heading h3{font-size:25px}.offer-heading p{font-size:15px}.offer-photo{height:200px}.offer-features{font-size:13px}.offer-meta{font-size:12px}.offer-meta svg{width:21px;height:21px}.offers-heading h2{font-size:24px}.booking{padding:20px 13px 15px}.booking-heading h2{font-size:22px}}
@media(max-width:1050px){.offers-layout{grid-template-columns:1fr;gap:24px}.offers-heading{grid-column:1;grid-row:1}.offers-heading>img{width:470px}.offers-grid{grid-column:1;grid-row:2;max-width:820px;width:100%;margin:74px auto 55px;gap:26px}.booking{grid-column:1;grid-row:3;width:100%;max-width:640px;justify-self:center;padding:26px}.offer-photo{height:255px}.offer-features{font-size:16px}.offer-meta{font-size:15px}.booking-heading h2{font-size:27px}.booking label{font-size:15px}.booking input,.booking select{min-height:42px;font-size:16px}.form-section{margin-top:14px;gap:13px}.form-section>.round-icon{margin-top:23px}.booking-total{padding-left:56px}.offers-stage{padding-bottom:25px}}
@media(max-width:700px){html{scroll-padding-top:16px}.hero{min-height:auto;padding:22px 0 155px}.hero-inner{padding:0 14px}.navigation{gap:8px}.nav-right{gap:8px;display:contents}.navigation .capsule{font-size:13px;padding:9px 12px;min-height:39px;gap:5px;border-width:1.5px}.navigation svg{width:17px;height:17px}.hero-heading{margin:23px auto 0}.brand-logo{width:100%;max-width:510px}.hero h1{font-size:clamp(24px,6.5vw,34px);max-width:520px;margin:4px auto 0;letter-spacing:-.3px;line-height:1.4;-webkit-text-stroke:5px #fff5fa}.profile{position:relative;top:auto;right:auto;width:132px;margin:17px auto 0;display:block}.availability{font-size:13px;padding:4px 10px;gap:5px;right:-14px;bottom:-3px}.status-light{width:13px;height:13px}.occasions{display:grid;grid-template-columns:repeat(2,max-content);justify-content:center;gap:10px 22px;font-size:16px;margin:27px auto 10px}.occasions li{gap:7px}.occasion-icon{font-size:29px}.star-emoji{font-size:36px}.gallery-shell{margin:0 -14px;padding:0}.gallery{gap:19px;padding:28px 55px 34px;scroll-padding:55px}.photo-card{flex:0 0 64vw;max-width:300px;border-radius:25px}.photo-card img{border-radius:20px}.gallery-arrow{width:37px;height:45px;margin-top:-25px;border-radius:20px;border-width:1.5px;opacity:.95}.gallery-arrow svg{width:23px;height:23px;stroke-width:3}.previous{left:8px}.next{right:8px}.gallery-dots{margin:0 0 23px;gap:11px}.gallery-dots button{width:9px;height:9px}.benefits{grid-template-columns:1fr 1fr;border-radius:28px;padding:15px 5px;gap:14px 0;margin:0 auto;max-width:510px}.benefit{align-items:flex-start;padding:0 9px;gap:7px;min-height:76px}.benefit:nth-child(2){border:0}.benefit>img{width:45px;flex-basis:45px;height:52px}.benefit strong{font-size:12px;line-height:1.35}.benefit p{font-size:10px;line-height:1.35;margin-top:3px}.sparkles i:nth-child(1){left:5%;top:20%}.sparkles i:nth-child(2){right:8%;left:auto;top:38%}.offers-stage{padding:148px 18px 22px}.offers-layout{gap:12px}.offers-heading{padding:0}.offers-heading>img{width:min(350px,90%)}.offers-heading h2{font-size:23px;line-height:1.5;-webkit-text-stroke:5px #fff5fa}.offers-grid{grid-template-columns:1fr;gap:88px;max-width:430px;margin-top:74px;margin-bottom:64px}.offer{padding:18px 16px 64px;border-radius:32px}.offer-heading{left:24px;right:24px;top:-32px;padding-top:12px;padding-bottom:14px}.offer-heading h3{font-size:30px}.offer-heading p{font-size:18px}.offer-photo{height:255px;border-radius:24px}.offer-features{font-size:15px;min-height:0;margin:20px 0 26px;gap:10px}.offer-meta{font-size:14px}.offer-features .feature-note{font-size:12px}.offer-meta svg{width:22px;height:22px}.price{min-width:180px;min-height:90px}.price>strong{font-size:44px}.booking{padding:23px 14px 17px;border-radius:29px}.booking-heading{gap:9px;margin-bottom:18px}.booking-heading h2{font-size:22px}.booking-heading p{font-size:13px}.round-icon{width:40px;height:40px}.form-section{gap:9px;margin-top:12px}.form-section>.round-icon{width:35px;height:35px;margin-top:23px}.round-icon svg{width:22px;height:22px}.booking label{font-size:13px}.field-row{gap:6px}.booking input,.booking select{padding:9px 8px;font-size:16px;min-height:42px;border-radius:11px}.quantity button{height:40px;width:35px}.quantity input{width:62px}.quantity>span{font-size:10px;margin-left:0}.booking-total{padding-left:44px}.submit-button{font-size:17px;padding:12px 8px}.submit-button svg{width:22px;height:22px}.form-footnote{font-size:10px}footer{font-size:11px;gap:12px 20px;margin-top:28px}footer>span{flex-basis:100%;text-align:center}.about-dialog{padding:36px 22px 25px;font-size:15px;line-height:1.6}.about-dialog h2{font-size:24px}.small-title{font-size:10px}.about-avatar{width:120px}.request-dialog{padding:32px 22px}.request-dialog h2{font-size:22px}}
@media(max-width:360px){.navigation .capsule{font-size:12px;padding:8px 9px}.navigation svg{width:15px;height:15px}.occasions{gap:8px 17px;font-size:15px}.benefit{gap:5px;padding:0 7px}.benefit>img{width:37px;flex-basis:37px}.benefit strong{font-size:11px}.benefit p{font-size:9px}.booking-heading h2{font-size:20px}.offer-meta{font-size:12px}.offer-photo{height:230px}.quantity>span{font-size:9px}.form-section{gap:6px}.form-section>.round-icon{width:30px;height:30px}.round-icon svg{width:20px;height:20px}}
@media(prefers-reduced-motion:reduce){html,.gallery{scroll-behavior:auto}.status-light{animation:none}.photo-card,.gallery-dots button{transition:none}}

/* Final visual refinements */
.occasions img.occasion-icon{width:44px;height:48px;object-fit:contain}@media(max-width:700px){.occasions img.occasion-icon{width:30px;height:35px}}

/* Revision 2: rounded lettering, a shared cushion and compact external labels. */
.hero h1{letter-spacing:0;font-weight:600}
.offers-heading h2{font-weight:600;letter-spacing:0}
.booking-heading h2{font-weight:600}
.offer-heading{top:-76px;left:50%;right:auto;transform:translateX(-50%);width:78%;max-width:320px;padding:7px 9px 9px}
.offer-heading:active{transform:translateX(-50%)}
.offer-heading h3{font-family:var(--display);font-size:27px;line-height:1.05;font-weight:600}
.offer-heading p{font-family:var(--display);font-size:16px;font-weight:500;line-height:1.15;margin-top:4px}
.price{min-width:216px;padding:9px 23px 12px 64px}
.price>strong{font-family:var(--display);font-weight:700;font-size:47px;letter-spacing:0}
.price>span{font-family:var(--display);font-weight:500;font-size:17px}




@media(max-width:1200px) and (min-width:701px){.offer-heading{width:82%}.offer-heading h3{font-size:25px}.offer-heading p{font-size:15px}}
@media(max-width:700px){.offer-heading{width:80%;top:-74px}.offer-heading h3{font-size:27px}.offer-heading p{font-size:16px}.price{min-width:210px}}



/* Revision 3: one integrated bow/cushion, joined inverse half and quote-only offers. */
.hero{padding-bottom:255px}
.cushion-top{position:absolute;left:0;bottom:-20px;width:100%;height:320px;z-index:4;overflow:hidden;pointer-events:none}
.cushion-wing{position:absolute;left:0;bottom:0;width:100%;max-width:none;height:145px;object-fit:fill;transform:scaleY(-1)}
.cushion-bow{position:absolute;left:50%;bottom:-65px;transform:translateX(-50%);width:1010px;max-width:none;height:auto}
.offers-stage{padding-top:82px}
.cushion-bottom{position:absolute;left:0;top:-1px;width:100%;height:145px;z-index:2;pointer-events:none;mask-image:linear-gradient(to bottom,transparent,#000 20px);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 20px)}
.cushion-bottom img{width:100%;max-width:none;height:145px;object-fit:fill}
.offers-layout{position:relative;z-index:3}
.price{width:164px;min-width:0;min-height:64px;bottom:-29px;padding:12px 18px 14px}
.price>strong{font-size:29px;font-weight:600;line-height:1.15;white-space:nowrap}
.booking-total .quote-note{font-size:19px;font-family:var(--display);color:#8656a8;font-weight:600}
@media(max-width:1200px) and (min-width:701px){.hero{padding-bottom:255px}.offers-stage{padding-top:82px}}
@media(max-width:700px){.hero{padding-bottom:202px}.cushion-top{height:245px}.cushion-bow{width:668px;bottom:-41px}.cushion-wing,.cushion-bottom,.cushion-bottom img{height:116px}.offers-stage{padding-top:62px}.cushion-bottom{mask-image:linear-gradient(to bottom,transparent,#000 16px);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 16px)}.price{width:154px;min-width:0;min-height:62px}.price>strong{font-size:28px}}

/* Feather the overlapping white mating edges and the integrated center panel. */
.hero{overflow:visible;z-index:1}
.offers-stage{z-index:0;padding-top:58px}
.cushion-bow{mask-image:linear-gradient(to right,transparent,#000 16%,#000 84%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 16%,#000 84%,transparent)}
@media(min-width:1051px){.booking{margin-top:24px}}
@media(max-width:1200px) and (min-width:701px){.offers-stage{padding-top:58px}}
@media(max-width:700px){.offers-stage{padding-top:48px}}

@media(max-width:700px){.offers-grid{row-gap:126px}}

/* Revision 4: personal contact, compact social proof and an open request. */
.offers-layout{grid-template-columns:minmax(0,1.12fr) minmax(360px,1fr);grid-template-rows:auto 1fr;gap:26px 36px;max-width:1320px}
.offers-heading{padding:0 10px}
.offers-heading>img{width:min(550px,100%)}



.contact-card{grid-column:1;grid-row:2;align-self:start;margin:11px 0 22px;padding:28px 36px 30px;border:3px solid #f8efff;border-radius:36px;background:linear-gradient(140deg,#fff5f9d1,#ead4f3ce 76%,#d8c0efba);box-shadow:inset 0 0 0 3px #ba91d188,inset 0 0 0 5px #fff7,0 12px 28px #9b528a33;text-align:center}
.contact-border-heart{position:absolute;right:22px;top:-29px;width:64px;height:64px;object-fit:contain;transform:rotate(13deg);filter:drop-shadow(0 5px 6px #8f59a447);z-index:3}
.contact-illustration{width:105px;height:105px;object-fit:contain;margin:0 auto 13px;filter:drop-shadow(0 6px 8px #9b528a2b)}
.contact-card h2{font-family:var(--display);font-size:clamp(30px,2.6vw,39px);font-weight:600;line-height:1.16;color:#a42b79}
.contact-invitation{font-family:var(--display);font-size:28px;font-weight:500;color:#9460b6;margin:16px 0 9px}
.contact-copy{font-size:18px;font-weight:600;line-height:1.6;max-width:460px;margin:auto}
.contact-details{display:flex;flex-direction:column;gap:11px;margin:24px auto 15px;max-width:380px;text-align:left}
.contact-details>a{display:flex;align-items:center;gap:13px;padding:10px 14px;border:1px solid #fffc;border-radius:20px;background:linear-gradient(120deg,#fff9,#fff4);box-shadow:inset 0 2px 4px #fff8,0 3px 8px #bb7ca61c}
.contact-details>a:hover{background:#fff9}
.contact-details small{display:block;font-size:12px;line-height:1.4;font-weight:700;color:#945b9f}
.contact-details strong{font-size:19px;font-weight:800;overflow-wrap:anywhere}
.contact-details .round-icon{width:39px;height:39px;background:linear-gradient(145deg,#fbf4ff,#d6b6e9aa);color:#a260b5}
.contact-form-link{font-size:15px;line-height:1.6}
.contact-form-link>a{font-weight:800;text-decoration:underline;text-underline-offset:4px}
.contact-form-link svg{width:14px;height:14px;vertical-align:middle;margin-left:2px}
.response-time{display:flex;justify-content:center;align-items:center;gap:7px;font-size:13px;font-weight:800;color:#85589b;margin-top:24px;line-height:1.4}
.response-time svg{width:18px;height:18px}
.booking{margin-top:24px;grid-column:2;grid-row:1/3}
textarea{font:inherit;width:100%;min-width:0;border:1px solid #f4bad2a1;border-radius:14px;background:#fff7faad;color:#a32a69;padding:12px;font-size:14px;line-height:1.55;resize:vertical;min-height:130px;max-height:450px;box-shadow:0 2px 3px #db86ab16}
textarea:focus{outline:2px solid #ae78d4;outline-offset:1px}
textarea::placeholder{color:#aa5177;opacity:.88}
.message-section{margin-top:18px;margin-bottom:18px}
@media(max-width:1050px){.offers-layout{grid-template-columns:1fr;gap:22px}.offers-heading{grid-row:1}.offers-heading>img{width:min(470px,100%)}.contact-card{grid-column:1;grid-row:2;max-width:640px;width:100%;justify-self:center;margin-top:16px}.booking{grid-column:1;grid-row:3;margin-top:0}.contact-card h2{font-size:37px}.contact-copy{font-size:18px}.booking textarea{font-size:16px}}
@media(max-width:700px){.offers-layout{gap:23px}.offers-heading>img{width:min(350px,100%)}.contact-card{padding:26px 22px 25px;margin:12px 0 2px;border-radius:30px}.contact-border-heart{width:53px;height:53px;right:15px;top:-24px}.contact-illustration{width:90px;height:90px;margin-bottom:12px}.contact-card h2{font-size:31px}.contact-invitation{font-size:25px;margin-top:14px}.contact-copy{font-size:16px;line-height:1.6}.contact-details{margin-top:21px;gap:9px}.contact-details>a{padding:9px 10px;gap:9px;border-radius:17px}.contact-details .round-icon{width:33px;height:33px}.contact-details strong{font-size:16px}.contact-details small{font-size:11px}.contact-form-link{font-size:14px}.response-time{font-size:12px;margin-top:20px}.booking textarea{font-size:16px}.message-section{margin-top:18px}}
@media(max-width:360px){.contact-card{padding-left:15px;padding-right:15px}.contact-card h2{font-size:28px}.contact-details strong{font-size:14px}.contact-form-link{font-size:13px}.response-time{font-size:11px}}

/* Revision 5: remove social proof and bring the contact card closer to the logo. */
.offers-layout{row-gap:18px}
.contact-card{margin-top:7px}
@media(max-width:1050px){.offers-layout{row-gap:18px}.contact-card{margin-top:8px}}
@media(max-width:700px){.offers-layout{row-gap:18px}.contact-card{margin-top:7px}}

/* Contact delivery states. */
.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.submit-button:disabled{cursor:wait;opacity:.72}
.request-state[data-result=success]{background:#f1e4faf2;border:1px solid #b38acb;color:#713c92;border-radius:18px;padding:18px;line-height:1.6}
.request-state[data-result=error]{background:#fff0f5;border:1px solid #dc9db8;color:#98365e;border-radius:18px;padding:18px;line-height:1.6}
