@font-face{font-family:Vazirmatn;src:url("assets/fonts/vazirmatn.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
:root{color-scheme:light;--ink:#173c58;--muted:#52697b;--teal:#187466;--line:#dce5ec;--background:#f4f7fa;font-family:Vazirmatn,Tahoma,Arial,sans-serif;color:var(--ink);background:var(--background);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 0,#e6eff6 0,transparent 55%);min-height:100vh}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #168cba;outline-offset:5px}button{cursor:pointer}.shell{width:min(100% - 32px,1060px);margin-inline:auto}.site-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:24px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:38px;height:42px;border:1px solid #b9d0df;border-radius:12px;display:grid;place-items:center;color:var(--ink);background:#e7eff5}.brand-mark svg{width:22px;height:22px;fill:currentColor}.brand-name{font-size:1rem;font-weight:750;display:block}.brand-english{display:block;font:500 .625rem/1.5 Arial,sans-serif;letter-spacing:.14em;margin-top:3px;color:var(--muted)}.language-switch{display:flex;gap:3px;background:#e9eff4;border:1px solid #d7e1e9;padding:3px;border-radius:10px;direction:rtl}.language-switch[hidden]{display:none}.language-switch button{min-width:44px;min-height:38px;padding:4px 9px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:.875rem}.language-switch button[aria-pressed=true]{background:#fff;color:var(--ink);box-shadow:0 1px 4px #193b5010}.intro{text-align:center;padding:32px 0 25px}.status{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--teal);font-size:.875rem;margin:0 0 15px;font-weight:500}.status>span:first-child{width:6px;height:6px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px #1874660b}.intro h1{font-size:clamp(1.625rem,3.8vw,2.75rem);line-height:1.7;letter-spacing:-.025em;font-weight:800;margin:0 0 9px}.intro-description{font-size:1rem;line-height:1.95;color:var(--muted);margin:0}.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;direction:ltr}.photo-card{display:block;position:relative;overflow:hidden;border-radius:10px;aspect-ratio:2/3;background:#cbd1da;text-decoration:none}.photo-card img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block;transition:transform .25s ease}.enlarge{position:absolute;bottom:7px;right:7px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fffdf7e8;color:var(--ink);font:18px/1 Arial,sans-serif}.photo-hint{font-size:.875rem;line-height:1.8;text-align:center;color:var(--muted);margin:11px 0 23px}.contact{border:1px solid var(--line);background:#fff;border-radius:20px;box-shadow:0 12px 35px #173c5805;padding:22px 20px 16px}.contact-main{display:flex;flex-direction:column;gap:18px}.contact-copy h2{font-size:1.25rem;line-height:1.8;margin:0 0 5px;font-weight:750}.contact-copy p,.instagram-row p{font-size:.9375rem;line-height:1.9;margin:0;color:var(--muted)}.call-button{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--ink);color:#fff;text-decoration:none;border-radius:12px;padding:12px 18px;min-height:72px}.call-button>span{flex:1}.call-label{display:block;font-size:.8125rem;color:#dce9f3}.phone{display:block;font-size:1.375rem;font-weight:650;line-height:1.6;width:max-content}.icon{width:23px;height:23px;flex:none}.call-arrow{width:22px;height:22px;opacity:.65;flex:none}.instagram-row{border-top:1px solid #e6ecf1;margin-top:22px;padding-top:16px;display:flex;flex-direction:column;gap:8px}.instagram-link{display:inline-flex;align-items:center;gap:8px;direction:ltr;align-self:flex-start;min-height:44px;text-underline-offset:5px;text-decoration-color:#b1c4d2;font-size:1rem;font-weight:550}.instagram-link>span{font:18px Arial,sans-serif;margin-left:4px}.site-footer{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px;padding-block:24px;color:#6d7f8c;font-size:.75rem}.site-footer [lang=en]{font-family:Arial,sans-serif;letter-spacing:.025em}.footer-line{height:11px;width:1px;background:#c2d0da}.skip-link{position:absolute;top:8px;inset-inline-start:16px;transform:translateY(-200%);z-index:10;padding:10px;background:white}.skip-link:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.photo-dialog{border:0;border-radius:16px;padding:0;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);background:transparent;overflow:visible}.photo-dialog::backdrop{background:#0b1d2ae8;backdrop-filter:blur(5px)}.full-photo{display:block;max-width:calc(100vw - 32px);max-height:calc(100dvh - 56px);width:auto;height:auto;border-radius:12px;object-fit:contain}.close-photo{position:absolute;top:10px;right:10px;z-index:1;width:44px;height:44px;display:grid;place-items:center;border:1px solid #fff8;border-radius:50%;background:#fff;color:var(--ink);font:30px/1 Arial,sans-serif;box-shadow:0 3px 12px #0002}body:has(dialog[open]){overflow:hidden}html[dir=ltr] .call-arrow{transform:rotate(180deg)}html[dir=ltr] .intro h1{line-height:1.25;margin-bottom:16px}html[dir=ltr] .brand-english{display:none}
@media(min-width:640px){.shell{width:min(100% - 64px,1060px)}.site-header{padding-block:25px}.brand{gap:12px}.brand-mark{width:44px;height:48px}.brand-name{font-size:1.125rem}.brand-english{font-size:.6875rem}.intro{padding:38px 0 31px}.photo-grid{gap:12px}.photo-card{border-radius:16px}.enlarge{width:30px;height:30px;bottom:12px;right:12px;font-size:20px}.contact{padding:27px 30px 21px}.contact-main{flex-direction:row;align-items:center;justify-content:space-between;gap:24px}.contact-copy{max-width:58%}.call-button{min-width:230px}.contact-copy h2{font-size:1.375rem}.instagram-row{flex-direction:row;justify-content:space-between;align-items:center;gap:24px}.instagram-row p{max-width:68%}.instagram-link{align-self:center;white-space:nowrap}.photo-hint{margin-bottom:26px}.site-footer{padding-block:28px}}
@media(min-width:1024px){.photo-grid{gap:18px}.intro{padding-top:40px}.photo-card{border-radius:18px}.contact{padding-inline:34px}.contact-copy p{font-size:1rem}.call-button{min-width:255px}.intro-description{font-size:1.0625rem}}
@media(hover:hover){.photo-card:hover img{transform:scale(1.025)}.call-button:hover{background:#214e6e}.instagram-link:hover{text-decoration-color:var(--ink)}}
/* Official brand, theme controls, and gentle progress heartbeat. */
:root{--surface:#fff;--control:#e9eff4;--button:#173c58;--glow:#e6eff6}
:root[data-theme=dark]{color-scheme:dark;--ink:#e7f1f8;--muted:#b0c3d1;--teal:#8cdbc7;--line:#324958;--background:#10212e;--surface:#192f40;--control:#20394b;--button:#285979;--glow:#213d52}
body{background:radial-gradient(ellipse at 50% 0,var(--glow) 0,transparent 55%)}
.site-header{padding-block:16px}
.brand{text-decoration:none;border-radius:10px;min-width:0}
.brand-logo{display:block;flex:none;width:60px;height:auto;border-radius:7px;background:#f7f7f7}
.header-controls{display:flex;flex-direction:column;align-items:stretch;gap:8px;flex:none}
.language-switch{background:var(--control);border-color:var(--line)}
.language-switch button{min-height:44px}
.language-switch button[aria-pressed=true]{background:var(--surface)}
.theme-toggle{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 11px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font-size:.8125rem}
.theme-toggle[hidden]{display:none}
.theme-toggle .icon{width:19px;height:19px}
.theme-label{white-space:nowrap}
@media(max-width:359px){.theme-toggle{gap:5px;padding-inline:8px;font-size:.75rem}}
.sun-icon{display:none}
[data-theme=dark] .sun-icon{display:block}
[data-theme=dark] .moon-icon{display:none}
.status{font-size:clamp(1rem,2.3vw,1.1875rem);font-weight:650;gap:12px;line-height:1.8}
.status>span:first-child{width:9px;height:9px;flex:none;box-shadow:0 0 0 5px #18746614;animation:heartbeat 4s ease-in-out infinite}
.status>span:last-child{display:inline-block;transform-origin:center;animation:status-breathe 4s ease-in-out infinite}
@keyframes heartbeat{0%,40%,100%{transform:scale(1);opacity:.85}12%,28%{transform:scale(1.32);opacity:1}20%{transform:scale(1.05)}}
@keyframes status-breathe{0%,40%,100%{opacity:.86;transform:scale(1)}12%{opacity:1;transform:scale(1.035)}20%{opacity:.93;transform:scale(1.008)}28%{opacity:1;transform:scale(1.025)}}
.contact{background:var(--surface)}
.call-button{background:var(--button)}
.instagram-row{border-color:var(--line)}
.enlarge,.close-photo{color:#173c58}
.skip-link{background:var(--surface)}
.site-footer{color:var(--muted);column-gap:12px;row-gap:0;padding-block:16px}
.footer-line{background:var(--line)}
.footer-motto{font-size:.875rem;line-height:1.8;text-align:center}
@media(width < 640px){.site-footer{flex-direction:column;gap:4px}.footer-line{display:none}}
@media(max-width:359px){.call-button{gap:10px;padding-inline:14px}.call-arrow{display:none}}
.email-link{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:4px;text-decoration-color:var(--muted)}
@media(max-width:359px){.brand-copy{max-width:115px}.brand-name{font-size:.875rem}.brand-english{font-size:.5rem;letter-spacing:.06em}.brand{gap:7px}.site-header{gap:10px}.header-controls{max-width:105px}.status{gap:9px;font-size:1rem}.site-footer{column-gap:8px;font-size:.6875rem}}
@media(min-width:640px){.brand-logo{width:72px}.header-controls{flex-direction:row;align-items:center}.theme-toggle{min-height:52px}.site-header{padding-block:18px}.site-footer{padding-block:20px}}
@media(hover:hover){.theme-toggle:hover{border-color:var(--muted)}.email-link:hover{text-decoration-color:var(--ink)}}
/* Phone: one portrait; tablet: two; desktop: four. */
.photo-grid{grid-template-columns:minmax(0,1fr);gap:16px;direction:inherit}
.photo-card{border-radius:16px}
.enlarge{width:36px;height:36px;bottom:12px;right:12px;font-size:22px}
.brand-logo{background:transparent;border-radius:0}
[data-theme=dark] .brand-logo{filter:brightness(0) invert(1);opacity:.94}
.menu-toggle{display:none;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink)}
.menu-close{display:none}
.menu-toggle[aria-expanded=true] .menu-bars{display:none}
.menu-toggle[aria-expanded=true] .menu-close{display:block}
.controls-title{display:none}
.contact-shortcut{display:inline-flex;align-items:center;min-height:44px;margin-top:12px;font-size:.9375rem;text-underline-offset:5px}
.contact{scroll-margin-top:20px}
@media(width < 1024px){
  .site-header{position:relative;justify-content:center;padding-block:18px}
  .brand{flex-direction:column;text-align:center;gap:8px;margin-inline:56px}
  .brand-copy{max-width:none}
  .brand-name{font-size:1rem}
  .brand-english{font-size:.625rem;letter-spacing:.12em}
  .menu-toggle:not([hidden]){display:flex;position:absolute;inset-inline-end:0;top:24px}
  .header-controls{position:absolute;z-index:5;top:calc(100% - 4px);inset-inline-end:0;width:min(290px,100%);max-width:none;padding:18px;flex-direction:column;align-items:stretch;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 35px #0003}
  .menu-ready .header-controls:not(.is-open){display:none}
  .controls-title{display:block;margin:0;font-size:.9375rem;font-weight:650;color:var(--muted)}
  .header-controls .language-switch button{flex:1;min-height:48px;font-size:1rem}
  .header-controls .theme-toggle{min-height:52px;font-size:1rem;padding:10px 16px}
}
@media(min-width:640px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(min-width:640px) and (width < 1024px){.brand{flex-direction:row;text-align:start;gap:14px}.brand-name{font-size:1.125rem}.menu-toggle:not([hidden]){top:50%;transform:translateY(-50%)}.header-controls .language-switch button{min-height:52px;font-size:1.0625rem}.header-controls .theme-toggle{font-size:1.0625rem}}
@media(min-width:1024px){.photo-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.header-controls{flex-direction:row}.contact-shortcut{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
