/* NiravManubhai responsive and Quiet Signal refinement — v16 */
:root{
  --nm-gutter:clamp(1rem,3.2vw,2.25rem);
  --nm-reading:44rem;
}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:5rem}
body{min-width:320px;overflow-x:hidden}
img,svg,video{display:block;max-width:100%}
button,a{-webkit-tap-highlight-color:transparent}
.topbar{padding-left:max(5vw,env(safe-area-inset-left));padding-right:max(5vw,env(safe-area-inset-right));padding-top:max(.86rem,env(safe-area-inset-top))}
.room-shell,.reader-shell,.reading-page{padding-left:max(var(--nm-gutter),env(safe-area-inset-left));padding-right:max(var(--nm-gutter),env(safe-area-inset-right))}
.site-footer,footer{padding-bottom:max(3rem,env(safe-area-inset-bottom))}

/* Capability-aware interaction: no device or OS sniffing required. */
@media (hover:hover) and (pointer:fine){
  a,.btn,button{transition:color .18s ease,background-color .18s ease,border-color .18s ease,transform .18s ease}
}
@media (hover:none),(pointer:coarse){
  .btn,.gift-link,.btn-gift,.story-nav-link{min-height:48px}
  .corridor-row{min-height:68px}
}
@media (orientation:landscape) and (max-height:560px){
  .room-shell,.reader-shell,.reading-page{padding-top:2.5rem}
}

/* The Quiet Signal landing page */
.quiet-signal-landing .room-shell{max-width:78rem}
.quiet-signal-landing .hero-poster{
  grid-template-columns:minmax(0,.72fr) minmax(19rem,1.28fr);
  gap:clamp(2.4rem,5vw,5.5rem);
  align-items:center;
}
.quiet-signal-landing .hero-poster>img{
  width:100%;max-width:none;aspect-ratio:1448/1086;object-fit:cover;
  border-radius:4px;
}
.quiet-signal-landing .hero-poster>div{align-self:center}
.quiet-signal-landing .room-title{font-size:clamp(3rem,6.4vw,5.35rem)}
.quiet-signal-landing .intro{font-size:clamp(1rem,1.3vw,1.08rem)}
.quiet-signal-landing .actions{align-items:stretch}
.quiet-signal-landing .actions .btn{line-height:1.35;text-align:center}
.quiet-signal-landing .corridor-row.is-open{color:var(--ink)}
.quiet-signal-landing .corridor-row.is-open .corridor-state{color:var(--leaf);font-weight:600}

