/* Prompt 5: background-only refinements to existing light sections. */
.specialties { background-image: radial-gradient(ellipse at 50% 15%,#fffaf0,transparent 65%),url('../assets/decor/light-arabesque.svg'); background-size:auto,240px 240px; background-color:var(--cream); }
.about { background-image:linear-gradient(90deg,transparent 45%,#fff6e5e8 70%),url('../assets/decor/light-arabesque.svg'); background-size:auto,280px 280px; }
.about-content::before { content:"";position:absolute;z-index:-1;right:0;bottom:0;width:230px;height:170px;background:url('../assets/decor/tea-outline.svg') bottom right/contain no-repeat;pointer-events:none; }
.gallery { position:relative;isolation:isolate;overflow:hidden;padding-block:56px 46px;background:var(--green);color:var(--cream); }
.gallery::before,.gallery::after { content:"";position:absolute;inset-block:0;width:130px;z-index:-1;pointer-events:none;background:url('../assets/decor/light-arabesque.svg') center/220px repeat-y;opacity:.6; }
.gallery::before { left:0; }.gallery::after { right:0; }
.gallery-heading { text-align:center;margin-bottom:30px; }
.gallery-kicker { display:flex;align-items:center;justify-content:center;gap:16px;margin:0 0 12px;color:var(--gold-light);font-size:12px;font-weight:700;letter-spacing:.16em; }
.gallery-kicker::before,.gallery-kicker::after { content:"";width:46px;height:1px;background:var(--gold);opacity:.7; }
.gallery-heading h2 { margin:0 0 10px;font-family:var(--font-heading);font-size:clamp(28px,3vw,40px);font-weight:400;line-height:1.25; }
.gallery-heading>p:last-child { margin:0;font-size:15px;color:#e7dfcd; }
.gallery-track { display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#d6a53a66 transparent;margin:0;padding:4px 0 12px;list-style:none; }
.gallery-item { position:relative;flex:0 0 calc((100% - 72px)/5);min-width:0;height:210px;overflow:hidden;scroll-snap-align:start;border:1px solid #d6a53ab3;border-radius:7px;background:#075445;transition:border-color .2s; }
.gallery-item img { width:100%;height:100%;object-fit:cover;object-position:center 38%;transition:transform .25s; }
.gallery-item.is-selected { border-color:var(--gold-light); }
.gallery-placeholder { display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;height:100%;padding:18px;text-align:center;background:linear-gradient(145deg,#075445,#003d32);color:var(--cream); }
.gallery-placeholder svg { width:32px;height:32px;fill:none;stroke:var(--gold);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round; }
.gallery-placeholder span { font-family:var(--font-heading);font-size:20px;line-height:1.25; }.gallery-placeholder small { color:#e7dfcd;font-size:12px; }
.gallery-pagination { display:flex;justify-content:center;gap:2px;margin-top:14px; }
.gallery-dot { display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:0;background:transparent;cursor:pointer; }
.gallery-dot::before { content:"";width:8px;height:8px;border-radius:50%;background:#abae9e; }
.gallery-dot[aria-current="true"]::before { background:var(--gold-light); }
@media(hover:hover){.gallery-item:hover{border-color:var(--gold-light)}.gallery-item:hover img{transform:scale(1.035)}}
@media(max-width:1100px){.gallery-item{flex-basis:calc((100% - 36px)/3);height:240px}}
@media(max-width:850px){.gallery-item{flex-basis:calc((100% - 18px)/2);height:250px}}
@media(max-width:600px){.gallery{padding-block:42px 34px}.gallery-item{flex-basis:100%;height:300px}.gallery-heading{margin-bottom:24px}.gallery-heading>p:last-child{font-size:14px}}
@media(prefers-reduced-motion:reduce){.gallery-item,.gallery-item img{transition:none}.gallery-item:hover img{transform:none}}
