.glasshour-teaser{
  background:linear-gradient(135deg,#f6f2ea 0%,#eee7dc 48%,#f8f5ef 100%);
  color:#24211d;
  padding:clamp(96px,11vw,160px) 7vw;
  position:relative;
  overflow:hidden;
}
.glasshour-teaser:before{
  content:"";
  position:absolute;
  width:min(48vw,640px);
  aspect-ratio:1;
  border:1px solid rgba(119,91,60,.10);
  border-radius:50%;
  right:-16%;
  top:48%;
  transform:translateY(-50%);
  pointer-events:none;
}
.glasshour-teaser:after{
  content:"";
  position:absolute;
  width:240px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(117,91,63,.32),transparent);
  left:50%;
  bottom:44px;
  transform:translateX(-50%);
  pointer-events:none;
}
.glasshour-teaser-grid{
  position:relative;
  z-index:1;
  max-width:1200px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(330px,.92fr) minmax(430px,1.08fr);
  gap:clamp(58px,8vw,118px);
  align-items:center;
}
.glasshour-photo-wrap{
  margin:0;
  overflow:hidden;
  background:#d9c9b7;
  aspect-ratio:4/5;
  box-shadow:0 30px 80px rgba(62,46,31,.14);
  position:relative;
}
.glasshour-photo-wrap:after{
  content:"";
  position:absolute;
  inset:0;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.28);
  pointer-events:none;
}
.glasshour-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}
.glasshour-teaser-inner{position:relative;max-width:650px;text-align:left}
.glasshour-kicker{
  display:flex;
  align-items:center;
  gap:14px;
  font-size:10px;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:rgba(36,33,29,.54);
  margin:0 0 30px;
}
.glasshour-kicker:before{content:"";width:38px;height:1px;background:rgba(112,83,52,.45);flex:0 0 auto}
.glasshour-teaser h2{
  font-family:"Cormorant Garamond","Zen Old Mincho",serif;
  font-size:clamp(40px,4.4vw,64px);
  font-weight:400;
  line-height:1.38;
  letter-spacing:.01em;
  margin:0;
  color:#28241f;
  text-wrap:balance;
}
.glasshour-summary{
  max-width:590px;
  margin:34px 0 0;
  padding-top:30px;
  border-top:1px solid rgba(76,60,43,.14);
  font-size:14px;
  line-height:2.3;
  letter-spacing:.035em;
  color:rgba(36,33,29,.67);
  line-break:strict;
  text-wrap:pretty;
}
.glasshour-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:38px}
.glasshour-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:164px;
  min-height:46px;
  padding:13px 24px;
  border:1px solid rgba(36,33,29,.36);
  color:#28241f;
  background:rgba(255,255,255,.16);
  text-decoration:none;
  font-size:11px;
  letter-spacing:.08em;
  text-transform:none !important;
  transition:background .3s ease,color .3s ease,border-color .3s ease,transform .3s ease;
  white-space:nowrap;
  box-sizing:border-box;
}
.glasshour-link:hover{background:#28241f;color:#f6f2ea;border-color:#28241f;transform:translateY(-1px)}
.glasshour-link.secondary{border-color:rgba(36,33,29,.36)}
@media(max-width:900px){
  .glasshour-teaser-grid{grid-template-columns:minmax(280px,.9fr) minmax(330px,1.1fr);gap:46px}
}
@media(max-width:768px){
  .glasshour-teaser{padding:70px 0 84px!important;margin-left:-18px;margin-right:-18px;background:linear-gradient(180deg,#f3eee6 0%,#f8f5ef 100%)}
  .glasshour-teaser:before,.glasshour-teaser:after{display:none}
  .glasshour-teaser-grid{display:flex;flex-direction:column;gap:0;max-width:none}
  .glasshour-photo-wrap{width:calc(100% - 36px);aspect-ratio:4/5;box-shadow:0 20px 48px rgba(62,46,31,.12)}
  .glasshour-photo{object-position:center 48%}
  .glasshour-teaser-inner{width:100%;max-width:none;padding:48px 26px 0;text-align:left;box-sizing:border-box}
  .glasshour-kicker{display:block;font-size:9.5px;letter-spacing:.22em;margin-bottom:25px;text-align:center;width:100%}
  .glasshour-kicker:before{display:none}
  .glasshour-teaser h2{font-size:clamp(30px,8.8vw,38px);line-height:1.55;letter-spacing:.005em;word-break:keep-all;text-wrap:initial}
  .glasshour-summary{font-size:13px;line-height:2.15;margin-top:27px;padding-top:25px;letter-spacing:.02em;word-break:normal;text-wrap:pretty}
  .glasshour-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:32px}
  .glasshour-link{width:100%;min-width:0;min-height:48px;text-align:center;padding:14px 10px;font-size:10.5px;letter-spacing:.05em}
}
@media(max-width:390px){
  .glasshour-teaser-inner{padding-left:22px;padding-right:22px}
  .glasshour-actions{grid-template-columns:1fr}
  .glasshour-link{min-height:48px}
}
