@font-face{
  font-family:"Cormorant Garamond";src:url("/cormorant-garamond.woff2") format("woff2");
  font-style:normal;font-weight:300 700;font-display:swap;
}
@font-face{
  font-family:"Cormorant Garamond";src:url("/cormorant-garamond-italic.woff2") format("woff2");
  font-style:italic;font-weight:300 700;font-display:swap;
}
@font-face{
  font-family:"DM Sans";src:url("/dm-sans.woff2") format("woff2");
  font-style:normal;font-weight:100 1000;font-display:swap;
}
:root {
  --paper:#fff3fa;
  --ink:#3d0f2c;
  --muted:#633550;
  --rose:#980752;
  --fuchsia:#c31b74;
  --gold:#8b5319;
  --line:#edb5cf;
  --serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --sans:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --foil:linear-gradient(125deg,#9f4c0c 0%,#e1a443 14%,#fff1bc 29%,#d79b35 47%,#fff4d0 64%,#e3a94e 80%,#ad5e1d 100%);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 var(--sans)}
button{font-family:inherit}
a{color:var(--rose);text-underline-offset:.2em}
a:hover{color:var(--ink)}
a:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
.skip{position:absolute;left:1rem;top:.5rem;transform:translateY(-200%);padding:.6rem 1rem;background:white;z-index:3}
.skip:focus{transform:none}
.wrap{width:min(1120px,calc(100% - 64px));margin-inline:auto}
.masthead,.footer{background:#fff9fd}
.masthead{border-bottom:2px solid #dbab60}
.masthead-inner,.footer .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px}
.masthead-inner{min-height:77px}
.brand{display:inline-block;flex:none}
.brand img{display:block;width:233px;height:auto}
.footer .brand img{width:186px}
nav{display:flex;align-items:center;gap:25px;flex-wrap:wrap}
nav a,.footer a:last-child{color:var(--muted);font-size:.88rem;font-weight:700;text-decoration:none}
nav a:hover,.footer a:last-child:hover{text-decoration:underline}
nav a:last-child{border:1px solid #c58946;border-radius:999px;padding:.4rem .85rem;color:var(--rose)}
h1,h2,h3{margin:0;font-family:var(--serif);font-weight:650;line-height:1.05}
h1{font-size:clamp(3.25rem,6.9vw,6.2rem);letter-spacing:-.028em;max-width:12ch}
h1 em{display:block;color:#ffe2a0;font-weight:600;line-height:1.02}
h2{font-size:clamp(2.1rem,4vw,3.45rem);letter-spacing:-.022em}
h3{font-size:clamp(1.5rem,2.8vw,2.15rem);letter-spacing:-.015em}
p{margin:0;color:var(--muted);max-width:62ch}
.eyebrow{margin-bottom:13px;color:var(--rose);font-size:.72rem;font-weight:800;letter-spacing:.16em}
.hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  color:#fff8fc;
  border-bottom:3px solid #dba759;
  background:radial-gradient(ellipse at 78% 45%,#e63594 0%,transparent 53%),linear-gradient(120deg,#50052e 0%,#8b0757 48%,#b60968 100%);
}
.hero::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  opacity:.55;
  pointer-events:none;
  background-image:radial-gradient(circle,#ffe1a9 0 1px,transparent 1.5px),radial-gradient(circle,#ffeafa 0 .8px,transparent 1.5px),radial-gradient(circle,#ffd389 0 1.3px,transparent 1.8px);
  background-size:47px 61px,33px 39px,127px 91px;
  background-position:8px 18px,22px 6px,54px 21px;
  mask-image:linear-gradient(100deg,transparent 8%,#0003 49%,#000 94%);
}
.intro{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:62px;padding-block:71px 79px}
.hero-copy{container-type:inline-size}
.hero-copy h1{max-width:none;font-size:min(9cqi,3.75rem);line-height:1.12}
.hero-title-line{display:block;white-space:nowrap}
.hero-copy h1 em{display:inline}
.hero-copy p:not(.eyebrow){margin:22px 0 25px;color:#fff1f8;max-width:48ch}
.hero .button:focus-visible{outline-color:#fff0b5}
.showpiece{
  position:relative;
  justify-self:center;
  width:min(100%,410px);
  padding:7px;
  border:1px solid #fff1ba;
  border-radius:50%;
  background:var(--foil);
  box-shadow:0 0 0 8px #ffc88740,0 0 0 17px #f9b6752a,0 0 54px #ffc66ca0,0 20px 60px #47022688;
}
.showpiece img{display:block;width:100%;height:auto;border-radius:50%}
.sparkle{position:absolute;z-index:1;background:#fff3c6;clip-path:polygon(50% 0,58% 40%,100% 50%,58% 60%,50% 100%,42% 60%,0 50%,42% 40%);pointer-events:none}
.sparkle-large{width:68px;height:68px;right:-16px;top:7%}
.sparkle-small{width:39px;height:39px;left:-11px;bottom:9%}
.button{
  display:inline-flex;align-items:center;min-height:47px;padding:.6rem 1.2rem;border:1px solid #e8b764;border-radius:999px;
  background:var(--foil);color:#3c1326;font-size:.9rem;font-weight:800;text-decoration:none;box-shadow:0 5px 15px #59223a30;
}
.button:hover{background:#ffdf95;color:#3c1326}
.page-body{padding-top:54px}
.services h2{margin-bottom:13px}
.service,.about,.contact{display:grid;grid-template-columns:minmax(200px,.8fr) 1.2fr;gap:31px;align-items:start}
.service{padding-block:23px}
.service+.service{border-top:1px solid var(--line)}
.service h3{display:flex;align-items:baseline;gap:12px}
.project{
  margin:15px 0 35px;padding:26px 30px;border:1px solid #e2a765;border-radius:19px;
  background:linear-gradient(120deg,#f8c4df,#fff1f8 78%);
}
.project h2{font-size:clamp(1.7rem,3vw,2.45rem)}
.project p:last-child{margin-top:10px}
.about,.contact{border-top:1px solid var(--line);padding-block:32px}
.about p+p{margin-top:11px}
.contact{padding-bottom:55px}
.contact .button{margin-top:14px}
.contact-note{font-size:.8rem;margin-top:8px}
.footer{border-top:1px solid var(--line);padding-block:20px}
.footer p{font-size:.84rem}
.footer .footer-links{display:flex;flex-wrap:wrap;gap:8px 16px}
.footer .footer-links a{color:var(--muted);font-size:.84rem;font-weight:700}
.legal-content{display:grid;gap:30px}
.legal-content h2{margin-bottom:10px}
.legal-content p+p{margin-top:8px}
.legal-content address{font-style:normal;color:var(--muted)}
.legal-privacy{scroll-margin-top:20px}
.legal-privacy h3{margin:18px 0 6px}
.offer-copy .offer-price{padding:9px 12px;border-left:3px solid #c58a48;background:#fff8fc}
.offer-price strong{color:var(--ink)}
@media(max-width:900px){.wrap{width:calc(100% - 52px)}.intro{gap:35px}}
@media(max-width:690px){
  .wrap{width:calc(100% - 38px)}
  .masthead-inner{align-items:flex-start;flex-direction:column;gap:8px;padding-block:12px}
  .brand img{width:207px}
  nav{gap:16px}
  nav a:last-child{padding:.2rem .65rem}
  .intro{grid-template-columns:1fr;gap:35px;padding-block:38px 49px}
  .showpiece{width:min(100% - 48px,310px)}
  .sparkle-large{width:50px;height:50px}
  .sparkle-small{width:30px;height:30px}
  .page-body{padding-top:36px}
  .service,.about,.contact{grid-template-columns:1fr;gap:10px}
  .project{padding:21px}
  .footer .wrap{align-items:flex-start;flex-direction:column;gap:8px}
}
@media(max-width:380px){h1{font-size:2.85rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Each page uses the same navigation and fuchsia-and-gold palette. */
body{min-height:100vh;display:flex;flex-direction:column}
main{flex:1}
nav a[aria-current="page"]{color:var(--rose);text-decoration:underline;text-decoration-color:#bc8244;text-decoration-thickness:2px;text-underline-offset:6px}
nav a:last-child[aria-current="page"]{background:#f9dcec;text-decoration:none}
.hero-actions{display:flex;align-items:center;gap:14px 21px;flex-wrap:wrap}
.hero-link{color:#fff4fa;font-size:.9rem;font-weight:700}
.hero-link:hover{color:#ffe2a0}
.hero-link:focus-visible{outline-color:#fff0b5}
.home-section{padding-block:clamp(40px,6vw,72px)}
.home-section-heading{margin-bottom:22px}
.home-section h2{font-size:clamp(2rem,4vw,3.15rem)}
.home-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}
.home-services article{
  padding:clamp(20px,3vw,30px);
  border:1px solid var(--line);
  border-top:3px solid #c58a48;
  border-radius:18px;
  background:#fffdfd;
  box-shadow:0 6px 18px #6317430c;
}
.home-services h3{margin:10px 0;font-size:clamp(1.45rem,2.5vw,1.95rem)}
.home-work{background:#fff9fd;border-block:1px solid var(--line)}
.home-project,.home-about{display:grid;align-items:center;gap:clamp(22px,5vw,55px)}
.home-project{
  grid-template-columns:minmax(130px,200px) 1fr;
  padding:clamp(20px,4vw,39px);
  border:1px solid var(--line);
  border-radius:22px;
  background:linear-gradient(115deg,#f9d8e9,#fff5fa 65%);
}
.home-project img{display:block;width:100%;max-width:200px;height:auto;border:1px solid var(--line);border-radius:18px}
.home-about{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.home-about .about-portrait{margin:0}
.home-project h2,.home-about h2{margin:8px 0 14px}
.home-project .offer-button,.home-about .offer-button{margin-top:17px}
.home-example{border-bottom:1px solid var(--line)}
.home-example .home-section-heading{scroll-margin-top:18px}
.home-example .home-section-heading > p:last-child{margin-top:12px}
.home-example .offer-label{margin-bottom:8px}
.example-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.example-panel,.example-live{
  padding:clamp(17px,3vw,30px);
  border:1px solid var(--line);
  border-radius:18px;
  background:#fffdfd;
}
.example-panel-after{background:#f9dfed;border-top:3px solid #a71865}
.example-sources,.example-table{margin:15px 0 0}
.example-sources > div{padding-block:8px;border-bottom:1px solid var(--line)}
.example-sources dt,.example-table th{font-weight:750}
.example-sources dd{margin:0;color:var(--muted)}
.example-table{width:100%;border-collapse:collapse;text-align:left}
.example-table th,.example-table td{padding:7px 8px;border-bottom:1px solid var(--line)}
.example-table thead{background:#fff9fd}
.example-table small{display:block;color:var(--muted);font-weight:500}
.example-table td{white-space:nowrap}
.example-live{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-top:18px}
.example-live h3{margin-bottom:8px}
@media(max-width:750px){
  .home-services,.home-project,.home-about,.example-comparison{grid-template-columns:1fr}
  .home-services{gap:12px}
  .home-project img{max-width:128px}
}
.page-banner .wrap{padding-block:45px 51px}
.page-banner h1{max-width:none;font-size:clamp(3rem,6vw,5rem)}
.page-banner .eyebrow{color:#ffe0a7}
.page-body>.about,.page-body>.contact{border-top:0;padding-top:0}
.page-action{margin:0 0 42px}
@media(max-width:690px){.page-banner .wrap{padding-block:32px 37px}.hero-actions{gap:12px 17px}}

/* Services */
.services-page {
  --studio-ink:#350e29;
  background:radial-gradient(ellipse at 13% 22%,#ffd8ec 0%,transparent 34%),radial-gradient(ellipse at 92% 40%,#f8cae8 0%,transparent 35%),#fff6fb;
}
.services-page .masthead{background:#fff9fd}
.services-intro{padding-block:37px 32px;text-align:center}
.tiny-spark,.art-spark{
  display:inline-block;flex:none;background:#ad651f;
  clip-path:polygon(50% 0,60% 39%,100% 50%,60% 61%,50% 100%,40% 61%,0 50%,40% 39%);
}
.tiny-spark{width:12px;height:12px}
.services-intro h1{
  max-width:none;margin:5px 0 9px;color:var(--studio-ink);
  font-size:clamp(3.25rem,7.5vw,6.5rem);
}
.services-intro h1 em{display:inline;color:#b01869;font-size:1.06em}
.services-intro>p{margin-inline:auto;color:#654055;font-size:1rem}
.services-intro .price-note{margin-top:7px;font-size:.9rem}
.offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px}
.offer{
  display:flex;flex-direction:column;min-width:0;padding:8px;
  border:1px solid #e8abc9;border-radius:27px;background:#fffafd;
  box-shadow:0 12px 32px #7d195817,0 2px 5px #7d19580d;
}
.offer-art{
  position:relative;isolation:isolate;display:grid;place-items:center;overflow:hidden;min-height:205px;
  border-radius:19px;background:radial-gradient(ellipse at 70% 70%,#f64eaf 0%,transparent 55%),linear-gradient(132deg,#660a44,#b40c70);
}
.offer-custom .offer-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.offer-tool .offer-art{background:radial-gradient(ellipse at 65% 38%,#ffedf9 0%,transparent 49%),linear-gradient(130deg,#e9a5dc,#f7b5dc 64%,#ef9cd7)}
.offer-art::before{
  content:"";position:absolute;z-index:-1;inset:0;opacity:.45;
  background:radial-gradient(circle,#fff5d9 0 1px,transparent 1.5px) 4px 11px/30px 28px,radial-gradient(circle,#ffe3f7 0 1px,transparent 1.5px) 15px 9px/57px 45px;
}
.art-spark{position:absolute;background:#ffeab0;z-index:2}
.art-spark-top{top:22px;right:10%;width:46px;height:46px}
.art-spark-bottom{bottom:24px;left:11%;width:25px;height:25px}
.offer-tool .art-spark{background:#a65d1f}
.browser-preview{
  width:min(64%,278px);min-width:0;border:2px solid #fff1c4;border-radius:11px;overflow:hidden;
  background:#fff8fc;box-shadow:0 10px 23px #590b4277;transform:rotate(-7deg);
}
.offer-tool .browser-preview{transform:rotate(6deg);box-shadow:0 10px 23px #9d357f52}
.preview-bar{display:flex;align-items:center;gap:4px;height:18px;padding-inline:8px;background:#f2c5df}
.preview-bar i{width:4px;height:4px;border-radius:50%;background:#ad4d81}
.web-preview-body{display:grid;grid-template-columns:1fr 38%;align-items:center;gap:4px;min-height:106px;padding:10px 12px;background:linear-gradient(125deg,#fff8f8,#f9d2e6)}
.web-preview-body span{display:block;color:#7a2b56;font-size:.48rem;letter-spacing:.12em;font-weight:800}
.web-preview-body strong{display:block;color:#461431;font:1.28rem/1.05 var(--serif);margin:4px 0 7px}
.web-preview-body i{display:block;width:38px;height:4px;border-radius:5px;background:#a92e73}
.web-preview-body svg{width:100%;height:85px}
.phone-preview{
  position:absolute;right:17%;bottom:23px;width:38px;height:69px;padding:7px 4px;border:2px solid #edc481;
  border-radius:8px;background:#fff6fb;transform:rotate(10deg);box-shadow:0 4px 10px #50063860;
}
.phone-preview span,.phone-preview i{display:block;border-radius:2px;background:#e9a8cf;margin-bottom:4px}
.phone-preview span{height:28px;background:linear-gradient(135deg,#eac8dd,#c64b90)}
.phone-preview i{height:3px}
.tool-preview-body{padding:8px 10px;color:#50203e}
.tool-preview-body>strong{display:block;font-size:.78rem;margin-bottom:4px}
.tool-preview-body>div{display:flex;justify-content:space-between;gap:3px;align-items:center;padding:3px 5px;margin-top:3px;border-radius:3px;background:#f9e4f2;font-size:.58rem}
.tool-preview-body b{padding:0 4px;border-radius:8px;background:#f1c5e5;white-space:nowrap;font-size:.53rem}
.check-preview{
  position:absolute;right:13%;bottom:25px;width:46px;height:46px;display:grid;place-items:center;border:1px solid #a66220;
  border-radius:15px;background:var(--foil);color:#652748;transform:rotate(-10deg);box-shadow:0 5px 12px #7116573f;
}
.check-preview svg{width:30px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.offer-copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:16px 18px 18px}
.offer-label{color:#9a165c;font-size:.7rem;font-weight:800;letter-spacing:.12em}
.offer-copy h2,.studio-project h2{color:var(--studio-ink)}
.offer-copy h2{margin:4px 0 8px;font-size:clamp(1.65rem,3vw,2.6rem)}
.offer-copy>p:not(.offer-label){margin:0 0 15px;font-size:.93rem;line-height:1.55}
.offer-button{
  display:inline-flex;align-items:center;gap:11px;min-height:43px;margin-top:auto;padding:6px 13px;
  border:1px solid #ecc280;border-radius:999px;background:#810b50;color:#fff3fb;text-decoration:none;font-size:.83rem;font-weight:760;
}
.offer-button:hover{background:#a71865;color:white}
.offer-button svg{width:13px;height:13px;fill:none;stroke:#ffe3a6;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.studio-project{
  margin-block:34px 48px;padding:22px 25px;border:1px solid #edbbd5;border-radius:18px;background:#fff9fc;
}
.studio-project h2{display:flex;align-items:center;gap:10px;font-size:clamp(1.5rem,2.8vw,2.15rem);margin-bottom:16px}
.project-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.project-list article{padding:14px 15px;border:1px solid #edbbd5;border-radius:13px;background:#fff1f8}
.project-list h3{font-size:1.25rem;color:var(--studio-ink);margin-bottom:6px}
.project-list p{font-size:.88rem}
@media(max-width:690px){
  .services-intro{padding-block:27px 24px}
  .offer-grid,.project-list{grid-template-columns:1fr}
  .offer-art{min-height:190px}
  .studio-project{margin-block:25px 35px;padding:18px}
}

@media(min-width:691px) and (max-width:959px){
  .offer-custom{grid-column:1 / -1;width:calc((100% - 21px) / 2);justify-self:center}
}
@media(min-width:960px){
  .offer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .offer-copy h2{font-size:clamp(1.75rem,3.1vw,2.45rem)}
}

/* About */
.about-page {
  --studio-ink:#350e29;
  background:radial-gradient(ellipse at 87% 18%,#f8cae8 0%,transparent 36%),#fff6fb;
}
.about-intro{
  display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:center;gap:clamp(25px,4vw,56px);
  padding-block:52px 60px;
}
.about-intro-copy{container-type:inline-size}
.about-intro h1{
  max-width:none;margin:12px 0 15px;color:var(--studio-ink);
  font-size:min(17.4cqi,6.5rem);
  white-space:nowrap;
}
.about-intro h1 em{display:inline;color:#b01869;font-size:1.06em}
.about-origin{display:flex;gap:8px;align-items:center;color:#75254d;font-size:.87rem;font-weight:750}
.about-origin svg{flex:none;width:24px;height:16px;border-radius:2px;box-shadow:0 0 0 1px #e5bfd4}
.about-lead{margin:16px 0 23px;font-size:1.04rem}
.about-portrait{
  position:relative;margin:0;justify-self:center;width:100%;padding:5px;
  border:1px solid #fff1bf;border-radius:26px;background:var(--foil);box-shadow:0 16px 34px #78154d35;
}
.about-portrait img{display:block;width:100%;height:auto;border-radius:21px}
.about-portrait .art-spark-top{right:-16px;top:9%;background:#e6ab54;filter:drop-shadow(0 2px 4px #81452650)}
.about-story{
  display:grid;grid-template-columns:.8fr 1.2fr;gap:28px;
  padding-block:34px;border-top:1px solid #edbbd5;
}
.about-story h2,.about-location h2{
  color:var(--studio-ink);font-size:clamp(1.85rem,3.65vw,3.1rem);
}
.about-story .offer-label,.about-location .offer-label{margin-bottom:9px}
.about-story-copy p+p{margin-top:13px}
.about-location{
  display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:center;
  margin-block:4px 49px;padding:24px 29px;border:1px solid #edbbd5;border-radius:23px;
  background:linear-gradient(125deg,#ffe1f0,#fff9fc 80%);
}
.about-location p:not(.offer-label){margin:11px 0 15px}
.about-location figure{margin:0;justify-self:center;width:min(100%,355px)}
.about-location figure img{display:block;width:100%;height:auto}
.about-location figcaption{color:var(--muted);text-align:center;font-size:.74rem}
@media(max-width:690px){
  .about-intro,.about-story,.about-location{grid-template-columns:1fr}
  .about-intro{padding-block:31px 37px}
  .about-story{gap:12px;padding-block:25px}
  .about-location{gap:15px;padding:18px;margin-bottom:33px}
}

/* Contact and reservations */
.contact-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px;align-items:start;padding-block:39px 50px}
.contact-card{padding:25px;border:1px solid var(--line);border-radius:22px;background:#fffafd}
.contact-card h2{margin:6px 0 12px;font-size:clamp(1.65rem,3vw,2.55rem)}
.contact-card>p:not(.offer-label){font-size:.95rem}
.contact-card form{display:grid;gap:13px;margin-top:18px}
.contact-card [hidden]{display:none}
.contact-card form label{display:grid;gap:4px;font-size:.88rem;font-weight:700;color:var(--ink)}
.contact-card input,.contact-card textarea{width:100%;border:1px solid #d5a7bd;border-radius:9px;padding:8px 10px;background:#fff;color:var(--ink);font:inherit;font-weight:400}
.contact-card textarea{resize:vertical}
.contact-card :is(input,textarea,button):focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.contact-card .button{justify-self:start;cursor:pointer}
.contact-card .button:disabled{cursor:wait;opacity:.72}
.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-note{font-size:.78rem;color:var(--muted);font-weight:400}
.contact-card form .form-status,.contact-card>.form-status{font-size:.87rem;color:var(--rose);font-weight:700}
.form-status:empty{display:none}
.calendar{margin-top:17px;padding:11px;border:1px solid #eec6db;border-radius:13px;background:#fff2f9}
.calendar-nav{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;text-align:center;gap:4px;margin-bottom:7px}
.calendar-nav h3{font:750 1rem/1.25 var(--sans);letter-spacing:0;text-transform:capitalize}
.calendar-nav button,.calendar-grid button,.calendar-times button{border:1px solid #edc2d7;border-radius:8px;background:#fff;color:var(--rose);font:700 .84rem/1 var(--sans);cursor:pointer}
.calendar-nav button{height:36px;font-size:1.25rem}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}
.calendar-week{margin-bottom:4px;color:var(--muted);font-size:.72rem;font-weight:750}
.calendar-grid button{min-height:36px;padding:0}
.calendar-nav button:disabled,.calendar-grid button:disabled{background:#faedf4;color:#8a7080;cursor:default}
.calendar-grid button[aria-pressed="true"],.calendar-times button[aria-pressed="true"]{background:var(--rose);color:#fff;border-color:var(--rose)}
.calendar-times{display:flex;flex-wrap:wrap;gap:7px}
.calendar-times button{padding:9px 10px;min-height:36px}
.contact-card fieldset{margin:13px 0 0;padding:0;border:0}
.contact-card legend{margin-bottom:5px;font-size:.86rem;font-weight:750}
.booking-selection{font-size:.88rem;color:var(--rose);font-weight:750}
.contact-card>.form-status:not(:empty){margin-top:9px}
.contact-inbox{padding-block:30px}
.contact-inbox h1{font-size:clamp(2rem,5vw,3.5rem);max-width:none;margin:18px 0}
.contact-inbox section{margin-bottom:25px}
.contact-inbox article{margin-top:10px;padding:14px;border:1px solid var(--line);border-radius:10px}
.contact-inbox .message{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:750px){.contact-layout{grid-template-columns:1fr;padding-block:24px 35px}.contact-card{padding:17px}}
