
* { margin:0; padding:0; box-sizing:border-box; }
:root {
  --bg:#0f0b08; --card:#2b241d; --crease:rgba(0,0,0,0.42); --text:#eaddc6; --muted:#7f6a56;
  --accent:#9c3b1e; --on-acc:#ffffff; --border:rgba(234,221,198,0.12); --soft:rgba(234,221,198,0.06);
  --accsoft:rgba(156,59,30,0.16); --shadow:rgba(0,0,0,0.28); --shadow2:rgba(156,59,30,0.30);
  --rad:8px; --pad:22px;
}
html { scroll-behavior:smooth; }
body { margin:0; color:var(--text); font-family:Georgia, 'Times New Roman', serif; line-height:1.6;
  background:radial-gradient(120% 70% at 50% -6%, var(--accsoft), transparent 55%), var(--bg);
  -webkit-font-smoothing:antialiased; overflow-x:hidden; }
h1,h2 { font-family:Copperplate, 'Copperplate Gothic Light', 'Segoe UI', sans-serif; line-height:1.1; letter-spacing:-.02em; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
.fold-page { max-width:960px; margin:0 auto; padding:0 20px 40px; }

.fdnav { position:sticky; top:0; z-index:50; display:flex; align-items:center; gap:20px;
  padding:16px 4px; backdrop-filter:blur(10px); }
.brand { font-family:Copperplate, 'Copperplate Gothic Light', 'Segoe UI', sans-serif; font-weight:800; font-size:20px;
  display:flex; align-items:center; gap:10px; }
.brand-fold { width:14px; height:14px; background:var(--accent);
  clip-path:polygon(0 0, 100% 0, 100% 100%, 0 70%); }
.fdlinks { display:flex; gap:6px; margin-left:auto; }
.fdlinks a { padding:9px 15px; border-radius:999px; color:var(--muted); font-size:15px;
  transition:background .15s, color .15s; }
.fdlinks a:hover { background:var(--soft); color:var(--text); }

.btn { display:inline-block; border-radius:999px; padding:12px 24px; font-weight:600;
  font-size:15px; cursor:pointer; border:1px solid transparent; font-family:inherit;
  transition:transform .14s, filter .14s; }
.primary { background:var(--accent); color:var(--on-acc); box-shadow:0 12px 26px var(--shadow2); }
.primary:hover { transform:translateY(-3px); filter:brightness(1.05); }
.ghost { background:transparent; color:var(--text); border:1px solid var(--border); }
.ghost:hover { background:var(--soft); transform:translateY(-3px); }

.fd-hero { perspective:1200px; padding:34px 0 20px; }
.fold-hero { transform-origin:top center; transform-style:preserve-3d;
  background:var(--card); border:1px solid var(--border); border-radius:calc(var(--rad) + 4px);
  padding:clamp(28px,5vw,52px); box-shadow:0 26px 60px var(--shadow); }
.kicker { display:inline-block; font-size:13px; font-weight:700; letter-spacing:.14em;
  text-transform:uppercase; color:var(--accent); margin-bottom:14px; }
.fold-hero h1 { font-size:clamp(34px,5.6vw,60px); margin-bottom:16px; }
.fold-hero p { color:var(--muted); font-size:18px; max-width:52ch; margin-bottom:26px; }
.fh-actions { display:flex; gap:12px; flex-wrap:wrap; }

.sec-head { text-align:center; margin:44px 0 22px; }
.tag { display:inline-block; font-size:12px; font-weight:700; letter-spacing:.12em;
  text-transform:uppercase; color:var(--accent); background:var(--accsoft);
  padding:6px 12px; border-radius:999px; margin-bottom:10px; }
.sec-head h2 { font-size:clamp(26px,3.4vw,42px); }

/* ---- accordion fold ---- */
.fold-list { display:flex; flex-direction:column; gap:14px; }
.fold-item { border:1px solid var(--border); border-radius:var(--rad); overflow:hidden;
  background:var(--card); box-shadow:0 10px 26px var(--shadow); }
.fold-head { width:100%; display:flex; align-items:center; gap:16px; padding:20px 22px;
  background:none; border:0; cursor:pointer; font:inherit; color:var(--text); text-align:left; }
.fold-num { font-family:Copperplate, 'Copperplate Gothic Light', 'Segoe UI', sans-serif; font-weight:800; color:var(--accent); font-size:16px;
  min-width:28px; }
.fold-title { font-family:Copperplate, 'Copperplate Gothic Light', 'Segoe UI', sans-serif; font-size:clamp(18px,2.4vw,24px); flex:1; }
.fold-mark { width:32px; height:32px; border-radius:50%; background:var(--accsoft);
  color:var(--accent); display:flex; align-items:center; justify-content:center;
  font-size:22px; transition:transform .3s, background .3s; }
.fold-item.open .fold-mark { transform:rotate(45deg); background:var(--accent); color:var(--on-acc); }

.fold-panel { perspective:1000px; display:grid; grid-template-rows:0fr;
  transition:grid-template-rows .45s ease; }
.fold-item.open .fold-panel { grid-template-rows:1fr; }
.fold-body { overflow:hidden; transform-origin:top center; transform:rotateX(-88deg);
  opacity:0; transition:transform .5s cubic-bezier(.3,.7,.2,1), opacity .4s;
  padding:0 22px; }
.fold-item.open .fold-body { transform:rotateX(0deg); opacity:1; padding:0 22px 24px; }
.fold-body p { color:var(--muted); font-size:16px; margin-bottom:16px; }
.fold-body img { width:100%; aspect-ratio:16/7; object-fit:cover; border-radius:var(--rad);
  border:1px solid var(--border); box-shadow:0 -6px 14px var(--crease) inset; }

/* ---- gallery fold strip ---- */
.fd-strip { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; perspective:1000px; }
.fd-shot { position:relative; border-radius:var(--rad); overflow:hidden; aspect-ratio:3/4;
  border:1px solid var(--border); box-shadow:0 12px 26px var(--shadow);
  transform:rotateY(0deg); transition:transform .4s, box-shadow .4s; transform-origin:left center; }
.fd-shot:hover { transform:rotateY(-16deg); box-shadow:0 20px 40px var(--shadow); z-index:3; }
.fd-shot img { width:100%; height:100%; object-fit:cover; }
.fd-shot figcaption { position:absolute; left:10px; bottom:10px; background:var(--accent);
  color:var(--on-acc); font-weight:700; font-size:11px; padding:5px 10px; border-radius:999px; }

/* ---- contact fold ---- */
.fd-contact { perspective:1200px; padding:44px 0 10px; }
.fold-contact { transform-origin:top center; background:var(--card); border:1px solid var(--border);
  border-radius:calc(var(--rad) + 4px); padding:var(--pad); text-align:center;
  box-shadow:0 22px 54px var(--shadow); }
.fold-contact h2 { font-size:clamp(24px,3vw,36px); margin:8px 0 20px; }
.fdc-info { list-style:none; display:inline-flex; gap:26px; flex-wrap:wrap; font-size:14px;
  margin-bottom:22px; }
.fdc-info li span { color:var(--muted); margin-right:6px; }

.fdfoot { display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px;
  padding:30px 4px 0; margin-top:36px; border-top:1px solid var(--border); font-size:14px; }
.muted { color:var(--muted); }

@media (max-width:640px) {
  .fdlinks { display:none; }
  .fd-strip { grid-template-columns:repeat(3,1fr); }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  .fold-hero, .fold-contact { transform:none !important; }
  .fold-panel { grid-template-rows:1fr !important; }
  .fold-body { transform:none !important; opacity:1 !important; padding:0 22px 24px !important;
    transition:none; }
  .fd-shot:hover { transform:none; }
  .btn:hover { transform:none; }
  .fold-mark { transition:none; }
}


.xq{box-sizing:border-box;font-family:Georgia, 'Times New Roman', serif;color:#eaddc6;padding:56px 24px;width:100%}
.xq *{box-sizing:border-box;margin:0}
.xq .xq-wrap{max-width:1060px;margin:0 auto}
.xq h2{font-family:Copperplate, 'Copperplate Gothic Light', 'Segoe UI', sans-serif;font-size:1.7rem;line-height:1.2;margin-bottom:8px}
.xq .xq-kick{display:block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#9c3b1e;margin-bottom:10px;font-weight:700}

.xq-badges{padding:26px 24px;border-top:1px solid rgba(234,221,198,0.14);border-bottom:1px solid rgba(234,221,198,0.14);background:rgba(234,221,198,0.05)}
.xq-badge-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.xq-badgehead{font-family:Copperplate, 'Copperplate Gothic Light', 'Segoe UI', sans-serif;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;margin-right:8px}
.xq-badge{border:1.5px solid #9c3b1e;color:#9c3b1e;border-radius:999px;padding:7px 16px;font-size:.8rem;font-weight:700;letter-spacing:.04em}


.xq-tl-list{list-style:none;padding:0;margin-top:24px;position:relative;border-left:2px solid rgba(234,221,198,0.14)}
.xq-tl-item{position:relative;padding:0 0 26px 26px}
.xq-tl-item::before{content:"";position:absolute;left:-7px;top:4px;width:12px;height:12px;border-radius:50%;background:#9c3b1e;box-shadow:0 0 0 4px rgba(234,221,198,0.05)}
.xq-tl-item time{font-family:Copperplate, 'Copperplate Gothic Light', 'Segoe UI', sans-serif;font-weight:800;color:#9c3b1e;display:block;margin-bottom:4px}
.xq-tl-item p{color:#7f6a56;max-width:58ch}


/* =====================================================
   DESIGN DNA: watercolor-airy
   Whole-page visual system applied over the layout
   archetype. Appended last so it wins the cascade.
   ===================================================== */
html::before{content:'';position:fixed;inset:0;z-index:99980;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='520' height='420'%3E%3Cellipse cx='120' cy='90' rx='120' ry='80' fill='%239c3b1e' opacity='.5'/%3E%3Cellipse cx='420' cy='330' rx='150' ry='100' fill='%23742e18' opacity='.35'/%3E%3C/svg%3E");opacity:.09;}
h1,h2,h3{font-family:Garamond, 'EB Garamond', 'Times New Roman', serif !important;font-weight:500 !important;font-style:italic !important}
img{border-radius:38% 62% 55% 45%/45% 42% 58% 55% !important;filter:saturate(1.08) brightness(1.02)}
a[class*="btn"],button,span[class*="btn"]{border-radius:999px !important;border:1.5px solid #9c3b1e !important;box-shadow:none !important}
div[class*="card"]:not([class*="cards"]),article[class*="card"],a[class*="card"],figure[class*="card"],li[class*="card"]{border-radius:24px 60px 24px 60px !important;border:none !important;box-shadow:0 16px 40px rgba(0,0,0,.08) !important}
