/* AmplyFi Technologies — main.css v1.2 */

:root{
  --cr:#D4200C;--cr-lt:#F0571E;--cr-pale:#FEF0ED;
  --amber:#E8A020;--amber-lt:#F5C842;
  --dark:#111111;--dark2:#1A1A1A;
  --slate:#3D3530;--muted:#7A6E68;
  --mist:#FAF8F7;--off:#F8F4F2;--white:#FFFFFF;
  --bdr:rgba(26,26,26,.1);--bdr2:rgba(26,26,26,.18);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"DM Sans",sans-serif;color:var(--dark2);background:var(--white);overflow-x:hidden}
a{text-decoration:none}ul{list-style:none}img{max-width:100%;height:auto}

nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:0 3rem;height:68px;background:rgba(7,24,38,0);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.nav-logo{display:flex;align-items:center}
.nav-links{display:flex;gap:2rem;list-style:none;align-items:center}.nav-links a{color:rgba(255,255,255,.7);font-size:.85rem;font-weight:400;letter-spacing:.03em;transition:color .2s}.nav-links a:hover{color:#fff}
.nav-links .cta{background:var(--cr);color:#fff!important;padding:.45rem 1.1rem;border-radius:4px;transition:background .2s!important}.nav-links .cta:hover{background:var(--cr-lt)!important}
.mob-btn{display:none;background:none;border:none;cursor:pointer;padding:4px;flex-direction:column;gap:5px}.mob-btn span{display:block;width:22px;height:2px;background:rgba(255,255,255,.8);border-radius:2px}

#hero{min-height:100vh;background:#071826;display:flex;flex-direction:column;justify-content:center;padding:7rem 3rem 5rem;position:relative;overflow:hidden}
.hg{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(212,32,12,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(212,32,12,.07) 1px,transparent 1px);background-size:60px 60px}
.hgl1{position:absolute;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(212,32,12,.10) 0%,transparent 70%);top:-200px;right:-200px;pointer-events:none}
.hgl2{position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(232,160,32,.10) 0%,transparent 70%);bottom:-100px;left:10%;pointer-events:none}
.hc{position:relative;max-width:860px}




