/* Clover Blues — colours come from Tatiana's own canvases (navy, bubblegum, sky) plus a clover green and a cobalt "blues". */
@font-face { font-family:"Young Serif"; src:url(fonts/young-serif-latin-400-normal.woff2) format("woff2"); font-weight:400; font-display:swap; }
@font-face { font-family:"Hanken Grotesk"; src:url(fonts/hanken-grotesk-latin-wght-normal.woff2) format("woff2-variations"); font-weight:100 900; font-display:swap; }
@font-face { font-family:"Hanken Grotesk"; src:url(fonts/hanken-grotesk-latin-wght-italic.woff2) format("woff2-variations"); font-weight:100 900; font-style:italic; font-display:swap; }

:root {
  --cream:#fff6e9; --ink:#17140f; --cobalt:#2446ff; --clover:#0f9d58; --pink:#ff9fcb;
  --butter:#ffd44a; --sky:#8fd6ff; --tomato:#ff5a36; --sun:#ffcf3f;
  --serif:"Young Serif", Georgia, serif; --sans:"Hanken Grotesk", system-ui, sans-serif;
  --pop: 4px 4px 0 var(--ink);
  --ease: cubic-bezier(.2,.8,.2,1);
}
*, *::before, *::after { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:5rem; }
body { margin:0; background:var(--cream); color:var(--ink); font:400 1.0625rem/1.55 var(--sans); -webkit-font-smoothing:antialiased; }
img { max-width:100%; display:block; }
h1, h2, h3 { font-family:var(--serif); font-weight:400; line-height:1.02; margin:0; letter-spacing:-.01em; }
p { margin:0 0 1em; }
a { color:inherit; }
button { font:inherit; color:inherit; cursor:pointer; }
:focus-visible { outline:3px solid var(--cobalt); outline-offset:3px; }
.skip { position:absolute; left:-999px; top:0; } .skip:focus { left:1rem; z-index:99; background:var(--cream); padding:.5rem 1rem; }

section { padding:clamp(4rem,9vw,8rem) clamp(1.25rem,5vw,4.5rem); position:relative; }
.section-head { max-width:46rem; margin-bottom:clamp(2.5rem,5vw,4rem); }
.section-head h2 { font-size:clamp(2.6rem,6.5vw,5.5rem); }
.section-head p { font-size:1.2rem; margin-top:1rem; max-width:34rem; }
.eyebrow { font-weight:700; letter-spacing:.02em; font-size:1rem; margin-bottom:1rem; }

/* pills: chunky, with a hard offset shadow on hover */
.pill { display:inline-flex; align-items:center; gap:.5em; padding:.85em 1.4em; border-radius:999px; background:var(--cobalt); color:#fff;
  font-weight:700; text-decoration:none; border:2px solid var(--ink); transition:transform .2s var(--ease), box-shadow .2s var(--ease); white-space:nowrap; }
.pill:hover { transform:translate(-2px,-2px); box-shadow:var(--pop); }
.pill:active { transform:none; box-shadow:none; }
.pill--ink { background:var(--ink); color:var(--cream); }
.pill--cream { background:var(--cream); color:var(--ink); }
.pill--big { font-size:1.15rem; padding:1em 1.7em; }
.pill--sm { padding:.6em 1.1em; font-size:.95rem; }
.link { font-weight:700; text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:.25em; }

/* header */
.top { position:sticky; top:0; z-index:20; display:flex; align-items:center; gap:2rem; padding:.8rem clamp(1.25rem,5vw,4.5rem);
  background:color-mix(in srgb, var(--cream) 88%, transparent); backdrop-filter:blur(10px); border-bottom:2px solid var(--ink); }
.logo { font-family:var(--serif); font-size:1.55rem; text-decoration:none; }
.logo em, .foot__mark em { font-style:normal; color:var(--cobalt); }
.top__nav { display:flex; gap:1.6rem; margin-left:auto; font-weight:600; }
.top__nav a { text-decoration:none; } .top__nav a:hover { text-decoration:underline; text-underline-offset:.3em; }
@media (max-width:860px) { .top__nav { display:none; } .top .pill { margin-left:auto; } }

