/* Faraz Postal V3 — interface direction inspired by clean Iranian service websites.
   Brand assets and card illustrations remain original to Faraz Postal. */
:root {
  --navy:#18325b;--ink:#1d2d44;--muted:#6f7b8d;--paper:#ffffff;
  --cream:#f6f8fc;--line:#e8edf4;--gold:#db6139;--goldlight:#fae2d9;
  --accent:#df673f;--accent-dark:#ca512d;--accent-pale:#fff2ed;
  --blue-pale:#eef3fb;--blue-deep:#142b51;
  --shadow:0 24px 62px rgba(24,50,91,.09);--radius:22px;
}
html {scroll-padding-top:92px}
body {background:#fff;color:var(--ink);font-size:14px;line-height:1.95}
h1,h2,h3,h4,h5 {letter-spacing:-.65px}
button, input, textarea, select {font-family:Peyda,Vazirmatn,Tahoma,sans-serif}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible {outline:3px solid rgba(223,103,63,.36);outline-offset:3px}
.container {max-width:1320px;padding-inline:32px}
.section {padding:105px 0}
.section-soft {background:var(--cream)}
.section-h {margin-bottom:48px}
.section-h h2 {font-weight:800;font-size:clamp(29px,3vw,44px);line-height:1.5;margin:11px 0 12px}
.section-h p {max-width:660px;margin-inline:auto;color:#748195;font-size:15px}
.eyebrow {font-size:12px;letter-spacing:0;color:#d96742;background:#fff1ea;border:1px solid #f9e2d7;border-radius:100px;padding:5px 13px;font-weight:800}
.eyebrow::before {display:none}
.btn {border-radius:12px;min-height:48px;box-shadow:none;font-size:14px;transition:transform .25s,background .25s,border-color .25s,box-shadow .25s}
.btn:hover {transform:translateY(-3px)}
.btn-primary {background:var(--accent);color:#fff;box-shadow:0 12px 25px rgba(217,91,52,.18)}
.btn-primary:hover {background:var(--accent-dark);box-shadow:0 17px 30px rgba(217,91,52,.2)}
.btn-outline {background:#fff;color:var(--navy);border-color:#e2e8f0}
.btn-outline:hover {background:#f5f8fc;border-color:#c5d1e2}
.btn-gold {background:#d5a85b;color:#fff;box-shadow:0 10px 25px rgba(191,151,86,.22)}
.btn-gold:hover {background:#bc8f44}
.btn-sm {font-size:12px;min-height:40px}
.gold {color:#db6139}
/* Navigation: airy, translucent, aligned to the reference site's service feel */
.header {position:sticky;z-index:100;top:0;background:rgba(255,255,255,.83);border-bottom:1px solid rgba(223,231,241,.7);box-shadow:0 4px 28px rgba(30,53,92,.035);backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%)}
.nav {height:86px;gap:26px}
.logo-link img {width:166px;max-height:66px;object-fit:contain}
.nav-links {gap:25px;margin-inline:auto}
.nav-links a {color:#52617a;font-size:13px;position:relative;font-weight:700;white-space:nowrap}
.nav-links a.active,.nav-links a:hover {color:var(--accent)}
.nav-links a::after {content:'';position:absolute;right:0;bottom:-31px;height:3px;background:var(--accent);width:0;border-radius:5px;transition:width .25s}
.nav-links a.active::after,.nav-links a:hover::after {width:100%}
.nav-actions {gap:10px}
.nav-dashboard {display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--navy);font-weight:800;padding:8px 11px;border-radius:11px;white-space:nowrap}
.nav-dashboard svg {width:19px;height:19px}
.nav-dashboard:hover {background:#edf2f9}
.nav-cta {white-space:nowrap}
.mobile-menu {background:rgba(255,255,255,.99);border-top:1px solid #eef1f6;box-shadow:0 20px 35px rgba(19,40,75,.12);max-height:calc(100vh - 70px);overflow:auto}
.mobile-menu a {color:var(--navy)}
.mobile-menu-cta {color:var(--accent)!important}
/* Hero rebuilt in a large corporate-service editorial grid */
.hero {min-height:695px;overflow:hidden;background:radial-gradient(circle at 4% 17%,rgba(223,103,63,.08),transparent 31%),linear-gradient(114deg,#ffffff 0%,#ffffff 58%,#f7faff 100%);isolation:isolate}
.hero::before {border:0;box-shadow:none;width:820px;height:820px;top:auto;bottom:-580px;right:-200px;background:radial-gradient(circle,rgba(59,105,172,.055),transparent 65%)}
.hero-grid {min-height:695px;grid-template-columns:1.02fr 1fr;gap:76px;padding-top:40px;padding-bottom:68px;align-items:center}
.hero-copy {position:relative;z-index:3}
.hero-kicker {display:inline-flex;align-items:center;gap:8px;color:var(--accent);background:#fff4ef;border:1px solid #f9e3da;border-radius:999px;padding:8px 16px;font-weight:800;font-size:12px}
.hero-kicker svg {width:16px;height:16px}
.hero h1 {font-size:clamp(39px,3.8vw,57px);line-height:1.56;color:var(--navy);letter-spacing:-2.3px;font-weight:800;margin:23px 0 16px}
.hero h1 span {color:var(--accent)}
.hero-copy>p {max-width:600px;font-size:16px;line-height:2.3;color:#718097;margin:0 0 30px}
.hero-action-row {display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.hero-action-row .btn {min-height:53px;padding-inline:24px}
.hero-mini-features {display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:33px;border-top:1px solid #e9edf3;padding-top:24px}
.hero-mini-features span {display:flex;gap:7px;align-items:center;color:#6d7c8f;font-size:12px;font-weight:700}
.hero-mini-features svg {width:16px;height:16px;color:#459f84}
.hero-showcase {min-height:580px;position:relative;display:grid;place-items:center}
.hero-scene {width:min(100%,565px);height:565px;border-radius:38px;position:relative;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 67% 27%,rgba(255,255,255,.96),transparent 30%),linear-gradient(135deg,#eaf1fa,#f1f6fb 46%,#e6edf7 100%);overflow:visible;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
.scene-halo {width:415px;height:415px;border-radius:50%;position:absolute;background:#fff9f2;border:1px solid #f1dfcb;box-shadow:0 0 0 44px rgba(255,255,255,.35),0 0 0 87px rgba(255,255,255,.13);animation:heroHalo 9s ease-in-out infinite}
.scene-ornament {position:absolute;display:block;z-index:1;border:1px solid rgba(24,50,91,.13);border-radius:50%}
.scene-ornament-a {height:110px;width:110px;right:35px;top:32px;border-style:dashed;animation:spin 45s linear infinite}
.scene-ornament-b {height:52px;width:52px;left:46px;bottom:42px;background:rgba(223,103,63,.14);border:0}
.scene-card-wrap {z-index:3;position:relative;transform:rotate(5deg);filter:drop-shadow(0 28px 25px rgba(18,40,74,.16));animation:sceneFloat 7s ease-in-out infinite}
.scene-phone-chrome {height:456px;width:268px;padding:9px;border:7px solid #fff;background:#fff;border-radius:34px;box-shadow:0 15px 50px rgba(30,48,79,.16);position:relative}
.scene-notch {position:absolute;width:75px;height:15px;background:#fff;top:-1px;left:50%;transform:translateX(-50%);border-radius:0 0 14px 14px;z-index:5}
.scene-invite {height:100%;width:100%;border-radius:24px;overflow:hidden}
.scene-invite .inv-card .invite-names {font-size:27px}
.scene-chip {position:absolute;z-index:5;background:rgba(255,255,255,.95);border:1px solid #eff1f6;border-radius:16px;padding:12px 16px;display:flex;gap:11px;align-items:center;box-shadow:0 16px 35px rgba(36,65,105,.12);animation:chipFloat 5.5s ease-in-out infinite}
.scene-chip>svg {width:42px;height:42px;padding:10px;border-radius:12px;background:#fff0e9;color:var(--accent)}
.scene-chip b {display:block;font-size:13px;color:var(--navy)}
.scene-chip small {display:block;color:#8b95a6;font-size:11px}
.scene-chip-one {right:-27px;top:125px}
.scene-chip-two {left:-22px;bottom:78px;animation-delay:-2.6s}
.scene-floating-heart {position:absolute;left:52px;top:60px;z-index:3;font-size:36px;color:#e7aa68;animation:chipFloat 4s ease-in-out infinite}
/* Service-site inspired quick-access row */
.quickbar-section {position:relative;z-index:5;margin-top:-58px;padding-bottom:60px}
.quickbar {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));padding:14px;background:rgba(255,255,255,.97);border:1px solid #e8edf5;border-radius:21px;box-shadow:0 22px 70px rgba(25,50,85,.11);gap:5px;backdrop-filter:blur(18px)}
.quick-item {display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;min-width:0;padding:18px 8px 13px;border-radius:15px;position:relative;transition:background .25s,transform .3s}
.quick-item:hover {background:#f7f9fc;transform:translateY(-5px)}
.quick-item-icon {height:49px;width:49px;display:grid;place-items:center;border-radius:14px;color:var(--accent);background:#fff0ea;transition:transform .25s}
.quick-item:hover .quick-item-icon {transform:rotate(-7deg) scale(1.07)}
.quick-item-icon svg {width:23px;height:23px}
.quick-item-title {color:var(--navy);font-size:13px;text-align:center;font-weight:800}
.quick-item-title small {display:block;color:#8b95a5;font-size:11px;font-weight:500;line-height:1.8}
.quick-item-arrow {display:none}
/* Guide / search / three broad resource cards */
.guide-section {padding-top:46px;background:#fff}
.guide-heading {max-width:760px;margin:0 auto 40px;text-align:center}
.guide-heading h2 {font-size:clamp(32px,3.2vw,48px);line-height:1.4;color:var(--navy);margin:14px 0 12px}
.guide-heading>p {color:#748195;font-size:15px;max-width:580px;margin:0 auto 26px}
.site-search {background:#fff;border:1px solid #e7edf4;padding:7px;border-radius:17px;box-shadow:0 17px 50px rgba(23,56,104,.06);text-align:right;margin-top:22px}
.site-search>label {display:block;font-size:11px;color:#8e98aa;font-weight:700;padding:4px 15px}
.site-search-wrap {display:flex;align-items:center;gap:12px;min-height:50px;padding-inline:12px}
.site-search-wrap>svg {width:22px;height:22px;color:#8ca0b6;flex-shrink:0}
.site-search-wrap input {flex:1;min-width:0;outline:none;border:0;background:transparent;color:var(--navy);font-size:14px}
.site-search-wrap input:focus-visible {outline:none}
.site-search-wrap .btn {min-height:43px;font-size:12px}
.guide-cards {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.guide-tile {min-height:306px;background:#fff;border:1px solid #e6ebf3;border-radius:22px;padding:25px;display:flex;gap:20px;align-items:flex-start;box-shadow:0 12px 44px rgba(25,50,85,.035);transition:box-shadow .3s,border-color .3s,transform .3s}
.guide-tile:hover {box-shadow:0 21px 60px rgba(25,50,85,.08);border-color:#d9e2ee;transform:translateY(-6px)}
.tile-art {flex:0 0 72px;width:72px;height:72px;display:grid;place-items:center;border-radius:20px;background:#f8e7e1;color:#d96d4a;position:relative}
.tile-art::after {content:'';position:absolute;inset:-9px;border:1px dashed rgba(223,103,63,.16);border-radius:27px}
.tile-art svg {width:34px;height:34px}
.tile-art-vip {background:#edf1fa;color:#466cb0}
.tile-art-guide {background:#eaf6ef;color:#5a9e76}
.guide-index {font-family:Georgia,serif;font-size:10px;color:#9aabba;letter-spacing:1.5px}
.guide-tile h3 {font-size:19px;color:var(--navy);margin:3px 0 7px}
.guide-tile p {font-size:13px;line-height:2;color:#748195;margin:0 0 20px}
.guide-link {color:var(--accent);font-size:12px;font-weight:800;display:inline-flex;align-items:center;gap:7px}
.guide-link svg {width:16px;height:16px}
/* catalogue and templates */
.template-grid {gap:18px}
.template-card {border-radius:18px;border-color:#e8edf3;padding:10px;box-shadow:0 7px 25px rgba(25,50,85,.035);transform:translateZ(0)}
.template-card:hover {border-color:#cedceb;box-shadow:0 21px 44px rgba(25,50,85,.11)}
.template-thumb {border-radius:12px}
.template-badge {background:#fff;color:#bd613f;border:1px solid #f3e3d9;font-size:11px;box-shadow:0 7px 14px rgba(0,0,0,.05)}
.template-info h3 {color:var(--navy)}
.template-info p {color:#8290a1}
.template-actions .btn {min-height:37px}
.templates-section {padding-top:47px}
.templates-toolbar {display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:28px}
.templates-toolbar .filter-bar {margin:0;justify-content:flex-start}
.filter {color:#64758b;background:#fff;border-color:#e3eaf2}
.filter.active,.filter:hover {background:var(--accent);border-color:var(--accent);color:#fff}
.templates-search {width:280px;max-width:100%;height:45px;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e5ebf3;padding:0 13px;border-radius:12px}
.templates-search svg {width:18px;height:18px;color:#9aa8bc}
.templates-search input {width:100%;min-width:0;background:transparent;outline:none;border:0;font-size:12px;color:var(--navy)}
.search-empty {text-align:center;color:var(--muted);padding:22px}
.templates-help {display:flex;align-items:center;gap:10px;color:#79869a;margin:30px 0 0;font-size:12px}
.templates-help svg {width:18px;height:18px;color:var(--accent)}
/* VIP retains its own premium gold detailing */
.vip-section {background:linear-gradient(180deg,#fff,#f9fafe)}
.vip-card {border:1px solid #e2e8f2;border-radius:23px;background:#fff;box-shadow:0 16px 45px rgba(23,53,96,.07)}
.vip-card:hover {box-shadow:0 28px 65px rgba(23,53,96,.13);border-color:#d2ddec}
.vip-badge {background:#142b51;border-color:#142b51;color:#f5c77e;box-shadow:0 6px 17px rgba(12,29,61,.24)}
.vip-body h3 {font-size:23px;color:var(--navy)}
.vip-body p {color:#728196}
.vip-body ul {border-color:#edf1f5}
.vip-body li {color:#63738a}
.vip-body li svg {color:#d5a85b}
/* calendar white/blue-based reference direction; sample data labelled */
.calendar-section {background:#f5f8fc}
.calendar-showcase {gap:75px}
.calendar-panel {border-color:#e1e9f1;background:#fff;border-radius:27px;box-shadow:0 22px 60px rgba(27,56,97,.065)}
.calendar-panel:before {opacity:.24}
.calendar-chip {background:#edf4fc;border:1px solid #e0e9f6;color:#597ca9}
.calendar-chip:after {background:#d96742}
.calendar-panel h2 {font-size:34px;color:var(--navy);margin-top:14px}
.calendar-panel>p {font-size:13px;margin-bottom:20px}
.calendar-header strong {color:var(--navy);font-size:23px}
.calendar-header span {color:#8190a2;font-size:12px}
.calendar-day {cursor:pointer;border:1px solid #e2e9f2;border-radius:11px;background:#f2f6fa;box-shadow:none;transition:transform .25s,box-shadow .25s,border-color .25s,background .25s;padding-block:7px}
.calendar-day .day-no {color:#253753;font-size:18px}
.calendar-day small {font-size:9px;color:#98a5b3}
.calendar-day.busy {background:#e7eff9;border-color:#dce7f5}
.calendar-day.crowded {background:#cfdfed;border-color:#b9cde0}
.calendar-day.crowded .day-no,.calendar-day.crowded small {color:#2b476c}
.calendar-day.today {background:#fff4ed;border:2px solid #e2734d}
.calendar-day.today::before {background:#e2734d;color:white}
.calendar-day.selected {border:2px solid #183d78!important;background:#e7f0ff!important;box-shadow:0 0 0 3px rgba(24,61,120,.07)!important}
.calendar-day.selected .day-no {color:#183d78}
.calendar-day:hover {transform:translateY(-2px);box-shadow:0 8px 20px rgba(23,54,98,.09)}
.cal-placeholder {display:block;min-height:56px}
.calendar-legend {font-size:11px;color:#76869b}
.calendar-legend .lg.busy {background:#e7eff9}
.calendar-legend .lg.crowded {background:#cfdfed}
.calendar-legend .lg.today {background:#fff4ed;border-color:#e2734d}
.calendar-disclaimer {font-size:10px!important;color:#a2acb8!important;margin:12px 0 0!important;line-height:1.65!important}
.calendar-copy h2 {font-size:clamp(35px,3.4vw,52px);color:var(--navy)}
.calendar-copy p {color:#708097;font-size:16px;line-height:2.2}
.calendar-pick-message {display:inline-flex;align-items:center;border:1px solid #e7ecf3;background:#fff;padding:8px 15px;border-radius:10px;color:#6781a0;font-size:12px;font-weight:700;margin:3px 0 24px}
.calendar-copy .button-row {gap:22px}
.calendar-illustration {width:235px;margin:0 auto 10px;position:relative}
.calendar-icon-badge {background:linear-gradient(140deg,#f4f7fb,#eaf1f9);box-shadow:none;width:200px;height:200px}
.calendar-icon-card {background:#fff7f0;border-color:#efc2ad;color:#e56a43}
.calendar-icon-card svg {stroke:#e56a43}
.calendar-icon-ring::before,.calendar-icon-ring::after {border-color:#e6aa82}
.calendar-spark {position:absolute;color:#dfa56c;font-size:20px;animation:chipFloat 6s ease-in-out infinite}
.calendar-spark.s1 {right:0;top:44px}
.calendar-spark.s2 {left:4px;bottom:28px;animation-delay:-3s}
/* Service numbers, icons, helpful resource cards */
.service-section {background:#fff}
.service-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.service-tile {position:relative;min-height:298px;padding:28px 25px;background:#fff;border:1px solid #e4ebf4;border-radius:20px;transition:border-color .25s,box-shadow .25s,transform .25s}
.service-tile:hover {transform:translateY(-5px);border-color:#cddbed;box-shadow:0 25px 50px rgba(26,56,97,.07)}
.service-no {font-family:Georgia,serif;position:absolute;left:22px;top:19px;font-weight:700;font-size:15px;color:#d1dbe8;letter-spacing:1px}
.service-pictogram {height:78px;width:78px;border-radius:22px;background:linear-gradient(135deg,#fff3ed,#fbe4d9);display:grid;place-items:center;color:var(--accent);margin:25px 0 20px}
.service-pictogram svg {width:37px;height:37px;stroke-width:1.3}
.service-tile h3 {font-size:20px;margin:0 0 9px;color:var(--navy)}
.service-tile p {font-size:13px;color:#75849a;margin:0 0 15px}
.service-tile a {display:inline-flex;align-items:center;gap:7px;color:var(--accent);font-size:12px;font-weight:800}
.service-tile a svg {width:15px;height:15px}
.features-grid {gap:16px}
.feature {border-color:#e5ebf3;border-radius:17px;background:#fff;padding:26px 21px;box-shadow:0 8px 25px rgba(25,50,85,.025)}
.feature:hover {border-color:#cbd7e8;box-shadow:0 16px 44px rgba(25,50,85,.085)}
.feature .icon-wrap {background:#fff1ea;color:var(--accent);border-radius:13px}
.feature h3 {color:var(--navy)}
.feature p {color:#78869a}
/* FAQ like the reference's accessible, simple questions */
.faq-section {background:#fff}
.faq-list {max-width:960px}
.faq-item {border:1px solid #e5ebf2;border-radius:14px;margin-bottom:11px;padding-inline:23px;box-shadow:0 4px 18px rgba(26,54,94,.025)}
.faq-item[open] {border-color:#f0cbbd;box-shadow:0 12px 32px rgba(223,103,63,.07)}
.faq-item summary {padding:19px 0;font-size:14px;color:var(--navy)}
.faq-item summary::after {color:var(--accent)}
.faq-item p {font-size:13px;color:#73829a;margin-bottom:24px}
/* Page titles and forms */
.page-intro {background:radial-gradient(circle at 90% -10%,rgba(227,100,60,.11),transparent 34%),radial-gradient(circle at 0 90%,rgba(55,96,159,.08),transparent 36%),#f7faff;padding:83px 0 65px}
.page-intro h1 {color:var(--navy)}
.page-intro p {color:#7e8da0}
.breadcrumbs {color:#9ba9b9}
.intro-rule {background:var(--accent);border-radius:99px}
.builder-wrap {background:#f7f9fd}
.builder-head h1 {color:var(--navy)}
.form-panel,.preview-panel,.dash-item,.empty {border-color:#e0e8f1!important;box-shadow:0 15px 45px rgba(25,50,85,.045)}
.field input,.field textarea,.field select {border-color:#e3eaf2;background:#fff}
.field input:focus,.field textarea:focus,.field select:focus {border-color:var(--accent)}
.radio-template.active {border-color:var(--accent)}
.price-card {border-color:#e6eaf3;border-radius:19px;box-shadow:0 8px 28px rgba(23,53,94,.035)}
.price-card.featured {background:var(--navy);box-shadow:0 18px 45px rgba(23,53,94,.19)}
.price-card .popular {background:var(--accent)}
.price-card .price {color:var(--navy)}
.price-card.featured .price {color:#ffc09d}
.price-card .btn {margin-top:auto}
/* end-of-page CTA resembles a service brand rather than invitation wedding stationery */
.closing-section {padding-top:0}
.cta-block {background:linear-gradient(110deg,#1e4782,#162f58);border-radius:26px;padding:52px 58px;box-shadow:0 23px 50px rgba(21,47,88,.15)}
.cta-block::before {border-color:rgba(255,255,255,.18)}
.cta-block .eyebrow {background:rgba(255,255,255,.12);color:#fff2ea;border-color:rgba(255,255,255,.12)}
.cta-block h2 {font-size:30px;margin-top:11px}
.cta-block p {color:#c8d8eb}
.cta-block .btn.light {background:var(--accent);color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.1)}
.footer {background:#122a4f;color:#dbe5f4}
.footer-about {color:#aebfd7}
.footer-links {color:#b1c3dc}
.footer-links a:hover {color:#ffc0a2}
.footer-base {color:#92a8c5;border-color:rgba(255,255,255,.14)}
/* original wedding card visual itself is intentionally kept distinct */
.invitation-page {background:#eef2f8}
.envelope-view {background:#f4e6df}
/* animations: lively at desktop, accessible on mobile */
@keyframes heroHalo {0%,100%{transform:scale(1)}50%{transform:scale(1.055)}}
@keyframes sceneFloat {0%,100%{transform:translateY(0) rotate(5deg)}50%{transform:translateY(-15px) rotate(3deg)}}
@keyframes chipFloat {0%,100%{transform:translateY(0)}50%{transform:translateY(-13px)}}
@keyframes spin {to{transform:rotate(360deg)}}
@media(max-width:1200px){
 .nav-links{gap:13px}.nav-links a{font-size:11px}.nav-dashboard span{display:none}
 .hero-grid{gap:34px}.guide-tile{gap:13px;padding:21px}.tile-art{width:60px;height:60px;flex-basis:60px}
}
@media(max-width:1000px){
 .nav-links{display:none}.mobile-toggle{display:grid}.nav-dashboard span{display:inline}
 .hero-grid{gap:27px}.hero h1{font-size:40px}.hero-scene{height:485px}.hero-showcase{min-height:495px}.scene-halo{width:350px;height:350px}
 .scene-phone-chrome{width:228px;height:400px}.scene-chip-one{right:-8px}.scene-chip-two{left:-9px}
 .quickbar{grid-template-columns:repeat(3,1fr)}.guide-cards{gap:11px}.guide-tile{display:block;min-height:318px}
 .guide-tile .tile-art{margin-bottom:18px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:850px){
 .container{padding-inline:24px}
 .nav{height:74px}.nav-actions>.btn{display:inline-flex}.nav-actions{margin-right:auto}
 .hero-grid{grid-template-columns:1fr;gap:0;padding-top:62px;padding-bottom:93px}
 .hero-copy{text-align:center}.hero-copy>p{margin-inline:auto}.hero-action-row,.hero-mini-features{justify-content:center}
 .hero-showcase{margin-top:33px;min-height:500px}.hero-scene{width:min(530px,100%)}
 .guide-cards{grid-template-columns:1fr;gap:15px}.guide-tile{min-height:150px;display:flex;align-items:center}.guide-tile .tile-art{margin:0}
 .calendar-showcase{grid-template-columns:1fr;gap:45px}.calendar-copy{text-align:center}.calendar-copy .button-row{justify-content:center}
 .templates-toolbar{flex-wrap:wrap}.templates-search{width:100%}
}
@media(max-width:560px){
 .container{padding-inline:18px}.section{padding:69px 0}
 .nav{height:68px}.logo-link img{width:144px}.nav-dashboard{display:none}.nav-cta{font-size:11px;padding:9px 10px;min-height:37px}.nav-cta svg{width:15px;height:15px}.mobile-toggle{width:39px;height:39px}
 .hero{min-height:0}.hero-grid{padding-top:50px;padding-bottom:76px}.hero-kicker{font-size:10px}
 .hero h1{font-size:34px;letter-spacing:-1.4px;margin-top:20px}.hero-copy>p{font-size:13px;line-height:2.25}
 .hero-action-row{gap:8px}.hero-action-row .btn{font-size:12px;min-height:47px;padding-inline:12px}.hero-mini-features{gap:12px;margin-top:26px}.hero-mini-features span{font-size:10px}
 .hero-showcase{min-height:380px;margin-top:19px}.hero-scene{height:370px;border-radius:28px}.scene-halo{height:260px;width:260px;box-shadow:0 0 0 26px rgba(255,255,255,.36),0 0 0 58px rgba(255,255,255,.12)}
 .scene-phone-chrome{width:173px;height:322px;border-width:5px;border-radius:25px;padding:6px}.scene-invite{border-radius:15px}.scene-invite .inv-card .invite-names{font-size:20px}.scene-invite .inv-card .wedding-type{font-size:7px}.scene-invite .inv-card .invite-date{font-size:9px}
 .scene-chip{padding:7px 9px;border-radius:10px;gap:6px}.scene-chip>svg{height:29px;width:29px;padding:7px}.scene-chip b{font-size:9px}.scene-chip small{font-size:8px}.scene-chip-one{right:-8px;top:89px}.scene-chip-two{left:-8px;bottom:43px}.scene-ornament-a{width:60px;height:60px;right:18px;top:20px}.scene-floating-heart{font-size:23px;left:21px;top:28px}
 .quickbar-section{margin-top:-44px;padding-bottom:25px}.quickbar{grid-template-columns:repeat(3,minmax(0,1fr));padding:8px;border-radius:16px;gap:4px}.quick-item{padding:10px 2px;gap:7px}.quick-item-icon{width:39px;height:39px;border-radius:10px}.quick-item-icon svg{width:18px;height:18px}.quick-item-title{font-size:10px}.quick-item-title small{font-size:9px}
 .guide-section{padding-top:38px}.guide-heading h2{font-size:29px}.guide-heading>p{font-size:13px}.site-search{padding:6px}.site-search-wrap{gap:7px;padding-inline:5px}.site-search-wrap .btn{font-size:10px;padding-inline:9px;min-height:39px}.site-search-wrap input{font-size:11px}
 .guide-cards{gap:11px}.guide-tile{padding:17px;min-height:145px}.tile-art{width:53px;height:53px;flex-basis:53px;border-radius:13px}.tile-art svg{width:25px;height:25px}.guide-tile h3{font-size:16px}.guide-tile p{font-size:11px;margin-bottom:7px}.guide-index{font-size:8px}
 .section-h h2{font-size:28px}.section-h p{font-size:12px}.service-grid{grid-template-columns:1fr;gap:11px}.service-tile{min-height:204px;padding:20px 25px}.service-pictogram{height:56px;width:56px;margin:6px 0 11px}.service-pictogram svg{height:28px;width:28px}.service-tile h3{font-size:17px}.service-tile p{font-size:12px}.service-no{top:15px}
 .calendar-panel{padding:16px}.calendar-panel h2{font-size:29px}.calendar-showcase{gap:26px}.calendar-weekdays,.calendar-days{gap:5px}.calendar-day{min-height:44px;border-radius:8px}.calendar-day .day-no{font-size:16px}.calendar-day small{font-size:8px}.cal-placeholder{min-height:45px}.calendar-header strong{font-size:20px}.calendar-legend{gap:7px;font-size:9px}.calendar-disclaimer{font-size:9px!important}
 .calendar-copy h2{font-size:31px}.calendar-copy p{font-size:13px}.calendar-icon-badge{height:150px;width:150px}.calendar-illustration{width:165px}.calendar-icon-card{transform:scale(.85)}
 .faq-item summary{font-size:12px}.faq-item p{font-size:11px}.page-intro{padding:55px 0 42px}.page-intro h1{font-size:30px}.page-intro p{font-size:12px}
 .cta-block{padding:27px 20px}.cta-block h2{font-size:23px}
 .templates-section{padding-top:28px}
}
@media(prefers-reduced-motion: reduce){
 *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
 .reveal,.feature,.template-card,.price-card,.faq-item,.step,.benefit,.vip-card,.calendar-day{opacity:1!important;transform:none!important}
}

/* Mobile content always remains readable even before the scroll observer fires. */
@media (max-width:850px){
 .reveal,.template-card,.vip-card,.feature,.faq-item,.step,.benefit,.service-tile,.guide-tile,.calendar-day{opacity:1!important;transform:none}
}

/* v6 — two verified live VIP invitation examples */
.live-vip-visual{
  position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;
  justify-content:center;text-align:center;gap:6px;width:100%;height:100%;overflow:hidden;
  padding:32px 18px;color:#f9e7ca;background:#10213d;
  font-family:Peyda,Vazirmatn,Tahoma,sans-serif;
}
.live-vip-visual:before,.live-vip-visual:after{content:"";position:absolute;inset:15px;border:1px solid currentColor;opacity:.24;pointer-events:none}
.live-vip-visual:after{inset:25px;border-radius:50% 50% 10px 10px / 26% 26% 10px 10px;opacity:.14}
.live-vip-cinematic{
  background:radial-gradient(ellipse at 48% 13%,rgba(211,172,105,.28),transparent 45%),radial-gradient(ellipse at 78% 95%,rgba(85,75,131,.32),transparent 53%),linear-gradient(155deg,#0b1830,#283252 57%,#101c34);
  color:#efca87;
}
.live-vip-romantic{
  background:radial-gradient(ellipse at 20% 0%,rgba(201,157,170,.38),transparent 47%),radial-gradient(ellipse at 100% 100%,rgba(170,189,155,.4),transparent 54%),linear-gradient(155deg,#faf5ee,#f0e8e4 65%,#eee4dd);
  color:#806472;
}
.live-vip-noise{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle at 22% 25%,currentColor .7px,transparent 1px),radial-gradient(circle at 70% 75%,currentColor .8px,transparent 1px);background-size:73px 85px,129px 111px;opacity:.14}
.live-vip-rune{position:absolute;top:14%;left:13%;font:28px Georgia,serif;opacity:.7;animation:vipTwinkle 3.5s ease-in-out infinite alternate}
.live-vip-top{font:10px Georgia,serif;letter-spacing:2px;opacity:.75;margin-bottom:auto;z-index:1;direction:ltr}
.live-vip-emblem{width:54px;height:54px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font:28px Georgia,serif;opacity:.78;margin-top:auto;margin-bottom:18px;z-index:1}
.live-vip-intro{font-size:12px;opacity:.9;z-index:1}
.live-vip-names{font-weight:800;font-size:clamp(20px,2.4vw,36px);line-height:1.5;white-space:nowrap;z-index:1;letter-spacing:-1px}
.live-vip-names i{font-weight:400;font-style:normal;color:inherit;font-size:.65em;padding:0 5px;opacity:.8}
.live-vip-rule{width:58px;height:1px;background:currentColor;opacity:.6;margin-top:12px;z-index:1}
.live-vip-slogan{font-size:12px;margin-top:6px;opacity:.7;z-index:1}
.live-vip-caption{font-size:9px;line-height:1.5;opacity:.7;margin-top:auto;z-index:1;max-width:100%;text-wrap:balance}
.live-vip-romantic:before{border-color:#b59b92;opacity:.43}.live-vip-romantic:after{opacity:.2}
.live-vip-romantic .live-vip-emblem{color:#b58e9a;background:#fff6ee88}
.vip-real-sample{border-color:rgba(197,154,86,.45);background:#fffdf9}
.vip-real-sample .vip-preview{isolation:isolate;position:relative}
.vip-real-sample .vip-preview .live-vip-visual{transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.vip-real-sample:hover .vip-preview .live-vip-visual{transform:scale(1.035)}
.vip-real-sample .vip-badge{background:linear-gradient(120deg,#173054,#0b1c38);color:#ffe5b3}
.vip-action-set{display:flex;flex-direction:column;gap:9px}
.vip-action-set .btn{width:100%;justify-content:center}
.vip-live-btn{background:#fff;color:#16335c;border:1px solid #d4deeb}
.vip-live-btn:hover{background:#f6f9fc}
.template-card-live{border:1px solid #e3d1b9;background:#fffdf9}
.template-card-live .template-badge{background:#102749;color:#fff4d8}
.order-template-live{border-color:#dfcaac}
.order-template-live .order-art .live-vip-visual{padding:14px 6px;gap:3px}
.order-template-live .live-vip-emblem{width:29px;height:29px;font-size:16px;margin-bottom:6px}
.order-template-live .live-vip-top{font-size:7px;letter-spacing:1px}
.order-template-live .live-vip-names{font-size:18px}
.order-template-live .live-vip-intro{font-size:9px}
.order-template-live .live-vip-slogan{font-size:9px;margin:2px 0}
.order-template-live .live-vip-rule{margin-top:5px;width:38px}
.order-template-live .live-vip-caption{font-size:7px;line-height:1.35}
.order-template-live .order-quick-preview{width:100%;display:flex;text-decoration:none;align-items:center;justify-content:center;gap:6px}
.order-side-sample-link{margin:12px 0 0;font-size:12px;text-align:center;color:#174f92;font-weight:800}
.order-side-sample-link a{display:inline-flex;align-items:center;gap:5px;border-bottom:1px solid #9fbedb;padding-bottom:4px}
.order-side-sample-link[hidden]{display:none}
.order-side-preview .live-vip-names{font-size:29px}
@keyframes vipTwinkle{from{opacity:.38;transform:rotate(-12deg) scale(.8)}to{opacity:.95;transform:rotate(6deg) scale(1.1)}}
@media(max-width:650px){
  .vip-real-sample .vip-preview{height:310px}
  .template-card-live .template-thumb{height:225px}
  .template-card-live .live-vip-visual{padding:17px 8px;gap:3px}
  .template-card-live .live-vip-emblem{width:35px;height:35px;font-size:18px;margin-bottom:8px}
  .template-card-live .live-vip-names{font-size:19px}
  .template-card-live .live-vip-intro{font-size:9px}
  .template-card-live .live-vip-top{font-size:7px;letter-spacing:1px}
  .template-card-live .live-vip-caption{font-size:7px}
}
@media(prefers-reduced-motion:reduce){.live-vip-rune{animation:none}.vip-real-sample:hover .vip-preview .live-vip-visual{transform:none}}
/* Public gallery images uploaded through the admin catalog */
.uploaded-card-cover{height:100%;width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#edf0f3;position:relative;overflow:hidden;color:#263c58}.uploaded-card-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.uploaded-card-cover:hover img{transform:scale(1.055)}.uploaded-card-cover>span{position:absolute;inset:auto 10px 10px;max-width:calc(100% - 20px);padding:7px 10px;text-align:center;border-radius:7px;background:#172d4bd9;backdrop-filter:blur(9px);color:#fff;font-weight:700;font-size:12px}.uploaded-card-cover.generated{background:linear-gradient(145deg,#182e4d,#3b5276);color:#ffedce;gap:14px;text-align:center;padding:24px}.generated-symbol{font-size:50px;color:#e5bd80}.generated strong{font-size:clamp(16px,2vw,25px);line-height:1.8}.generated small{font-size:11px;color:#d4dce8}
