/* Assignment Help Fast — V4 / approved composition, enlarged header and conversion widgets */
:root{--navy:#1b1464;--red:#c1272a}
.wrap{max-width:1550px;padding-inline:38px}
/* Header: larger brand lock-up, refined proportions and moving brand rule. */
.ref-header{isolation:isolate}
.ref-header::after{content:"";position:absolute;bottom:0;left:0;height:3px;width:100%;pointer-events:none;background:linear-gradient(90deg,transparent 1%,rgba(193,39,42,.1) 22%,var(--red) 46%,var(--navy) 54%,rgba(27,20,100,.1) 76%,transparent 99%);background-size:210% 100%;animation:headerAccentMove 10s ease-in-out infinite;opacity:.52}
.ref-header-inner{height:104px;min-height:104px;gap:23px}
.ref-header .brand{display:flex;align-items:center;flex:none}
.ref-header .brand-logo{width:272px;max-height:79px;object-fit:contain;object-position:left center}
.ref-header .main-nav{gap:23px}
.ref-header .main-nav>a,.ref-header .nav-dropdown-trigger{font-size:14px}
.ref-header .header-actions{gap:17px}
.ref-phone strong{font-size:15px}
.ref-header .header-cta{padding:13px 22px;min-height:51px}
/* Hero composition: larger content with balanced image, form and ample visual activity. */
.ref-hero{isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 48% 59%,rgba(222,215,252,.4),transparent 41%),radial-gradient(ellipse at 98% 8%,rgba(193,39,42,.055),transparent 26%),linear-gradient(110deg,#fafaff 0%,#f5f4fc 51%,#f3f1fa 100%)}
.ref-hero::before{left:-115px;top:50px;width:330px;height:330px;border:2px solid rgba(27,20,100,.065)}
.ref-hero::after{right:-105px;bottom:-160px;width:385px;height:385px;border:2px solid rgba(193,39,42,.065)}
.ref-hero-layout{position:relative;z-index:3;grid-template-columns:minmax(0,37%) minmax(0,28%) minmax(0,35%);align-items:center;gap:0;min-height:680px;height:auto;padding-top:40px;padding-bottom:43px}
.ref-hero-text{padding-right:8px;z-index:6}
.ref-hero-text h1{font-size:clamp(49px,3.3vw,67px);line-height:1.12;letter-spacing:-.053em;white-space:nowrap;margin:15px 0 23px}
.ref-hero-text>p{font-size:18px;line-height:1.76;max-width:500px;margin-bottom:22px}
.ref-hero-text ul{gap:11px;margin-bottom:26px}
.ref-hero-text li{font-size:16px}
.ref-hero-text li .icon{width:25px;height:25px}
.ref-pill{font-size:13.5px;padding:7px 17px}
.ref-hero-cta{gap:13px;flex-wrap:wrap}
.ref-hero-cta .btn{min-height:55px;font-size:14px;padding:15px 23px}
.ref-hero-image{height:615px;min-height:615px;align-self:center;margin-left:-23px;margin-right:-21px;z-index:4;overflow:hidden}
.ref-hero-image:before{background:linear-gradient(90deg,rgba(250,250,255,.95),transparent 23%,transparent 78%,rgba(244,242,251,.82))}
.ref-hero-image img{object-position:50% 50%;object-fit:cover}
.ref-hero-form{width:100%;max-width:460px;margin-left:0;justify-self:end;z-index:9;border-radius:16px;box-shadow:0 26px 66px rgba(27,20,100,.18);align-self:center}
.ref-form-head{padding:24px 20px 20px}
.ref-form-head h2{font-size:25px}
.ref-form-head p{font-size:13.5px}
.ref-inquiry-form{padding:23px 23px 9px;gap:12px}
.ref-inquiry-form .ref-input-row,.ref-inquiry-form .ref-tel,.ref-inquiry-form .ref-service-select{height:54px;border-radius:9px}
.ref-inquiry-form input,.ref-inquiry-form select,.ref-inquiry-form textarea{font-size:15.5px!important}
.ref-inquiry-form textarea{min-height:87px;border-radius:9px}
.ref-inquiry-form .ref-consent{font-size:12px;line-height:1.5}
.ref-inquiry-form .ref-form-submit{height:56px;min-height:56px;font-size:15.5px}
.ref-form-security{padding:13px 6px 19px;font-size:12.5px}
/* Cinematic academic motifs in empty left and right margins. Decorative and non-interactive. */
.ahf-hero-ambient{display:none;position:absolute;z-index:1;width:220px;height:410px;pointer-events:none;transform-style:preserve-3d;filter:drop-shadow(0 16px 30px rgba(27,20,100,.045))}
.ahf-hero-ambient--left{top:17%;left:1.6%}
.ahf-hero-ambient--right{top:22%;right:1.6%}
.ahf-ambient-halo{position:absolute;inset:40px 6px 46px;border:2px solid rgba(27,20,100,.1);border-radius:48% 52% 50% 45%;transform:rotate(-26deg);animation:softOrbit 19s linear infinite}
.ahf-ambient-halo:before,.ahf-ambient-halo:after{content:"";position:absolute;border-radius:50%}
.ahf-ambient-halo:before{inset:30px;border:1px dashed rgba(193,39,42,.24)}
.ahf-ambient-halo:after{width:22px;height:22px;background:var(--red);left:-10px;top:42%;box-shadow:0 0 0 12px rgba(193,39,42,.08)}
.ahf-ambient-tile{position:absolute;left:47px;top:118px;width:115px;height:115px;background:linear-gradient(145deg,#fff,#ecebfb);border:1px solid rgba(27,20,100,.13);border-radius:27px;box-shadow:0 22px 45px rgba(27,20,100,.1);transform:rotate(-11deg);display:grid;place-items:center;animation:academicFloat 5.8s ease-in-out infinite}
.ahf-ambient-tile .icon{width:65px;height:65px;color:var(--navy);stroke-width:1.5}
.ahf-hero-ambient--right .ahf-ambient-tile{transform:rotate(11deg);animation-delay:-2.7s}
.ahf-hero-ambient--right .ahf-ambient-tile .icon{color:var(--red)}
.ahf-hero-ambient--right .ahf-ambient-halo{border-color:rgba(193,39,42,.11);transform:rotate(18deg);animation-direction:reverse}
.ahf-ambient-glint{position:absolute;border-radius:13px;animation:glintPulse 3.5s ease-in-out infinite}
.ahf-ambient-glint--one{width:20px;height:20px;right:30px;top:66px;background:var(--red);opacity:.55;transform:rotate(45deg)}
.ahf-ambient-glint--two{width:12px;height:12px;left:26px;bottom:54px;background:var(--navy);opacity:.44;transform:rotate(45deg);animation-delay:-1.5s}
.ahf-ambient-dots{position:absolute;width:100px;height:78px;left:76px;bottom:0;opacity:.42;background-image:radial-gradient(circle at center,rgba(27,20,100,.28) 1.8px,transparent 2px);background-size:15px 15px}
.ahf-hero-ambient--right .ahf-ambient-dots{background-image:radial-gradient(circle at center,rgba(193,39,42,.3) 1.8px,transparent 2px)}
@media(min-width:1810px){.ahf-hero-ambient{display:block}}
/* Rich, visible hover and focus treatment retained from V3. */
.ref-service-card:focus-within{outline:2px solid #b7b3e8;outline-offset:3px}
.ref-service-card:hover>.icon,.ref-service-card:focus-within>.icon{transform:rotate(-7deg) scale(1.07)}
/* Tablet / compact laptop: keep forms aligned and avoid text/image intersection. */
@media(max-width:1450px){
 .wrap{padding-inline:30px}
 .ref-header-inner{height:94px;min-height:94px;gap:14px}
 .ref-header .brand-logo{width:233px;max-height:73px}
 .ref-header .main-nav{gap:14px}
 .ref-header .main-nav>a,.ref-header .nav-dropdown-trigger{font-size:13px}
 .ref-header .header-actions{gap:9px}
 .ref-phone strong{font-size:13px}
 .ref-header .header-cta{padding-inline:16px}
 .ref-hero-layout{grid-template-columns:37% 27% 36%;min-height:665px}
 .ref-hero-text h1{font-size:clamp(46px,3.5vw,55px)}
 .ref-hero-form{max-width:450px}
 .ref-hero-image{height:590px;min-height:590px}
}
@media(max-width:1120px){
 .ref-header-inner{height:83px;min-height:83px}
 .ref-header .brand-logo{width:218px}
 .ref-hero-text h1{font-size:clamp(40px,4vw,48px)}
 .ref-hero-text>p{font-size:16px}
 .ref-hero-text li{font-size:14px}
 .ref-inquiry-form{padding:17px 16px 5px}
 .ref-inquiry-form .ref-input-row,.ref-inquiry-form .ref-tel,.ref-inquiry-form .ref-service-select{height:50px}
 .ref-inquiry-form textarea{min-height:75px}
}
@media(max-width:1020px){
 .ref-header-inner{height:84px;min-height:84px}
 .ref-header .brand-logo{width:224px;max-height:69px}
 .ref-header .main-nav{gap:0}
 .ref-hero-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;min-height:0;height:auto;padding-top:38px;padding-bottom:54px}
 .ref-hero-text{grid-column:1;grid-row:1}
 .ref-hero-text h1{font-size:clamp(38px,5.3vw,56px);white-space:normal}
 .ref-hero-image{grid-column:2;grid-row:1;height:510px;min-height:510px;margin:0}
 .ref-hero-form{grid-column:1/-1;grid-row:2;width:100%;max-width:710px;justify-self:center;margin-top:0}
 .ref-inquiry-form{grid-template-columns:1fr 1fr;gap:12px;padding:22px}
 .ref-inquiry-form>textarea,.ref-consent,.ref-form-submit,.ref-inquiry-form .form-notice{grid-column:1/-1}
}
@media(max-width:720px){
 .wrap{padding-inline:20px}
 .ref-header-inner{height:75px;min-height:75px}
 .ref-header .brand-logo{width:215px;max-height:63px}
 .ref-hero-layout{grid-template-columns:minmax(0,1fr);gap:0;padding-top:38px;padding-bottom:45px}
 .ref-hero-text{grid-column:1;grid-row:1;padding-right:0}
 .ref-hero-text h1{font-size:clamp(37px,9.3vw,50px)}
 .ref-hero-text>p{font-size:16px}
 .ref-hero-text li{font-size:15px}
 .ref-hero-image{grid-column:1;grid-row:2;min-height:320px;height:350px;max-height:390px;margin:10px 0 18px}
 .ref-hero-form{grid-column:1;grid-row:3;max-width:520px}
 .ref-inquiry-form{display:grid;grid-template-columns:1fr;gap:12px;padding:20px}
 .ref-inquiry-form>textarea,.ref-consent,.ref-form-submit,.ref-inquiry-form .form-notice{grid-column:auto}
 .ref-inquiry-form .ref-input-row,.ref-inquiry-form .ref-tel,.ref-inquiry-form .ref-service-select{height:54px}
 .ref-inquiry-form textarea{min-height:87px}
 .ref-hero:before{left:-265px;opacity:.6}
 .ref-hero:after{right:-260px;opacity:.5}
}
@media(max-width:385px){.ref-header .brand-logo{width:193px}.ref-hero-text h1{font-size:35px}.ref-hero-cta .btn{flex:1 1 auto}}
@keyframes headerAccentMove{0%,100%{background-position:0 0}50%{background-position:100% 0}}
@keyframes softOrbit{0%{rotate:0deg}100%{rotate:360deg}}
@keyframes academicFloat{0%,100%{translate:0 0}50%{translate:0 -17px}}
@keyframes glintPulse{0%,100%{scale:1;opacity:.3}50%{scale:1.22;opacity:.65}}
@media(prefers-reduced-motion:reduce){.ref-header::after,.ahf-ambient-halo,.ahf-ambient-tile,.ahf-ambient-glint{animation:none!important}}