/* Dedicated field-note reading system */
.quiet-field-note{background:var(--paper);color:var(--ink)}
.quiet-field-note .reading-page{
  width:min(100%,calc(var(--nm-reading) + 2 * var(--nm-gutter)));
  margin:0 auto;padding-top:clamp(3.8rem,7vw,6.5rem);padding-bottom:5.5rem;
}
.quiet-field-note .story-header{text-align:center;margin:0 auto clamp(2.6rem,5vw,4.2rem);max-width:42rem}
.quiet-field-note .series-line,.quiet-field-note .story-number{
  margin:.2rem 0;font-family:Inter,system-ui,sans-serif;font-size:.7rem;
  font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--leaf)
}
.quiet-field-note .story-number{color:var(--ink-soft);letter-spacing:.12em}
.quiet-field-note .story-header h1{
  margin:.75rem auto .8rem;font-family:"Playfair Display",Georgia,serif;font-weight:500;
  font-size:clamp(2.55rem,6.6vw,4.65rem);line-height:1.08;letter-spacing:-.018em;
}
.quiet-field-note .reading-time{margin:.7rem 0 0;color:var(--ink-soft);font-size:.78rem;letter-spacing:.04em}
.quiet-field-note .progress-line{display:flex;justify-content:center;gap:.42rem;margin-top:1.1rem;color:var(--leaf);font-size:.72rem}
.quiet-field-note .story-body{
  max-width:var(--nm-reading);margin:0 auto;font-family:"Playfair Display",Georgia,serif;
  font-size:clamp(1.08rem,1.3vw,1.19rem);line-height:1.9;color:#332b20;
  text-wrap:pretty;
}
.quiet-field-note .story-body p{margin:0 0 1.42em}
.quiet-field-note .story-body .opening-line{
  font-size:clamp(1.45rem,3vw,2rem);line-height:1.45;color:var(--ink);margin-bottom:1.15em
}
.quiet-field-note .story-body h2{
  margin:3.25rem 0 1.1rem;font-family:Inter,system-ui,sans-serif;font-size:.72rem;
  font-weight:600;letter-spacing:.19em;text-transform:uppercase;color:var(--leaf)
}
.quiet-field-note .story-rule{width:3.5rem;border:0;border-top:1px solid var(--gold);margin:3.1rem auto}
.quiet-field-note .pull-quote{
  margin:3rem max(-2.5rem,-5vw);padding:1.8rem clamp(1.35rem,4vw,2.5rem);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  font-size:clamp(1.5rem,3vw,2.05rem);line-height:1.48;text-align:center;color:var(--leaf-dark)
}
.quiet-field-note .practical-note{
  margin:2.7rem 0;padding:1.45rem 1.55rem;background:rgba(236,227,209,.62);
  border-left:3px solid var(--leaf);font-size:.98em
}
.quiet-field-note .practical-note p:last-child{margin-bottom:0}
.quiet-field-note .closing-lines{margin-top:2.8rem;font-size:clamp(1.25rem,2.4vw,1.55rem);line-height:1.55}
.quiet-field-note .closing-lines strong{font-weight:500;color:var(--leaf-dark)}
.quiet-field-note .story-ending{max-width:var(--nm-reading);margin:4rem auto 0;text-align:center}
.quiet-field-note .story-ending .ai-reveal{font-family:"Playfair Display",Georgia,serif;color:var(--ink-soft);line-height:1.7}
.quiet-field-note .gift-block{margin:2rem 0;padding:2rem 1rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.quiet-field-note .gift-label{margin:0 0 .85rem;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}
.quiet-field-note .btn-gift{
  display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.78rem 1.15rem;
  background:var(--leaf);color:var(--paper);text-decoration:none;border-radius:2px;
  font-size:.75rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase
}
.quiet-field-note .story-nav{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;margin-top:2rem}
.quiet-field-note .story-nav-link{display:inline-flex;align-items:center;color:var(--leaf);text-decoration:none;font-size:.78rem;letter-spacing:.04em}
.quiet-field-note footer{text-align:center;color:var(--ink-soft);font-size:.7rem;padding:0 1rem 3rem}
.quiet-field-note footer a{text-decoration:none}

@media (min-width:1440px){
  .quiet-signal-landing .room-shell{max-width:82rem}
  .quiet-signal-landing .hero-poster{grid-template-columns:minmax(0,.78fr) minmax(20rem,1.22fr)}
}
@media (max-width:900px){
  .quiet-signal-landing .hero-poster{grid-template-columns:minmax(0,.75fr) minmax(18rem,1.25fr);gap:2.3rem}
}
@media (max-width:720px){
  .quiet-signal-landing .hero-poster{grid-template-columns:1fr;gap:2rem;align-items:start}
  .quiet-signal-landing .hero-poster>img{width:100%;max-width:560px;margin:0 auto}
  .quiet-signal-landing .hero-poster>div{max-width:38rem;margin:0 auto}
  .quiet-signal-landing .room-title{font-size:clamp(2.8rem,14vw,4.25rem)}
  .quiet-signal-landing .corridor-head{align-items:flex-start;flex-direction:column}
  .quiet-field-note .reading-page{padding-top:3.6rem}
  .quiet-field-note .story-body{font-size:1.08rem;line-height:1.82}
  .quiet-field-note .pull-quote{margin:2.7rem 0}
}
@media (max-width:430px){
  .quiet-signal-landing .hero-poster>img{width:100%;max-width:380px;margin:0 auto}
  .quiet-field-note .story-header h1{font-size:clamp(2.35rem,12.5vw,3.25rem)}
  .quiet-field-note .story-body{font-size:1.04rem;line-height:1.8}
  .quiet-field-note .story-body p{margin-bottom:1.35em}
  .quiet-field-note .practical-note{margin-left:-.15rem;margin-right:-.15rem;padding:1.25rem 1.15rem}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Field Note 01 hero image */
.quiet-field-note .story-deck{
  max-width:38rem;margin:.15rem auto .75rem;color:var(--ink-soft);
  font-family:Inter,system-ui,sans-serif;font-size:clamp(.88rem,1.25vw,1rem);line-height:1.55;
}
.quiet-field-note .story-hero{
  width:min(100%,64rem);margin:0 auto clamp(3.2rem,6vw,5rem);
}
.quiet-field-note .story-hero img{
  display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;
  border-radius:2px;box-shadow:0 18px 48px rgba(25,20,14,.14);
}
.quiet-field-note .next-note-tease{
  margin:2.2rem auto 1.7rem;color:var(--ink-soft);font-family:"Playfair Display",Georgia,serif;
  font-style:italic;line-height:1.7;
}
@media (max-width:720px){
  .quiet-field-note .story-hero{margin-bottom:2.8rem}
  .quiet-field-note .story-hero img{border-radius:0}
}


/* Quiet Signal final guest experience — v1.0.42 */
.quiet-signal-landing .quiet-time-note{
  margin-top:1.15rem!important;
  font-family:"Playfair Display",Georgia,serif;
  font-size:1.04rem;
  font-style:italic;
  color:var(--leaf-dark);
}
.qs-reading-room .reading-room-title{
  margin:clamp(3.2rem,6vw,5rem) auto 1.5rem;
  text-align:center;
  font-family:"Playfair Display",Georgia,serif;
  font-size:clamp(2.35rem,5vw,4.4rem);
  line-height:1.08;
  font-weight:500;
  letter-spacing:-.015em;
  color:var(--ink);
}
.qs-reading-room .room-hero-frame{margin-top:0}
.qs-reading-room .qs-room-intro{
  max-width:44rem;
  padding-bottom:2.6rem;
}
.qs-reading-room .qs-room-intro .qs-room-kicker{
  font-family:Inter,system-ui,sans-serif;
  font-style:normal;
  font-size:.69rem;
  font-weight:600;
  letter-spacing:.17em;
  text-transform:uppercase;
  color:var(--ink-soft);
  margin:0 0 .75rem;
}
.qs-reading-room .qs-room-intro h2{
  margin:0 0 1.25rem;
  font-family:"Playfair Display",Georgia,serif;
  font-size:clamp(1.65rem,3vw,2.35rem);
  line-height:1.25;
  font-weight:500;
  color:var(--ink);
}
.qs-reading-room .qs-room-intro p:not(.qs-room-kicker){
  font-family:"Playfair Display",Georgia,serif;
  font-size:clamp(1.02rem,1.8vw,1.14rem);
  line-height:1.72;
  font-style:normal;
  color:var(--ink-soft);
  margin:.28rem 0;
}
.qs-reading-room .qs-room-intro .qs-room-invite{
  margin-top:1.05rem!important;
  font-style:italic!important;
  color:var(--leaf-dark)!important;
}
.qs-reading-room .shelf-header{justify-content:flex-start}
.qs-reading-room .shelf-label{font-size:.7rem}

/* Field Notes are intentionally text-first. */
.quiet-field-note .story-header{
  margin-bottom:clamp(2.4rem,5vw,3.7rem);
}
.quiet-field-note .story-body{
  max-width:42rem;
}
.quiet-field-note .story-body p{
  hanging-punctuation:first last;
}
.quiet-field-note .story-ending{
  max-width:42rem;
  margin-top:3.4rem;
}
.quiet-field-note .story-nav{
  border-top:1px solid var(--line);
  padding-top:1.35rem;
  justify-content:space-between;
  align-items:center;
}
.quiet-field-note .story-nav a{
  font-family:Inter,system-ui,sans-serif;
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ink-soft);
  text-decoration:none;
}

/* Prevent forthcoming-note metadata from crushing the reading-room shelf on phones. */
@media (max-width:640px){
  .qs-reading-room .reading-room-title{margin-top:2.6rem;margin-bottom:1.2rem}
  .qs-reading-room .room-hero-frame{aspect-ratio:16/10}
  .qs-reading-room .room-intro{text-align:left;margin-top:1.65rem;padding-bottom:2rem}
  .qs-reading-room .reading-room .shelf-room{padding-top:2.2rem}
  .qs-reading-room .spine{
    grid-template-columns:2.1rem minmax(0,1fr);
    gap:.5rem .8rem;
    align-items:start;
    padding:1rem 0;
  }
  .qs-reading-room .spine-num{grid-column:1;grid-row:1 / span 2;padding-top:.15rem}
  .qs-reading-room .spine-copy{grid-column:2;grid-row:1}
  .qs-reading-room .spine-action{
    grid-column:2;grid-row:2;
    text-align:left;
    white-space:normal;
    line-height:1.45;
    padding-top:.1rem;
  }
  .qs-reading-room .spine.next .spine-action{white-space:normal;text-align:left}
  .qs-reading-room .room-journey{align-items:stretch}
  .qs-reading-room .room-journey a,.qs-reading-room .room-journey .journey-home{width:100%}
  .quiet-field-note .reading-page{padding-top:3.2rem;padding-left:1.2rem;padding-right:1.2rem}
  .quiet-field-note .story-header{text-align:left;margin-bottom:2.2rem}
  .quiet-field-note .story-header h1{margin-left:0;margin-right:0}
  .quiet-field-note .story-deck{margin-left:0;margin-right:0}
  .quiet-field-note .story-body{font-size:1.06rem;line-height:1.82}
  .quiet-field-note .story-nav{gap:.9rem}
}
@media (max-width:380px){
  .qs-reading-room .spine-copy h3{font-size:1rem}
  .qs-reading-room .spine-action{font-size:.61rem;letter-spacing:.06em}
  .quiet-field-note .reading-page{padding-left:1rem;padding-right:1rem}
}
