.architecture-story { max-width: 1180px; }
.architecture-story .content-head { margin-bottom: clamp(52px, 8vw, 96px); }

.brand-manifesto {
  position: relative;
  margin-bottom: clamp(80px, 11vw, 140px);
  padding: clamp(54px, 8vw, 100px) clamp(24px, 7vw, 92px);
  overflow: hidden;
  border: 1px solid rgba(200,169,111,.36);
  background: radial-gradient(circle at 78% 18%, rgba(190,151,82,.14), transparent 35%), #0c0f0d;
  text-align: center;
}
.brand-manifesto::before { content:'LE | EL'; position:absolute; right:-12px; bottom:-30px; color:rgba(200,169,111,.05); font:400 clamp(5rem,15vw,12rem)/1 var(--serif); white-space:nowrap; }
.brand-manifesto p { position:relative; margin:0; color:#d6cdbc; font:400 clamp(1.18rem,2vw,1.55rem)/2 var(--serif); word-break:keep-all; }
.brand-manifesto strong { color:#d9b976; font-weight:500; }

.brand-pair { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-bottom:clamp(90px,12vw,150px); }
.brand-card { margin:0; border:1px solid rgba(200,169,111,.32); background:#0b0d0c; overflow:hidden; }
.brand-card img { display:block; width:100%; height:clamp(280px,34vw,460px); object-fit:cover; filter:contrast(1.05); }
.brand-card figcaption { padding:32px clamp(24px,4vw,48px) 38px; }
.brand-card b { display:block; color:#d7b875; font:400 clamp(2rem,4vw,3.3rem)/1 var(--serif); letter-spacing:.28em; }
.brand-card p { margin:18px 0 0; color:rgba(242,237,227,.68); font-size:1rem; line-height:1.85; word-break:keep-all; }
.brand-film { margin-bottom:clamp(80px,11vw,140px); }
.brand-film header { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:28px; }
.brand-film small { color:#c8a96f; font-size:.72rem; letter-spacing:.25em; }
.brand-film h2 { margin:0; color:#f2ede3; font:400 clamp(1.8rem,3.5vw,3rem)/1.3 var(--serif); word-break:keep-all; }
.brand-film-frame { position:relative; aspect-ratio:16/9; overflow:hidden; border:1px solid rgba(200,169,111,.38); background:#050605; box-shadow:0 26px 80px rgba(0,0,0,.34); }
.brand-film-frame iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }

.architecture-heading { margin-bottom:55px; padding-top:clamp(18px,4vw,50px); text-align:left; border-top:1px solid rgba(200,169,111,.3); }
.architecture-heading h2 { margin-left:0; }
.architecture-heading p { margin-left:0; }

.architecture-feature { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:clamp(30px,6vw,80px); align-items:center; padding:clamp(55px,8vw,100px) 0; border-top:1px solid rgba(200,169,111,.24); }
.architecture-feature.reverse .architecture-visual { order:2; }
.architecture-feature.reverse .architecture-copy { order:1; }
.architecture-visual { margin:0; min-width:0; }
.architecture-visual img { display:block; width:100%; height:auto; min-height:280px; object-fit:cover; border:1px solid rgba(200,169,111,.32); box-shadow:0 24px 70px rgba(0,0,0,.34); }
.architecture-copy small { color:#c8a96f; font-size:.75rem; letter-spacing:.22em; }
.architecture-copy h3 { margin:18px 0 24px; color:#f2ede3; font:400 clamp(2rem,4vw,3.7rem)/1.28 var(--serif); letter-spacing:-.045em; word-break:keep-all; }
.architecture-copy h3 em { color:#d4b36f; font-style:normal; }
.architecture-copy p { margin:0; color:rgba(242,237,227,.65); font-size:1rem; line-height:1.95; word-break:keep-all; }

.landscape-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:clamp(50px,8vw,90px); }
.landscape-card { margin:0; border:1px solid rgba(200,169,111,.3); background:#0b0d0c; }
.landscape-card img { display:block; width:100%; aspect-ratio:542/410; object-fit:cover; }
.landscape-card figcaption { padding:30px; }
.landscape-card small { color:#c8a96f; font-size:.72rem; letter-spacing:.2em; }
.landscape-card h3 { margin:13px 0 16px; color:#f2ede3; font:400 clamp(1.45rem,2.5vw,2.15rem)/1.35 var(--serif); word-break:keep-all; }
.landscape-card p { margin:0; color:rgba(242,237,227,.62); font-size:.94rem; line-height:1.8; word-break:keep-all; }

@media(max-width:820px){
  .brand-manifesto { margin-inline:-24px; border-inline:0; }
  .brand-manifesto p { font-size:1.05rem; line-height:1.9; }
  .brand-pair,.landscape-grid { grid-template-columns:1fr; }
  .brand-card img { height:auto; aspect-ratio:4/3; }
  .brand-film { margin-inline:-24px; }
  .brand-film header { display:block; padding:0 24px; }
  .brand-film small { display:block; margin-bottom:12px; font-size:.65rem; }
  .brand-film h2 { font-size:clamp(1.55rem,7vw,2rem); }
  .brand-film-frame { border-inline:0; }
  .architecture-feature { grid-template-columns:1fr; gap:28px; padding:58px 0; }
  .architecture-feature.reverse .architecture-visual,.architecture-feature.reverse .architecture-copy { order:initial; }
  .architecture-visual { margin-inline:-24px; }
  .architecture-visual img { min-height:0; border-inline:0; }
  .architecture-copy h3 { font-size:clamp(1.85rem,8vw,2.55rem); }
  .landscape-card figcaption { padding:25px 22px; }
}
