/* =========================================================
   EK SANKALP — PREMIUM CONTACT / STORY SUBMISSION
   Designed to sit on top of the existing style.css
   ========================================================= */

.contact-hero{position:relative;min-height:570px;overflow:hidden;background:linear-gradient(125deg,#211914,#4a2e20 56%,#241714);color:#fff;display:flex;align-items:center}
.contact-hero-pattern{position:absolute;inset:0;opacity:.06;background-image:radial-gradient(circle,#fff 1px,transparent 1px);background-size:32px 32px}
.contact-hero-inner{position:relative;z-index:2;padding:105px 0 95px}
.contact-kicker{font-size:15px;letter-spacing:.12em;color:#e2b98e;display:flex;align-items:center;gap:12px}
.contact-kicker span{width:38px;height:1px;background:#d49b6c;display:inline-block}
.contact-hero h1{font-size:clamp(58px,8vw,105px);line-height:1.05;letter-spacing:-.055em;margin:25px 0 22px;font-weight:700}
.contact-hero h1 em{font-family:"Playfair Display",serif;color:#d8ad85;font-weight:500}
.contact-hero-inner>p{max-width:680px;font-size:21px;line-height:1.9;color:#e7dcd1;margin:0}
.contact-hero-mark{position:absolute;right:5%;top:50%;transform:translateY(-50%) rotate(-8deg);font-family:"Noto Serif Devanagari",serif;font-size:clamp(180px,25vw,340px);line-height:1;color:rgba(230,180,92,.055);pointer-events:none}
.contact-orbit{position:absolute;border:1px solid rgba(230,180,92,.18);border-radius:50%;pointer-events:none}
.contact-orbit-one{width:430px;height:430px;right:-150px;top:-110px;box-shadow:0 0 0 45px rgba(230,180,92,.025),0 0 0 90px rgba(230,180,92,.015)}
.contact-orbit-two{width:230px;height:230px;left:-150px;bottom:-120px}

.story-invite{padding:125px 0 120px;background:var(--paper)}
.story-invite-grid{display:grid;grid-template-columns:190px 1fr;gap:80px;align-items:start}
.invite-label{font-size:15px;letter-spacing:.12em;color:var(--brown);padding-top:8px;border-left:3px solid #d9a25e;padding-left:16px}
.invite-content{max-width:900px}
.overline{font-size:15px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;color:var(--brown)}
.invite-content h2{font-size:clamp(42px,5vw,67px);line-height:1.16;letter-spacing:-.045em;margin:16px 0 32px}
.invite-content h2 em{font-family:"Playfair Display",serif;color:var(--brown);font-weight:500}
.invite-content p{max-width:790px;color:var(--muted);font-size:18px;line-height:1.95;margin:0 0 18px}
.invite-content .invite-lead{font-size:23px;line-height:1.85;color:var(--ink);max-width:850px}
.invite-points{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:55px}
.invite-points>div{padding:28px 25px 10px 0;border-right:1px solid var(--line);margin-right:25px}
.invite-points>div:last-child{border-right:0;margin-right:0}
.invite-points span{display:block;font-family:"Playfair Display",serif;color:var(--brown);font-size:17px;margin-bottom:18px}
.invite-points strong{display:block;font-size:18px;margin-bottom:7px}
.invite-points small{display:block;color:var(--muted);font-size:14px;line-height:1.8}

.form-section{padding:125px 0 140px;background:var(--paper2);position:relative;overflow:hidden}
.form-section:before{content:"";position:absolute;width:600px;height:600px;border:1px solid rgba(169,103,59,.08);border-radius:50%;right:-330px;top:-200px;box-shadow:0 0 0 70px rgba(169,103,59,.025),0 0 0 140px rgba(169,103,59,.015)}
.form-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px;align-items:start;position:relative;z-index:1}
.form-side{padding-top:22px}
.form-side h2{font-size:clamp(43px,4.7vw,65px);line-height:1.12;letter-spacing:-.045em;margin:17px 0 28px}
.form-side h2 em{font-family:"Playfair Display",serif;color:var(--brown);font-weight:500}
.form-side>p{font-size:18px;line-height:1.95;color:var(--muted);max-width:460px}
.form-side-rule{height:1px;background:var(--line);width:70px;margin:38px 0 28px}
.form-note{display:flex;gap:16px;max-width:500px}
.form-note>span{font-family:serif;color:var(--brown);font-size:24px;line-height:1.5}
.form-note p{margin:0;color:var(--muted);font-size:14px;line-height:1.9}
.form-note strong{color:var(--ink);font-size:15px}

.premium-form-card{background:#fffaf3;border:1px solid #d9cabb;box-shadow:0 25px 70px rgba(50,31,18,.11);position:relative}
.premium-form-card:before{content:"";position:absolute;inset:10px;border:1px solid rgba(169,103,59,.10);pointer-events:none}
.form-card-top{padding:38px 42px 30px;border-bottom:1px solid #ded1c3;display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.form-card-top span{display:block;color:var(--brown);font-size:12px;letter-spacing:.13em;text-transform:uppercase;margin-bottom:7px}
.form-card-top strong{font-family:"Noto Serif Devanagari",serif;font-size:27px;font-weight:700}
.form-symbol{font-family:"Playfair Display",serif;font-size:25px;color:#c18a58}
.story-form{padding:38px 42px 42px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:27px 22px}
.field,.field-group{border:0;padding:0;margin:0;min-width:0}
.field.full,.field-group.full,.consent.full{grid-column:1/-1}
.field>span,.field-group legend{display:block;font-size:14px;font-weight:700;color:#4e4035;margin-bottom:9px;padding:0}
.field>span b,.field-group legend b{color:#a94e2b}
.field>span i{font-style:normal;color:#8d7d70;font-weight:400}
.field input,.field textarea{width:100%;border:1px solid #d5c8b9;background:#fffdf9;color:var(--ink);font:inherit;font-size:16px;line-height:1.65;border-radius:0;outline:none;padding:14px 16px;transition:border-color .25s,box-shadow .25s,background .25s}
.field input{height:55px}
.field textarea{resize:vertical;min-height:225px}
.field input::placeholder,.field textarea::placeholder{color:#a89b90;opacity:1}
.field input:focus,.field textarea:focus{border-color:#a9673b;box-shadow:0 0 0 3px rgba(169,103,59,.09);background:#fff}
.field small{display:block;margin-top:7px;color:#8c7d71;font-size:12px}
.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.publication-choice{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
.choice{position:relative;display:block;cursor:pointer}
.choice input{position:absolute;opacity:0;pointer-events:none}
.choice span{display:flex;align-items:center;min-height:52px;padding:10px 14px;border:1px solid #d7c9ba;background:#fffdf9;color:#5c4d41;font-size:14px;line-height:1.5;transition:.22s}
.choice span:before{content:"";width:14px;height:14px;border:1px solid #b8a99b;border-radius:50%;margin-left:0;margin-right:10px;flex:0 0 14px;background:#fff}
.choice input:checked+span{border-color:#9e6038;background:#f8eee3;color:#412c20;box-shadow:inset 0 0 0 1px #9e6038}
.choice input:checked+span:before{box-shadow:inset 0 0 0 3px #f8eee3;background:#9e6038;border-color:#9e6038}
.choice:hover span{border-color:#b98a68}
.consent{display:flex;align-items:flex-start;gap:12px;color:#716257;font-size:13px;line-height:1.8;padding-top:4px}
.consent input{width:18px;height:18px;accent-color:#7d4825;flex:0 0 18px;margin-top:3px}
.hidden-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.form-submit-row{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #ded1c3;margin-top:30px;padding-top:28px}
.form-submit-row p{margin:0;color:#8a7b6e;font-size:12px;line-height:1.7;max-width:350px}
.form-submit-row button{appearance:none;border:0;background:#2b211b;color:#fff;padding:16px 25px;font:inherit;font-size:15px;font-weight:700;cursor:pointer;min-width:205px;transition:transform .2s,background .2s,box-shadow .2s}
.form-submit-row button:hover{background:#7d4825;transform:translateY(-2px);box-shadow:0 10px 25px rgba(60,35,20,.18)}
.form-submit-row button span{font-size:21px;margin-left:12px;font-weight:400}

.contact-closing{padding:130px 0;background:#956345;color:#fff;position:relative;overflow:hidden}
.contact-closing:after{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-250px;top:-250px;box-shadow:0 0 0 60px rgba(255,255,255,.025)}
.closing-inner{position:relative;z-index:1}
.closing-symbol{font-family:"Noto Serif Devanagari",serif;color:#f0c99e;font-size:58px;opacity:.8}
.closing-inner h2{font-size:clamp(45px,6vw,78px);line-height:1.08;letter-spacing:-.05em;margin:18px 0 27px}
.closing-inner h2 em{font-family:"Playfair Display",serif;font-weight:500;color:#f2d7bc}
.closing-inner p{max-width:620px;color:#f1dfd1;font-size:18px;line-height:1.95;margin:0}

@media(max-width:950px){
  .contact-hero-inner{padding:95px 0 80px}.contact-hero{min-height:520px}
  .contact-hero-mark{right:-2%;opacity:.8}
  .story-invite-grid{grid-template-columns:1fr;gap:30px}.invite-label{display:inline-block;width:max-content}
  .form-layout{grid-template-columns:1fr;gap:50px}.form-side{padding-top:0}.form-side>p{max-width:700px}
}
@media(max-width:700px){
  .contact-hero{min-height:600px}.contact-hero-inner{padding:90px 0 70px}.contact-hero h1{font-size:58px}.contact-hero-inner>p{font-size:18px}.contact-hero-mark{right:-13%;top:63%;font-size:220px}
  .story-invite,.form-section{padding:85px 0}.invite-content h2{font-size:43px}.invite-content .invite-lead{font-size:19px}.invite-points{grid-template-columns:1fr;margin-top:40px}.invite-points>div{border-right:0;border-bottom:1px solid var(--line);padding:20px 0;margin:0}.invite-points>div:last-child{border-bottom:0}
  .premium-form-card:before{display:none}.form-card-top{padding:28px 22px}.form-card-top strong{font-size:23px}.story-form{padding:28px 22px}.form-grid{grid-template-columns:1fr;gap:23px}.field.full,.field-group.full,.consent.full{grid-column:auto}.choice-grid,.publication-choice{grid-template-columns:1fr}.form-submit-row{display:block}.form-submit-row p{margin-bottom:18px}.form-submit-row button{width:100%}
  .contact-closing{padding:90px 0}.closing-inner h2{font-size:47px}.closing-inner p{font-size:17px}
}

/* ─────────────────────────────────────────
   Contact Page — Tighter Vertical Rhythm
───────────────────────────────────────── */

.contact-hero {
  padding-top: 72px;
  padding-bottom: 72px;
}

.contact-story {
  padding-top: 72px;
  padding-bottom: 72px;
}

.contact-form-section {
  padding-top: 72px;
  padding-bottom: 72px;
}

.contact-closing {
  padding-top: 64px;
  padding-bottom: 64px;
}


/* Mobile */
@media (max-width: 700px) {

  .contact-hero {
    padding-top: 56px;
    padding-bottom: 56px;
  }

  .contact-story {
    padding-top: 52px;
    padding-bottom: 52px;
  }

  .contact-form-section {
    padding-top: 52px;
    padding-bottom: 52px;
  }

  .contact-closing {
    padding-top: 46px;
    padding-bottom: 48px;
  }
}