h1{font-family:"Fraunces",serif;font-size:clamp(3rem,6vw,5.5rem);color:#fff;line-height:1.08;margin-bottom:1.5rem;letter-spacing:-.02em;font-weight:300}
h1 em{font-style:italic;color:var(--cr-lt)}
.hsub{font-size:1.15rem;color:rgba(255,255,255,.6);line-height:1.7;max-width:600px;font-weight:300;margin-bottom:2.5rem}
.ha{display:flex;gap:1rem;flex-wrap:wrap}
.bp{display:inline-flex;align-items:center;gap:.5rem;background:var(--cr);color:#fff;padding:.85rem 1.75rem;border-radius:4px;font-size:.9rem;font-weight:500;transition:background .2s,transform .15s;border:none;cursor:pointer;font-family:"DM Sans",sans-serif}
.bp:hover{background:var(--cr-lt);transform:translateY(-1px);color:#fff}
.bo{display:inline-flex;align-items:center;background:transparent;color:rgba(255,255,255,.8);padding:.85rem 1.75rem;border-radius:4px;font-size:.9rem;font-weight:400;border:1px solid rgba(255,255,255,.2);transition:border-color .2s,color .2s}
.bo:hover{border-color:rgba(255,255,255,.5);color:#fff}






#services{background:var(--off);padding:0;display:block;width:100%;overflow:hidden}
.snav{background:var(--dark2);display:grid;grid-template-columns:repeat(5,1fr);width:100%;overflow-x:auto;scrollbar-width:none}.snav::-webkit-scrollbar{display:none}.snav::-webkit-scrollbar-track{display:none}
.stab{width:100%;padding:clamp(.75rem,1.2vw,1.1rem) clamp(.5rem,1vw,1rem);color:rgba(255,255,255,.5);font-size:clamp(.7rem,1.05vw,.88rem);font-weight:400;cursor:pointer;border-bottom:2px solid transparent;transition:color .2s,border-color .2s;white-space:nowrap;background:none;border-top:none;border-left:none;border-right:none;font-family:"DM Sans",sans-serif;text-align:center;overflow:hidden;text-overflow:ellipsis;line-height:1.3}
.stab:hover{color:rgba(255,255,255,.8)}.stab.active{color:#fff;border-bottom-color:var(--amber-lt)}
.swrap{padding:4rem 3rem;max-width:1200px;margin:0 auto;display:block;width:100%}
.sp{display:none}.sp.active{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}
.sico2{width:52px;height:52px;background:var(--cr-pale);border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}
.sico2 svg{width:26px;height:26px;fill:var(--cr)}
.sp h3{font-family:"Fraunces",serif;font-size:clamp(1.6rem,2.5vw,2.2rem);color:var(--dark2);margin-bottom:.5rem;font-weight:300}
.stag{font-size:1rem;font-style:italic;color:var(--cr);font-family:"Fraunces",serif;margin-bottom:1rem}
.rule{width:48px;height:3px;background:var(--cr);border-radius:2px;margin:1.25rem 0 2rem}
.sbody{font-size:.92rem;color:var(--slate);line-height:1.8;margin-bottom:1.5rem;font-weight:300}
.slist{list-style:none;display:flex;flex-direction:column;gap:.6rem}
.slist li{display:flex;align-items:flex-start;gap:.6rem;font-size:.88rem;color:var(--slate);line-height:1.5}
.slist li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--cr);flex-shrink:0;margin-top:.5rem}
.scta{margin-top:1.5rem;display:inline-flex;align-items:center;gap:.6rem;font-size:.85rem;color:var(--cr);font-weight:500;transition:gap .2s}.scta:hover{gap:.9rem;color:var(--cr-lt)}
.sright{display:flex;flex-direction:column;gap:1rem}
.scard{background:var(--white);border:1px solid var(--bdr);border-radius:8px;padding:1.25rem 1.5rem}
.scard h4{font-size:.85rem;font-weight:500;color:var(--dark2);margin-bottom:.5rem}
.scard p{font-size:.82rem;color:var(--muted);line-height:1.6}
.scard ul{list-style:none;display:flex;flex-direction:column;gap:.3rem;margin-top:.4rem}
.scard ul li{font-size:.8rem;color:var(--muted);padding-left:.8rem;position:relative}
.scard ul li::before{content:"–";position:absolute;left:0;color:var(--cr)}
.pq{background:var(--dark2);border-radius:8px;padding:1.5rem;color:#fff}
.pq p{font-family:"Fraunces",serif;font-style:italic;font-size:1rem;line-height:1.65;color:rgba(255,255,255,.85);margin-bottom:.75rem}
.pq cite{font-size:.78rem;color:var(--amber-lt);font-style:normal}
.stds{background:var(--mist);border-radius:8px;padding:1.1rem 1.4rem}
.stds-lbl{font-size:.68rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.6rem}
.pills{display:flex;flex-wrap:wrap;gap:.4rem}
.pill{font-size:.72rem;padding:.25rem .6rem;background:var(--white);border:1px solid var(--bdr2);border-radius:100px;color:var(--slate)}

#about{background:var(--white);padding:6rem 3rem}
.ai{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.slbl{font-size:.72rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--cr);margin-bottom:.75rem}
h2{font-family:"Fraunces",serif;font-size:clamp(2rem,3.5vw,3rem);color:var(--dark2);margin-bottom:1rem;letter-spacing:-.02em;font-weight:300}
.slead{font-size:1.05rem;color:var(--slate);line-height:1.75;max-width:680px;font-weight:300}
.avbox{background:var(--dark2);border-radius:12px;padding:3rem 2.5rem;position:relative;overflow:hidden}
.avgrid{position:absolute;inset:0;background-image:linear-gradient(rgba(212,32,12,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(212,32,12,.08) 1px,transparent 1px);background-size:30px 30px}
.dfs{display:flex;flex-direction:column;gap:1.25rem;position:relative}
.df{display:flex;gap:1rem;align-items:flex-start}
.dn{font-family:"Fraunces",serif;font-size:2rem;font-weight:300;color:var(--amber);line-height:1;flex-shrink:0;width:2.5rem}
.dt h4{font-size:.9rem;font-weight:500;color:#fff;margin-bottom:.25rem}
.dt p{font-size:.82rem;color:rgba(255,255,255,.55);line-height:1.6;font-weight:300}
.secs{margin-top:2rem}.secs-lbl{font-size:.72rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.75rem}
.sects{display:flex;flex-wrap:wrap;gap:.5rem}.sect{font-size:.8rem;padding:.35rem .8rem;background:var(--mist);border:1px solid var(--bdr);border-radius:4px;color:var(--slate)}

#contact{background:#111;padding:6rem 3rem}
.ci{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.ci h2{color:#fff}.ci .slbl{color:var(--amber-lt)}.ci .rule{background:var(--amber-lt)}.ci .slead{color:rgba(255,255,255,.55)}
.citems{display:flex;flex-direction:column;gap:1.25rem;margin-top:2rem}
.citem{display:flex;align-items:flex-start;gap:.9rem}
.cicon{width:36px;height:36px;border-radius:8px;background:rgba(212,32,12,.15);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cicon svg{width:16px;height:16px;stroke:var(--amber-lt);fill:none;stroke-width:2}
.clbl{font-size:.72rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:.2rem}
.cval{font-size:.9rem;color:rgba(255,255,255,.8)}
.cform{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:2rem}
.fr{margin-bottom:1rem}.fr label{display:block;font-size:.78rem;font-weight:500;color:rgba(255,255,255,.5);margin-bottom:.4rem;letter-spacing:.04em}
.fr input,.fr select,.fr textarea{width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:6px;padding:.7rem .9rem;color:#fff;font-family:"DM Sans",sans-serif;font-size:.9rem;outline:none;transition:border-color .2s;-webkit-appearance:none;appearance:none}
.fr input::placeholder,.fr textarea::placeholder{color:rgba(255,255,255,.25)}
.fr input:focus,.fr select:focus,.fr textarea:focus{border-color:var(--cr)}
.fr textarea{resize:vertical;min-height:100px}.fr select option{background:#111;color:#fff}
.f2c{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.fstat{font-size:.85rem;margin-top:.75rem;padding:.6rem .9rem;border-radius:6px;display:none}
.fstat.ok{background:rgba(29,158,117,.15);color:#5DC9A6;display:block}
.fstat.er{background:rgba(212,32,12,.15);color:#F08070;display:block}

footer{background:#111;border-top:1px solid rgba(255,255,255,.06);padding:2rem 3rem;display:flex;align-items:center;justify-content:space-between}

.fcopy{font-size:.78rem;color:rgba(255,255,255,.3)}

.fu{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.fu.vis{opacity:1;transform:translateY(0)}

@media(max-width:900px){.sp.active{grid-template-columns:1fr;gap:2rem}.ai{grid-template-columns:1fr;gap:3rem}.ci{grid-template-columns:1fr;gap:3rem}.f2c{grid-template-columns:1fr}}
@media(max-width:768px){nav{padding:0 1.5rem}.nav-links{display:none;flex-direction:column}.nav-links.open{display:flex;position:absolute;top:68px;left:0;right:0;background:rgba(7,24,38,.98);padding:1.5rem 2rem;gap:1.25rem}.mob-btn{display:flex}#hero{padding:6rem 1.5rem 8rem}.swrap,#about,#contact{padding:4rem 1.5rem}footer{flex-direction:column;gap:.75rem;text-align:center;padding:2rem 1.5rem}}

.nav-logo{display:flex;align-items:center;text-decoration:none}
.wordmark{font-family:"DM Sans",sans-serif;font-size:1.45rem;font-weight:600;color:#fff;letter-spacing:-.02em;white-space:nowrap;text-shadow:0 0 40px rgba(212,32,12,.4)}
.wordmark em{font-style:normal;color:var(--cr-lt);font-weight:400}


.fwordmark{font-family:"DM Sans",sans-serif;font-size:1.1rem;font-weight:500;color:rgba(255,255,255,.6);letter-spacing:-.01em}
.fwordmark em{font-style:normal;color:rgba(240,87,30,.7)}






@media(max-width:768px){}

/* active nav link */
.nav-links a.nav-active { color: #fff !important; }
.nav-links a.nav-active:not(.cta) { border-bottom: 2px solid var(--cr-lt); padding-bottom: 2px; }
/* tab keyboard focus */
.stab:focus-visible { outline: 2px solid var(--amber-lt); outline-offset: -2px; }
/* smooth tab transition */
.sp{animation:none}
.sp.active{animation:fadeIn .25s ease}
@keyframes fadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}

@media (max-width: 768px) {
  
}

@media(max-width:900px){
  .snav{grid-template-columns:repeat(3,1fr)}
  .stab{font-size:clamp(.65rem,.9vw,.82rem);padding:.7rem .5rem}
}
@media(max-width:560px){
  .snav{grid-template-columns:repeat(2,1fr)}
  .stab{font-size:.72rem;padding:.65rem .4rem}
}
@media(max-width:360px){
  .snav{grid-template-columns:1fr 1fr}
  .stab{font-size:.68rem;padding:.6rem .3rem}
}

/* WordPress admin bar offset */
.admin-bar nav{top:32px}
@media screen and (max-width:782px){.admin-bar nav{top:46px}}