/* ---------- hero ---------- */
.hero { --bg:#2d3f6a; --fg:var(--cream); --accent:var(--butter);
  background:var(--bg); color:var(--fg); transition:background-color .9s var(--ease), color .9s var(--ease);
  min-height:calc(100svh - 4rem); display:grid; grid-template-columns:1.1fr .9fr; align-items:center; gap:clamp(2rem,5vw,5rem); overflow:hidden; }
.hero[data-tone="dark"] { --fg:var(--ink); --accent:var(--cobalt); }
.hero__status { display:inline-flex; align-items:center; gap:.6rem; font-weight:700; padding:.45rem .9rem; border-radius:999px;
  border:2px solid currentColor; margin-bottom:1.8rem; }
.dot { width:.65rem; height:.65rem; border-radius:50%; background:#2ee07a; box-shadow:0 0 0 0 #2ee07a99; animation:ping 2s infinite; }
@keyframes ping { 70% { box-shadow:0 0 0 .6rem #2ee07a00; } 100% { box-shadow:0 0 0 0 #2ee07a00; } }
.hero__title { font-size:clamp(3.2rem,8.2vw,7.6rem); line-height:.95; }
.hero__title span { display:block; color:var(--accent); transition:color .9s var(--ease); }
.hero__lead { font-size:clamp(1.1rem,1.6vw,1.35rem); max-width:32rem; margin:1.8rem 0 2.2rem; }
.hero__cta { display:flex; flex-wrap:wrap; align-items:center; gap:1.4rem; }
.hero .pill { background:var(--accent); color:var(--bg); border-color:var(--fg); transition:transform .2s var(--ease), box-shadow .2s var(--ease), background-color .9s, color .9s; }
.hero .pill:hover { box-shadow:4px 4px 0 var(--fg); }

.hero__art { margin:0; justify-self:center; width:min(100%,30rem); position:relative; }
.hero__stack { position:relative; aspect-ratio:3/4; rotate:-2.5deg; }
.hero__img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; scale:1.04;
  transition:opacity .9s var(--ease), scale 1.4s var(--ease);
  box-shadow: 10px 0 0 -2px color-mix(in srgb, var(--bg) 70%, #000), 0 2.5rem 4rem -1.2rem #0008; }
.hero__img.is-on { opacity:1; scale:1; }
.plaque { position:absolute; right:-1rem; bottom:-1.6rem; background:var(--cream); color:var(--ink); padding:.8rem 1.1rem; border-radius:6px;
  box-shadow:0 .8rem 1.6rem -.6rem #0006; display:grid; line-height:1.3; rotate:1.5deg; min-width:11rem; border:2px solid var(--ink); }
.plaque__name { font-family:var(--serif); font-weight:400; font-size:1.35rem; }
.plaque__kind, .plaque__medium { font-size:.85rem; }
.plaque__medium { opacity:.7; }
.hero__dots { position:absolute; left:50%; bottom:1.5rem; translate:-50% 0; display:flex; gap:.6rem; }
.hero__dots button { width:.9rem; height:.9rem; border-radius:50%; border:2px solid var(--fg); background:transparent; padding:0; }
.hero__dots button[aria-pressed="true"] { background:var(--fg); }
@media (max-width:860px) {
  .hero { grid-template-columns:1fr; padding-top:2.5rem; padding-bottom:5rem; }
  .hero__art { width:min(80%,22rem); }
  .plaque { right:-.5rem; }
}

/* ---------- ribbon ---------- */
.ribbon { list-style:none; margin:0; padding:1.1rem clamp(1.25rem,5vw,4.5rem); background:var(--ink); color:var(--cream);
  display:flex; flex-wrap:wrap; justify-content:space-between; gap:.6rem 2rem; font-size:1.05rem; }
.ribbon b { font-family:var(--serif); font-weight:400; color:var(--butter); }

/* ---------- the wall ---------- */
.wall { background:var(--sun);
  background-image: radial-gradient(circle at 20% 10%, #fff3 0, transparent 40%), radial-gradient(circle at 85% 70%, #e8a80033 0, transparent 45%); }
.salon { columns:3 16rem; column-gap:clamp(2rem,4vw,4rem); }
.frame { display:block; width:100%; margin:0 auto clamp(3.5rem,6vw,5rem); break-inside:avoid; border:0; padding:clamp(10px,1.2vw,16px);
  position:relative; background:#141414; box-shadow:0 2px 0 #0002, 0 1.6rem 2.4rem -1rem #7a4d0088;
  transition:rotate .5s var(--ease), translate .5s var(--ease), box-shadow .5s var(--ease); }
.frame img { width:100%; height:auto; box-shadow:inset 0 0 0 1px #0003; }
.frame--oak { background:linear-gradient(135deg,#e2b27a,#b47b45 40%,#d9a467 70%,#a86f3b); }
.frame--white { background:#fbfaf7; padding:clamp(18px,2.4vw,30px); box-shadow:0 2px 0 #0001, 0 1.6rem 2.4rem -1rem #7a4d0077, inset 0 0 0 6px #fff, inset 0 0 0 7px #0001; }
.t-l { rotate:-1.6deg; } .t-r { rotate:1.3deg; } .t-s { rotate:.4deg; width:82%; }
.frame:hover, .frame:focus-visible { rotate:0deg; translate:0 -6px; box-shadow:0 2px 0 #0002, 0 2.4rem 3rem -1rem #7a4d00aa; }
.tag { position:absolute; left:50%; bottom:-2.1rem; translate:-50% 0; font-family:var(--serif); font-size:.9rem; white-space:nowrap;
  background:linear-gradient(#f3e3ae,#d8bf74); padding:.2rem .8rem; border-radius:3px; box-shadow:0 2px 4px #0003; }
.wall__more { font-weight:600; font-size:1.1rem; }

.look { position:fixed; border:2px solid var(--ink); border-radius:24px; padding:0; max-width:min(64rem,94vw); max-height:92vh; background:var(--cream); color:var(--ink);
  display:grid; grid-template-columns:minmax(0,1.3fr) minmax(14rem,.7fr); overflow:hidden; }
.look:not([open]) { display:none; }
.look::backdrop { background:#17140fcc; backdrop-filter:blur(6px); }
.look__img { width:100%; height:100%; max-height:92vh; object-fit:contain; background:#efe6d6; }
.look__label { padding:2rem; align-self:end; }
.look__label h3 { font-size:2.6rem; }
.look__kind { margin:.4rem 0 1.6rem; }
.look > form { position:absolute; top:.8rem; right:.8rem; z-index:2; margin:0; }
.look__close { width:2.6rem; height:2.6rem; border-radius:50%; border:2px solid var(--ink); background:var(--cream); font-size:1.5rem; line-height:1; }
@media (max-width:700px) { .look { grid-template-columns:1fr; } .look__img { max-height:62vh; } .look__label { padding:1.4rem; } }

/* ---------- size picker ---------- */
.sizes { background:var(--pink); }
.room { --wall:#ffe9a8; position:relative; border:2px solid var(--ink); border-radius:28px; overflow:hidden; background:var(--wall); transition:background-color .5s; box-shadow:var(--pop); }
/* the scene is 120 × 73 inches of wall; 1in = 100cqw / 120. Canvas hangs 7in above the sofa back. */
.room__scene { --span:120; --in:calc(100cqw / var(--span)); container-type:inline-size; position:relative; aspect-ratio:120/73;
  background:linear-gradient(to top, #b98552 0 calc(6 * var(--in)), #8f5f33 0 calc(6.6 * var(--in)), transparent 0); }
.room__sofa { position:absolute; left:50%; translate:-50% 0; bottom:calc(6 * var(--in)); width:calc(84 * var(--in)); height:calc(34 * var(--in)); }
.room__canvas { position:absolute; left:50%; translate:-50% 0; bottom:calc(47 * var(--in));
  width:calc(var(--w) * var(--in)); height:calc(var(--h) * var(--in));
  transition:width .6s var(--ease), height .6s var(--ease); box-shadow:calc(.4 * var(--in)) calc(.8 * var(--in)) calc(1.5 * var(--in)) #0005; }
.room__canvas img { width:100%; height:100%; object-fit:cover; }
.room__swatches { position:absolute; top:1rem; right:1rem; display:flex; gap:.5rem; background:#fffb; padding:.45rem; border-radius:999px; border:2px solid var(--ink); }
.room__swatches button { width:1.9rem; height:1.9rem; border-radius:50%; background:var(--c); border:2px solid var(--ink); padding:0; }
.room__swatches button[aria-pressed="true"] { box-shadow:0 0 0 3px var(--cream), 0 0 0 5px var(--ink); }
@media (max-width:700px) { .room__scene { --span:92; aspect-ratio:92/77; } }

.picker { display:grid; grid-template-columns:repeat(6,1fr); gap:.8rem; margin:2rem 0 1.4rem; }
.picker button { border:2px solid var(--ink); border-radius:18px; background:var(--cream); padding:1rem .6rem; display:grid; gap:.15rem; transition:transform .2s var(--ease), box-shadow .2s var(--ease); }
.picker b { font-family:var(--serif); font-weight:400; font-size:clamp(1.15rem,2vw,1.6rem); }
.picker button:hover { transform:translate(-2px,-2px); box-shadow:var(--pop); }
.picker button[aria-checked="true"] { background:var(--ink); color:var(--cream); }
@media (max-width:700px) { .picker { grid-template-columns:repeat(3,1fr); } }
.quote-line { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem; }
.quote-line p { margin:0; font-size:clamp(1.2rem,2.4vw,1.7rem); }
.quote-line b { font-family:var(--serif); font-weight:400; }
.fineprint { margin-top:1.4rem; max-width:44rem; }

/* ---------- steps ---------- */
.steps__row { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(5,1fr); gap:1rem; }
.steps__row li { background:var(--c); border:2px solid var(--ink); border-radius:28px; padding:1.6rem 1.4rem; min-height:16rem; display:flex; flex-direction:column;
  transition:transform .3s var(--ease), box-shadow .3s var(--ease); }
.steps__row li:nth-child(odd) { rotate:-1deg; } .steps__row li:nth-child(even) { rotate:1deg; translate:0 1.2rem; }
.steps__row li:hover { transform:translate(-3px,-3px); box-shadow:var(--pop); }
.steps__row span { font-family:var(--serif); font-size:3.6rem; line-height:1; margin-bottom:auto; }
.steps__row h3 { font-size:1.55rem; margin:1.2rem 0 .5rem; }
.steps__row p { margin:0; }
@media (max-width:960px) {
  .steps__row { grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:min(78vw,18rem); overflow-x:auto; scroll-snap-type:x mandatory; padding:1rem .25rem 2.5rem; }
  .steps__row li { scroll-snap-align:start; }
}

/* ---------- about + memorial ---------- */
.review { padding-top:clamp(2rem,5vw,4rem); }
.review figure { margin:0 auto; max-width:52rem; background:var(--pink); border:2px solid var(--ink); border-radius:28px; box-shadow:8px 8px 0 var(--ink);
  padding:clamp(1.8rem,4.5vw,3.4rem); rotate:-.6deg; }
.review blockquote { margin:0; }
.review blockquote p { font-family:var(--serif); font-size:clamp(1.3rem,2.6vw,1.9rem); line-height:1.3; margin:0; }
.review figcaption { margin-top:1.4rem; font-weight:700; font-size:1.1rem; }
.review figcaption::before { content:"— "; }
.tyson { background:var(--clover); color:var(--cream); display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(2rem,6vw,6rem); align-items:center; }
.tyson__photo img { border-radius:999px 999px 28px 28px; border:2px solid var(--ink); box-shadow:8px 8px 0 var(--ink); width:100%; max-width:26rem; aspect-ratio:900/1164; height:auto; object-fit:cover; object-position:50% 20%; }
.tyson h2 { font-size:clamp(2.4rem,5.4vw,4.6rem); margin-bottom:1.6rem; }
.tyson__text > p { font-size:1.2rem; max-width:36rem; }
.memorial { background:var(--cream); color:var(--ink); border:2px solid var(--ink); border-radius:24px; padding:1.6rem 1.8rem; margin-top:2rem; max-width:34rem; box-shadow:6px 6px 0 var(--ink); }
.memorial h3 { font-size:1.7rem; margin-bottom:.6rem; }
@media (max-width:860px) { .tyson { grid-template-columns:1fr; } .tyson__photo img { max-width:18rem; } }

/* ---------- ornaments ---------- */
.ornaments { background:var(--tomato); color:var(--cream); display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,6vw,6rem); align-items:center; }
.ornaments h2 { font-size:clamp(2.6rem,6vw,5rem); margin-bottom:1.4rem; }
.ornaments__text > p { font-size:1.2rem; max-width:32rem; }
.holiday { background:#0003; padding:.8rem 1rem; border-radius:14px; }
.ornaments__art { position:relative; aspect-ratio:1; }
.ornaments__art img { position:absolute; border:2px solid var(--ink); box-shadow:6px 6px 0 var(--ink); border-radius:20px; object-fit:cover; height:auto; }
.orn-main { width:62%; left:4%; top:6%; rotate:-4deg; aspect-ratio:1100/1201; }
.orn-p { width:27%; aspect-ratio:1119/1400; animation:sway 5s ease-in-out infinite; transform-origin:50% -20%; }
.p1 { right:2%; top:0; } .p2 { right:6%; top:36%; animation-delay:-1.6s; } .p3 { left:36%; bottom:0; animation-delay:-3.2s; }
@keyframes sway { 50% { rotate:3deg; } 0%,100% { rotate:-3deg; } }
@media (max-width:860px) { .ornaments { grid-template-columns:1fr; } }

.ornaments__more { margin-top:1.4rem; }

/* ---------- FAQ ---------- */
.faq { background:var(--sky); }
.faq__list { display:grid; gap:.9rem; max-width:52rem; }
.faq details { background:var(--cream); border:2px solid var(--ink); border-radius:20px; padding:0 1.4rem; transition:box-shadow .2s var(--ease); }
.faq details[open] { box-shadow:var(--pop); }
.faq summary { cursor:pointer; list-style:none; padding:1.1rem 2rem 1.1rem 0; position:relative; font-family:var(--serif); font-size:clamp(1.15rem,2vw,1.45rem); line-height:1.25; }
.faq summary::-webkit-details-marker { display:none; }
.faq summary::after { content:"+"; position:absolute; right:0; top:50%; translate:0 -50%; font-family:var(--sans); font-weight:700; font-size:1.6rem; }
.faq details[open] summary::after { content:"–"; }
.faq details p { margin:0 0 1.2rem; max-width:44rem; }

/* ---------- inner pages (memorial, ornaments) ---------- */
.page-hero { background:var(--clover); color:var(--cream); display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(2rem,6vw,6rem); align-items:center; }
.page-hero--tomato { background:var(--tomato); }
.page-hero h1 { font-size:clamp(2.8rem,7vw,6rem); line-height:.98; margin-bottom:1.6rem; }
.page-hero__lead { font-size:clamp(1.1rem,1.6vw,1.35rem); max-width:34rem; margin-bottom:2rem; }
.page-hero .pill { background:var(--cream); color:var(--ink); }
.page-hero__art img { width:min(100%,28rem); height:auto; margin-inline:auto; border:2px solid var(--ink); border-radius:24px; box-shadow:8px 8px 0 var(--ink); rotate:2deg; }
.crumbs { font-weight:600; font-size:.95rem; margin-bottom:1.6rem; }
.crumbs a { text-decoration:underline; text-underline-offset:.2em; }
.prose { max-width:44rem; }
.prose h2 { font-size:clamp(2rem,4.5vw,3.4rem); margin:0 0 1.2rem; }
.prose h3 { font-size:1.5rem; margin:2rem 0 .6rem; }
.prose p, .prose li { font-size:1.15rem; }
.prose ul { padding-left:1.2rem; margin:0 0 1em; }
.prose li { margin-bottom:.4rem; }
.band { background:var(--butter); }
.band--pink { background:var(--pink); }
.mini-wall { display:grid; grid-template-columns:repeat(auto-fit,minmax(9rem,1fr)); gap:clamp(1rem,3vw,2rem); margin-top:2.4rem; }
.mini-wall img { width:100%; height:auto; aspect-ratio:4/5; object-fit:cover; border:2px solid var(--ink); border-radius:18px; box-shadow:6px 6px 0 var(--ink); background:#fff; }
.price-list { list-style:none; padding:0; margin:1.4rem 0; display:grid; grid-template-columns:repeat(auto-fit,minmax(9rem,1fr)); gap:.8rem; max-width:44rem; }
.price-list li { border:2px solid var(--ink); border-radius:18px; background:var(--cream); padding:.9rem 1rem; display:grid; font-size:1rem; }
.price-list b { font-family:var(--serif); font-weight:400; font-size:1.4rem; }
.cta-band { background:var(--cobalt); color:#fff; text-align:center; }
.cta-band h2 { font-size:clamp(2.4rem,6vw,4.6rem); margin-bottom:1.2rem; }
.cta-band p { font-size:1.2rem; max-width:34rem; margin:0 auto 2rem; }
.cta-band .pill { background:var(--cream); color:var(--ink); }
@media (max-width:860px) { .page-hero { grid-template-columns:1fr; } .page-hero__art img { width:min(80%,20rem); } }

/* ---------- start ---------- */
.start { background:var(--cobalt); color:#fff; display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(2rem,6vw,6rem); align-items:start; }
.start h2 { font-size:clamp(2.8rem,6.5vw,5.6rem); margin-bottom:1.4rem; }
.start__intro p { font-size:1.2rem; max-width:26rem; }
.form { background:var(--cream); color:var(--ink); border:2px solid var(--ink); border-radius:28px; padding:clamp(1.4rem,3vw,2.4rem); box-shadow:8px 8px 0 var(--ink); display:grid; gap:1.1rem; }
.f2 { display:grid; grid-template-columns:1fr 1fr; gap:1.1rem; }
.form label { display:grid; gap:.4rem; font-weight:700; }
.form input:not([type=checkbox]), .form select, .form textarea { font:inherit; font-weight:400; color:var(--ink); background:#fff; border:2px solid var(--ink); border-radius:14px; padding:.8rem .9rem; width:100%; }
.form input:focus, .form select:focus, .form textarea:focus { outline:none; box-shadow:0 0 0 4px var(--butter); }
.form [aria-invalid="true"] { border-color:var(--tomato); box-shadow:0 0 0 4px #ff5a3633; }
.form .check { display:flex; align-items:center; gap:.6rem; font-weight:600; }
.form .check input { width:1.3rem; height:1.3rem; accent-color:var(--clover); }
.form button { justify-self:start; }
.form button:disabled { opacity:.6; }
.hp { position:absolute; left:-9999px; width:1px; height:1px; }
.form__status { margin:0; font-weight:700; min-height:1.5em; }
.form__status[data-state="error"] { color:#c2280c; } .form__status[data-state="ok"] { color:var(--clover); }
@media (max-width:860px) { .start { grid-template-columns:1fr; } }
@media (max-width:560px) { .f2 { grid-template-columns:1fr; } }

/* ---------- footer ---------- */
.foot { background:var(--ink); color:var(--cream); padding:4rem clamp(1.25rem,5vw,4.5rem) 2rem; }
.foot__mark { font-family:var(--serif); font-size:clamp(4rem,16vw,14rem); line-height:.9; margin:0 0 2rem; }
.foot__mark em { color:#8fa2ff; }
.foot__links { display:flex; flex-wrap:wrap; gap:1rem 2rem; font-weight:700; margin-bottom:1.2rem; }
.foot__links + .foot__small { margin-top:2rem; }
.foot__small { opacity:.7; font-size:.9rem; margin:0; }

/* ---------- reveal ---------- */
.js .rv { opacity:0; translate:0 1.6rem; transition:opacity .8s var(--ease), translate .8s var(--ease), rotate .5s var(--ease), box-shadow .5s var(--ease); }
.js .rv.in { opacity:1; translate:0 0; }
/* frames and step cards already use translate for hover, so they only fade */
.js .rv-fade { opacity:0; transition:opacity .9s var(--ease), rotate .5s var(--ease), translate .5s var(--ease), box-shadow .5s var(--ease), transform .3s var(--ease); }
.js .rv-fade.in { opacity:1; }

@media (prefers-reduced-motion:reduce) {
  *, *::before, *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
  .js .rv, .js .rv-fade { opacity:1; translate:none; }
}

/* phones: two-column wall, smaller portrait */
@media (max-width:700px) {
  .salon { columns:2; column-gap:1.1rem; }
  .frame { margin-bottom:2.8rem; padding:7px; }
  .frame--white { padding:12px; }
  .tag { font-size:.75rem; bottom:-1.8rem; }
  .tyson__photo img { max-width:15rem; aspect-ratio:4/5; margin-inline:auto; }
}
