/* Luce 2026-10-03 | Desktop hero refinement, concise footer, accessible headline */
@media (min-width:1101px){
  .hero{height:clamp(660px,calc(100svh - 88px),780px);min-height:660px}
  .hero-inner{min-height:660px;align-items:start;grid-template-columns:minmax(0,48%) minmax(0,52%)}
  .hero-copy{padding-top:clamp(72px,9vh,112px);padding-bottom:40px;max-width:660px}
  .hero .hero-copy h1{font-size:clamp(37px,2.9vw,46px);line-height:1.5;letter-spacing:.018em}
  .hero-photo{background-position:center 48%}
}
@media (min-width:769px) and (max-width:1100px){
  .hero{height:auto;min-height:690px}
  .hero-inner{min-height:690px;grid-template-columns:minmax(0,53%) minmax(0,47%);align-items:start}
  .hero-copy{padding-top:82px;padding-bottom:48px}
  .hero .hero-copy h1{font-size:clamp(29px,3.15vw,37px);line-height:1.55;letter-spacing:.005em}
  .hero-photo{background-position:56% center}
}
/* Keep the full headline's height reserved while letters appear: no layout jump. */
#hero-title.typewriter-enabled > br{display:none!important}
#hero-title.typewriter-enabled .typewriter-line{display:block!important;position:relative;white-space:normal;min-width:0}
#hero-title.typewriter-enabled .typewriter-placeholder{visibility:hidden;display:block;white-space:normal}
#hero-title.typewriter-enabled .typewriter-live{position:absolute;inset:0;display:block;white-space:normal;overflow:visible}
#hero-title.typewriter-enabled .typewriter-live.is-active::after{content:"";display:inline-block;width:2px;height:.86em;margin-left:3px;vertical-align:-.08em;background:currentColor;animation:luce-caret .8s step-end infinite}
@keyframes luce-caret{50%{opacity:0}}
@media(prefers-reduced-motion:reduce){#hero-title .typewriter-live::after{animation:none!important}}
/* The invitation to book already exists above the footer; keep the sitemap quiet. */
footer.luce-footer{padding:54px 24px 24px;text-align:left;background:#f5efe7;color:#554740;font-size:15px;line-height:1.7}
.luce-footer-inner{width:min(1120px,100%);margin-inline:auto}
.luce-footer-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;padding-bottom:24px;border-bottom:1px solid #dfd1c9}
.luce-footer-heading p{margin:0}
.luce-footer-brand strong{display:block;font-weight:500;font-size:21px;letter-spacing:.03em}
.luce-footer-brand strong span{font-size:13px;margin-left:6px;white-space:nowrap}
.luce-footer-brand small{display:block;font-size:13px;margin-top:5px}
.luce-footer-note{color:#766a64;font-size:13px}
footer.luce-footer .sitemap{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:clamp(22px,4vw,72px);margin:26px 0 38px!important;text-align:left}
footer.luce-footer .sitemap-group{min-width:0}
footer.luce-footer .sitemap h3{font-family:inherit;font-size:15px;letter-spacing:.04em;font-weight:600;margin:0 0 12px;color:#544039}
footer.luce-footer .sitemap a{display:block;max-width:100%;font-size:14px;line-height:1.55;padding:7px 0;text-decoration:none;color:#665650;overflow-wrap:anywhere}
footer.luce-footer .sitemap a:hover{text-decoration:underline;text-underline-offset:4px}
.luce-footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:18px;border-top:1px solid #dfd1c9;color:#756a65;font-size:12px}
.luce-footer-bottom a{text-underline-offset:4px;color:inherit}
.luce-footer-bottom small{font-size:12px}
@media(max-width:768px){
 footer.luce-footer{padding:38px 20px 24px;font-family:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;font-size:14px}
 .luce-footer-heading{display:block;padding-bottom:22px}
 .luce-footer-brand strong{font-size:19px}
 .luce-footer-note{margin-top:10px!important}
 footer.luce-footer .sitemap{grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:22px;row-gap:26px;margin:24px 0 30px!important}
 footer.luce-footer .sitemap h3{font-size:14px;letter-spacing:0}
 footer.luce-footer .sitemap a{font-size:14px;min-height:36px}
 footer.luce-footer .sitemap-group:last-child{grid-column:1/-1}
 footer.luce-footer .sitemap-group:last-child a{max-width:360px}
}
@media(max-width:359px){footer.luce-footer .sitemap{grid-template-columns:1fr!important}footer.luce-footer .sitemap-group:last-child{grid-column:auto}}
