:root {
  --ink: #24342c;
  --deep: #19271f;
  --moss: #667357;
  --moss-light: #dfe4d6;
  --paper: #f4f1e8;
  --paper-2: #e9e5d9;
  --clay: #bd5b39;
  --line: rgba(36, 52, 44, 0.18);
  --display: 'DM Serif Display', 'Times New Roman', serif;
  --sans: 'Noto Sans KR', Arial, sans-serif;
  --ease: cubic-bezier(.22,.61,.36,1);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--sans); font-size: 15px; line-height: 1.7; letter-spacing: -0.025em; overflow-x: hidden; }
body.menu-open { overflow: hidden; }
button, a { font: inherit; }
a { color: inherit; text-decoration: none; }
button { border: 0; cursor: pointer; }
img { display: block; width: 100%; }
::selection { background: var(--clay); color: #fff; }
.skip-link { position: fixed; z-index: 100; left: 1rem; top: -5rem; padding: .6rem 1rem; color: #fff; background: var(--ink); transition: top .2s; }
.skip-link:focus { top: 1rem; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.page-noise { position: fixed; z-index: 20; inset: 0; opacity: .055; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.75'/%3E%3C/svg%3E"); }

.site-header { position: absolute; z-index: 30; inset: 0 0 auto; height: 92px; display: flex; align-items: center; justify-content: space-between; padding: 0 clamp(1.25rem, 4vw, 4.5rem); color: white; border-bottom: 1px solid rgba(255,255,255,.25); }
.wordmark { display: inline-flex; align-items: center; gap: .72rem; font-size: 1.38rem; font-weight: 700; letter-spacing: -.09em; white-space: nowrap; }
.wordmark-mark { position: relative; display: inline-flex; align-items: end; gap: 2px; width: 19px; height: 20px; transform: skewX(-15deg); }
.wordmark-mark i { display: block; width: 5px; border-radius: 5px 5px 0 0; background: currentColor; }
.wordmark-mark i:nth-child(1) { height: 8px; }.wordmark-mark i:nth-child(2) { height: 15px; }.wordmark-mark i:nth-child(3) { height: 11px; }
.desktop-nav { display: flex; gap: clamp(1.4rem, 3vw, 3.5rem); margin-left: 10vw; font-size: .82rem; font-weight: 500; }
.desktop-nav a, .footer-bottom a { position: relative; }
.desktop-nav a::after, .footer-bottom a::after { position: absolute; content: ''; left: 0; right: 0; bottom: -5px; height: 1px; background: currentColor; transform: scaleX(0); transform-origin: right; transition: transform .35s var(--ease); }
.desktop-nav a:hover::after, .footer-bottom a:hover::after { transform: scaleX(1); transform-origin: left; }
.header-cta { display: inline-flex; align-items: center; gap: 2rem; padding: .7rem .7rem .7rem 1.05rem; font-size: .8rem; font-weight: 600; border: 1px solid rgba(255,255,255,.65); border-radius: 50px; transition: background .3s, color .3s; }
.header-cta b { display: grid; width: 25px; height: 25px; place-items: center; color: var(--ink); background: #fff; border-radius: 50%; font-size: .95rem; }
.header-cta:hover { color: var(--ink); background: #fff; }.header-cta:hover b { color: #fff; background: var(--clay); }
.menu-toggle, .mobile-menu { display: none; }

.hero { position: relative; min-height: min(850px, 100svh); height: 100vh; color: white; overflow: hidden; background: var(--deep); }
.hero-image { position: absolute; inset: 0; height: 100%; object-fit: cover; object-position: center; filter: saturate(.65) contrast(1.04); animation: hero-zoom 18s ease-out both; }
.hero-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(17,29,23,.8) 0%, rgba(18,31,23,.4) 44%, rgba(17,25,20,.18) 100%), linear-gradient(0deg, rgba(13,23,17,.62), transparent 38%); }
.hero-grid { position: absolute; inset: 92px 0 0; opacity: .45; background: linear-gradient(90deg, transparent 33.333%, rgba(255,255,255,.13) 33.4%, transparent 33.55%, transparent 66.666%, rgba(255,255,255,.13) 66.72%, transparent 66.9%); }
.hero-copy { position: absolute; z-index: 1; top: 49%; left: clamp(1.3rem, 13vw, 13rem); transform: translateY(-38%); }
.location-tag { display: flex; align-items: center; gap: .6rem; margin: 0 0 1.5rem; font-size: .7rem; font-weight: 600; letter-spacing: .16em; }.location-tag span { width: 7px; height: 7px; border-radius: 100%; background: var(--clay); }
h1, h2, h3, p { margin-top: 0; }
h1, h2 { font-weight: 400; letter-spacing: -.075em; line-height: .98; }
h1 { margin-bottom: 1.7rem; font-size: clamp(4.1rem, 8.5vw, 8.9rem); } h1 em, h2 em { color: inherit; font-family: var(--display); font-weight: 400; }
.hero-lead { margin-bottom: 2.2rem; color: rgba(255,255,255,.82); font-size: clamp(.9rem, 1vw, 1.05rem); line-height: 1.8; }
.circle-link { display: inline-flex; align-items: center; justify-content: space-between; width: 122px; height: 122px; padding: 1.05rem; border-radius: 50%; font-size: .78rem; font-weight: 600; transition: transform .4s var(--ease), background .3s, color .3s; }.circle-link b { align-self: flex-end; font-size: 1.1rem; }.circle-link.light { border: 1px solid rgba(255,255,255,.7); }.circle-link:hover { color: var(--ink); background: var(--paper); transform: rotate(10deg) scale(1.06); }
.hero-side-note { position: absolute; z-index: 1; top: 50%; right: 2rem; display: flex; gap: 2.5rem; transform: rotate(90deg) translateX(50%); transform-origin: right top; color: rgba(255,255,255,.72); font-size: .61rem; letter-spacing: .14em; }.hero-side-note span + span::before { content: '—'; margin-right: 1rem; }
.hero-bottom { position: absolute; z-index: 1; bottom: 1.7rem; left: clamp(1.3rem, 4vw, 4.5rem); right: clamp(1.3rem, 4vw, 4.5rem); display: flex; justify-content: space-between; align-items: center; font-size: .68rem; letter-spacing: .08em; }.hero-bottom p { margin: 0; }.hero-bottom span { display: flex; align-items: center; gap: .65rem; }.hero-bottom i { font-style: normal; color: var(--clay); font-size: 1rem; }

.section-pad { padding: clamp(6rem, 12vw, 11.5rem) clamp(1.3rem, 8vw, 10rem); }.section-label { display: flex; align-items: center; gap: .9rem; font-size: .64rem; font-weight: 700; letter-spacing: .16em; }.section-label span { color: var(--clay); }.section-label p { margin: 0; }.section-label::after { content: ''; width: 38px; height: 1px; background: currentColor; opacity: .65; }.eyebrow { margin-bottom: 1.45rem; color: var(--clay); font-size: .65rem; font-weight: 700; letter-spacing: .18em; }
.intro { position: relative; overflow: hidden; }.intro .section-label { margin-bottom: clamp(5rem, 9vw, 8rem); }.intro-layout { display: grid; grid-template-columns: 1.4fr .72fr; gap: 9vw; align-items: end; }.intro h2, .rooms h2, .gallery h2, .visit h2, .contact h2, .experience h2 { margin-bottom: 0; font-size: clamp(3.2rem, 6.2vw, 7rem); }.intro h2 em, .rooms h2 em, .gallery h2 em, .visit h2 em, .contact h2 em, .experience h2 em { color: var(--moss); }.intro-copy { max-width: 355px; padding-bottom: .65rem; }.intro-copy p { margin-bottom: 1.25rem; color: #596159; font-size: .95rem; line-height: 2; }.text-link { display: inline-flex; gap: .85rem; align-items: center; margin-top: .75rem; padding-bottom: .35rem; border-bottom: 1px solid var(--ink); font-size: .8rem; font-weight: 700; }.text-link span { color: var(--clay); font-size: 1.25rem; transition: transform .25s var(--ease); }.text-link:hover span { transform: translateX(.4rem); }.intro-ornament { position: absolute; right: clamp(1rem, 5vw, 5rem); bottom: 1.5rem; display: flex; flex-direction: column; align-items: center; gap: 1rem; color: #b9beaf; }.intro-ornament span { font-family: var(--display); font-size: 1.15rem; transform: rotate(-12deg); }.intro-ornament i { color: var(--clay); font-size: 2rem; font-style: normal; }

.rooms { background: var(--deep); color: #f5f1e9; overflow: hidden; }.rooms-head { display: grid; grid-template-columns: .45fr 1.55fr .7fr; gap: 2rem; align-items: end; margin-bottom: clamp(4rem, 8vw, 7rem); }.rooms .section-label { color: rgba(255,255,255,.78); }.rooms .section-label span { color: #ddb688; }.rooms h2 em { color: #d7b186; }.head-note { margin: 0; color: rgba(255,255,255,.62); font-size: .85rem; line-height: 1.95; }.room-list { display: grid; grid-template-columns: 1.25fr .82fr 1fr; gap: clamp(1rem, 2.5vw, 2.7rem); align-items: start; }.room-card { overflow: hidden; }.room-card--tall { margin-top: 7rem; }.room-card--offset { margin-top: 2.3rem; }.room-image { position: relative; overflow: hidden; background: #455144; }.room-card--wide .room-image { aspect-ratio: 1.06/1; }.room-card--tall .room-image { aspect-ratio: .85/1; }.room-card--offset .room-image { aspect-ratio: 1/1; }.room-image::after { position: absolute; inset: 0; content: ''; background: linear-gradient(0deg, rgba(8,18,12,.22), transparent 50%); }.room-image img { height: 100%; object-fit: cover; transition: transform .9s var(--ease); }.room-card:hover .room-image img { transform: scale(1.07); }.room-meta { display: grid; grid-template-columns: 26px 1fr 25px; gap: .8rem; padding-top: 1.15rem; align-items: start; }.room-meta > span { color: #d7b186; font-size: .65rem; }.room-meta h3 { margin: -.22rem 0 .15rem; font-family: var(--display); font-size: 1.62rem; font-weight: 400; letter-spacing: -.03em; }.room-meta p { margin: 0; color: rgba(255,255,255,.64); font-size: .75rem; }.room-meta b { display: grid; place-items: center; width: 25px; height: 25px; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; font-size: .8rem; font-weight: 400; transition: background .25s, color .25s; }.room-card:hover .room-meta b { color: var(--ink); background: #f5f1e9; }

.quote-panel { position: relative; display: grid; min-height: 520px; place-content: center; padding: 3rem 1.5rem; overflow: hidden; color: var(--paper); background: var(--moss); text-align: center; }.quote-panel::before { position: absolute; content: 'REST'; top: 50%; left: 50%; color: rgba(255,255,255,.05); font-family: var(--display); font-size: min(42vw, 33rem); line-height: 1; transform: translate(-50%, -47%); }.quote-panel p { position: relative; margin: 0 0 2rem; font-family: var(--display); font-size: clamp(2.25rem, 4.4vw, 4.7rem); line-height: 1.2; letter-spacing: -.045em; }.quote-panel p span { color: #e8dfc7; }.quote-panel small { position: relative; font-size: .61rem; letter-spacing: .16em; }.quote-star { position: relative; margin-bottom: 2rem; color: #e8dfc7; font-size: 2.4rem; }

.experience { background: var(--paper-2); }.experience-feature { display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; max-width: 1220px; margin: auto; }.experience-image { height: min(55vw, 680px); overflow: hidden; }.experience-image img { height: 100%; object-fit: cover; filter: saturate(.74); }.experience-copy { padding: clamp(2rem, 8vw, 8rem); }.experience-copy > p:not(.eyebrow) { max-width: 340px; margin: 2rem 0 0; color: #5a625b; line-height: 2; }.experience-strip { display: grid; grid-template-columns: repeat(3, 1fr); max-width: 1220px; margin: 0 auto; border-top: 1px solid var(--line); }.experience-strip article { min-height: 190px; padding: 2rem 1.8rem 1rem 0; border-right: 1px solid var(--line); }.experience-strip article:not(:first-child) { padding-left: 1.8rem; }.experience-strip article:last-child { border: 0; }.experience-strip span { color: var(--clay); font-size: .67rem; }.experience-strip h3 { margin: 1.1rem 0 .45rem; font-size: 1rem; }.experience-strip p { margin: 0; color: #677067; font-size: .78rem; line-height: 1.75; }

.gallery { overflow: hidden; }.gallery-head { display: grid; grid-template-columns: .7fr 1.45fr .7fr; align-items: end; gap: 2rem; margin-bottom: clamp(3.2rem, 6vw, 6rem); }.gallery-head > p { margin: 0; color: #7b8078; font-size: .77rem; }.gallery-grid { display: grid; grid-template-columns: 1.18fr .82fr .78fr; grid-template-rows: 250px 250px; gap: 1.3rem; max-width: 1320px; margin: auto; }.gallery-item { position: relative; padding: 0; overflow: hidden; text-align: left; background: var(--ink); }.gallery-item img { height: 100%; object-fit: cover; opacity: .9; transition: transform .7s var(--ease), opacity .5s; }.gallery-item:hover img { opacity: 1; transform: scale(1.06); }.gallery-item::after { position: absolute; content: ''; inset: 0; background: linear-gradient(0deg, rgba(14,25,18,.56), transparent 55%); }.gallery-item span { position: absolute; z-index: 1; left: 1.3rem; bottom: 1.1rem; color: #fff; font-size: .75rem; font-weight: 600; }.gallery-item--1 { grid-row: 1 / 3; }.gallery-item--3 { grid-column: 2; }.gallery-item--4 { grid-column: 3; grid-row: 2; }.gallery-quote { display: flex; flex-direction: column; justify-content: center; padding: 1.6rem; color: var(--paper); background: var(--clay); }.gallery-quote i { display: block; color: rgba(255,255,255,.6); font-family: var(--display); font-size: 3rem; font-style: normal; line-height: .7; }.gallery-quote p { margin: 1rem 0 0; font-size: 1.2rem; font-weight: 600; line-height: 1.55; }.gallery-quote em { font-family: var(--display); font-size: 1.35rem; font-weight: 400; }

.visit { display: grid; grid-template-columns: 1fr .92fr; gap: clamp(2rem, 9vw, 11rem); align-items: center; background: #d9dfd1; }.visit-map { position: relative; height: min(45vw, 580px); overflow: hidden; background: #c9d0c2; }.visit-map::before { position: absolute; inset: 0; content: ''; opacity: .44; background-image: radial-gradient(#758273 1px, transparent 1px); background-size: 10px 10px; }.map-line { position: absolute; height: 1px; background: #7c8a78; transform-origin: left; }.map-line--1 { width: 120%; left: -5%; top: 32%; transform: rotate(25deg); }.map-line--2 { width: 110%; left: 12%; top: 58%; transform: rotate(-40deg); }.map-line--3 { width: 70%; left: -10%; top: 72%; transform: rotate(-9deg); }.map-line--4 { width: 73%; left: 47%; top: 5%; transform: rotate(83deg); }.map-dot { position: absolute; top: 44%; left: 51%; display: flex; align-items: center; gap: .8rem; color: var(--deep); font-size: .77rem; font-weight: 700; }.map-dot i { display: block; width: 18px; height: 18px; border: 5px solid var(--clay); border-radius: 50%; background: var(--paper); box-shadow: 0 0 0 6px rgba(189,91,57,.18); }.visit-map > p { position: absolute; right: 1.6rem; bottom: 1.3rem; margin: 0; color: #6f7e6c; font-family: var(--display); font-size: 1.55rem; line-height: .9; text-align: right; }.visit .section-label { margin-bottom: clamp(3.5rem, 7vw, 6rem); }.visit-content .eyebrow { margin-bottom: 1rem; }.visit address { margin: 2.5rem 0 1.3rem; font-size: 1rem; font-style: normal; line-height: 1.9; }.map-link { display: inline-flex; align-items: center; gap: .8rem; padding: .9rem 1.1rem; color: var(--paper); background: var(--ink); font-size: .76rem; font-weight: 600; transition: background .25s, transform .25s; }.map-link span { font-size: 1rem; }.map-link:hover { background: var(--clay); transform: translateY(-3px); }.visit-help { margin: 1.1rem 0 0; color: #647060; font-size: .72rem; }

.contact { color: var(--paper); background: var(--ink); }.contact-inner { display: grid; grid-template-columns: 1.2fr .8fr; gap: 6rem; max-width: 1250px; margin: auto; align-items: end; }.contact h2 em { color: #d8bd94; }.contact-actions { padding-bottom: .7rem; }.contact-actions > p { color: rgba(255,255,255,.7); font-size: .93rem; line-height: 2; }.email-button { display: flex; align-items: center; justify-content: space-between; width: 100%; margin-top: 1.8rem; padding: 1rem 0; color: var(--paper); border-bottom: 1px solid rgba(255,255,255,.62); background: transparent; text-align: left; font-family: var(--display); font-size: clamp(1.35rem, 2vw, 2.2rem); transition: color .25s; }.email-button b { display: grid; flex: 0 0 auto; place-items: center; width: 32px; height: 32px; border: 1px solid currentColor; border-radius: 50%; font-family: var(--sans); font-size: 1rem; font-weight: 400; }.email-button:hover { color: #d8bd94; }.copy-status { display: block; min-height: 1.2em; margin-top: .8rem; color: #d8bd94; font-size: .7rem; }

.site-footer { padding: 4rem clamp(1.3rem, 8vw, 10rem) 1.7rem; color: var(--paper); background: #111b15; }.footer-main { display: grid; grid-template-columns: 1fr 1fr auto; align-items: center; padding-bottom: 4rem; border-bottom: 1px solid rgba(255,255,255,.19); }.wordmark--footer { font-size: 1.62rem; }.footer-main > p { margin: 0; color: rgba(255,255,255,.55); font-family: var(--display); font-size: 1.25rem; }.footer-star { color: var(--clay); font-size: 2rem; }.footer-info { display: grid; grid-template-columns: .8fr .7fr 1fr 1.5fr 1fr; gap: 2rem; padding: 2.7rem 0; border-bottom: 1px solid rgba(255,255,255,.19); }.footer-info span { display: block; margin-bottom: .62rem; color: rgba(255,255,255,.45); font-size: .57rem; letter-spacing: .13em; }.footer-info p { margin: 0; font-size: .72rem; line-height: 1.8; word-break: keep-all; }.footer-bottom { display: flex; justify-content: space-between; padding-top: 1.4rem; color: rgba(255,255,255,.46); font-size: .6rem; letter-spacing: .07em; }.footer-bottom a { color: rgba(255,255,255,.74); }

.lightbox { width: min(90vw, 1000px); max-width: none; max-height: 92vh; padding: 0; border: 0; background: transparent; }.lightbox::backdrop { background: rgba(8,15,10,.9); backdrop-filter: blur(7px); }.lightbox figure { margin: 0; }.lightbox figure img { max-height: 82vh; object-fit: contain; }.lightbox figcaption { padding: .85rem 0; color: #fff; font-size: .82rem; text-align: center; }.lightbox-close { position: fixed; top: 1.5rem; right: 1.5rem; display: grid; width: 42px; height: 42px; place-items: center; padding: 0; color: #fff; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; background: transparent; font-size: 1.8rem; line-height: 1; }

[data-reveal] { opacity: 0; transform: translateY(22px); transition: opacity .9s var(--ease), transform .9s var(--ease); }[data-reveal].is-visible { opacity: 1; transform: translateY(0); }
@keyframes hero-zoom { from { transform: scale(1.08); } to { transform: scale(1); } }

@media (max-width: 860px) {
  .site-header { height: 73px; }.desktop-nav, .header-cta { display: none; }.menu-toggle { display: flex; position: relative; z-index: 3; flex-direction: column; justify-content: center; gap: 6px; width: 35px; height: 35px; padding: 5px; color: white; background: transparent; }.menu-toggle i { display: block; width: 100%; height: 1px; background: currentColor; transition: transform .25s, opacity .2s; }.menu-toggle[aria-expanded='true'] i:first-of-type { transform: translateY(3.5px) rotate(45deg); }.menu-toggle[aria-expanded='true'] i:last-of-type { transform: translateY(-3.5px) rotate(-45deg); }.mobile-menu { position: fixed; z-index: 2; inset: 0; display: flex; visibility: hidden; flex-direction: column; align-items: flex-start; justify-content: center; gap: 1.7rem; padding: 2rem; color: var(--ink); background: var(--paper); opacity: 0; pointer-events: none; transition: opacity .3s, visibility .3s; }.mobile-menu.is-open { visibility: visible; opacity: 1; pointer-events: auto; }.mobile-menu a { font-family: var(--display); font-size: clamp(2.4rem, 10vw, 4.5rem); line-height: 1; }.hero { min-height: 680px; }.hero-grid { inset: 73px 0 0; background: linear-gradient(90deg, transparent 49.8%, rgba(255,255,255,.13) 50%, transparent 50.2%); }.hero-copy { top: 48%; left: 1.3rem; transform: translateY(-34%); }.hero-side-note { right: .7rem; }.hero-bottom { bottom: 1.2rem; left: 1.3rem; right: 1.3rem; }.hero-bottom p { display: none; }.hero-bottom span { margin-left: auto; }.section-pad { padding-left: 1.3rem; padding-right: 1.3rem; }.intro-layout, .experience-feature, .visit, .contact-inner { grid-template-columns: 1fr; }.intro-layout { gap: 2.5rem; }.intro-copy { max-width: 510px; }.rooms-head { grid-template-columns: 1fr; gap: 1.5rem; }.head-note { display: none; }.room-list { grid-template-columns: 1fr 1fr; }.room-card--wide { grid-column: 1 / 3; }.room-card--wide .room-image { aspect-ratio: 1.65/1; }.room-card--tall, .room-card--offset { margin-top: 0; }.experience-feature { gap: 0; }.experience-image { height: 80vw; max-height: none; }.experience-copy { padding: 3.5rem 1rem 1rem; }.experience-strip { margin-top: 3.5rem; }.gallery-head { grid-template-columns: 1fr; gap: 1.5rem; }.gallery-grid { grid-template-columns: 1.2fr .8fr; grid-template-rows: 280px 210px 240px; gap: .8rem; }.gallery-item--1 { grid-row: 1 / 3; }.gallery-item--2 { grid-column: 2; }.gallery-quote { grid-column: 2; grid-row: 2; }.gallery-item--3 { grid-column: 1; grid-row: 3; }.gallery-item--4 { grid-column: 2; grid-row: 3; }.visit { gap: 3.5rem; }.visit-map { height: 70vw; }.contact-inner { gap: 2.8rem; }.footer-info { grid-template-columns: 1fr 1fr; }.footer-main { grid-template-columns: 1fr auto; }.footer-main > p { display: none; }
}
@media (max-width: 520px) {
  .wordmark { font-size: 1.22rem; }.hero h1 { font-size: clamp(3.7rem, 16vw, 5.1rem); }.hero-lead { font-size: .84rem; }.circle-link { width: 106px; height: 106px; }.hero-side-note { display: none; }.intro .section-label { margin-bottom: 4rem; }.intro h2, .rooms h2, .gallery h2, .visit h2, .contact h2, .experience h2 { font-size: clamp(2.85rem, 14vw, 4.3rem); }.intro-ornament { display: none; }.room-list { display: block; }.room-card { margin-bottom: 2.7rem; }.room-card--wide .room-image, .room-card--tall .room-image, .room-card--offset .room-image { aspect-ratio: 1.15/1; }.quote-panel { min-height: 390px; }.quote-panel p { font-size: 2.2rem; }.experience-strip { grid-template-columns: 1fr; }.experience-strip article, .experience-strip article:not(:first-child) { min-height: auto; padding: 1.55rem 0; border-right: 0; border-bottom: 1px solid var(--line); }.experience-strip article:last-child { border-bottom: 0; }.gallery-grid { grid-template-columns: 1fr 1fr; grid-template-rows: 245px 180px 195px; }.gallery-quote { padding: 1rem; }.gallery-quote p { font-size: 1rem; }.visit-map { height: 88vw; }.footer-main { padding-bottom: 2.5rem; }.footer-info { grid-template-columns: 1fr; gap: 1.35rem; }.footer-info div { display: grid; grid-template-columns: 132px 1fr; gap: .5rem; }.footer-info span { margin: 0; }.footer-bottom { flex-direction: column; gap: .5rem; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; } }
