/*
Theme Name: Abi K Royal Academy
Author: Websites By Francetta
Author URI: https://websitesbyfrancetta.com
Version: 1.1
Description: Custom theme for Abi K Royal Academy Nursery and Primary School.
*/
:root{--purple:#2B1450;--purple2:#3D1E6D;--lav:#8A5CC2;--orange:#E8741A;--burnt:#B5521B;--gold:#F2C24B;--cream:#FBF7F0;--ink:#24123F;--muted:#5E5270;--line:#E6DCEB}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:"Trebuchet MS",Helvetica,Arial,sans-serif;color:var(--ink);background:var(--cream);line-height:1.6}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.2;margin:0 0 .5em}
a{color:var(--burnt)}img{max-width:100%;display:block}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
.plaid{height:14px;background:url(plaid.webp) center/120px repeat}
header.top{background:var(--purple);color:#fff;position:sticky;top:0;z-index:10;box-shadow:0 2px 10px rgba(0,0,0,.2)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 20px}
.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none}
.brand img{width:52px;height:52px;border-radius:50%;border:2px solid var(--gold)}
.brand b{font-family:Georgia,serif;font-size:1.15rem;letter-spacing:.5px;display:block}
.brand small{color:var(--gold);font-size:.78rem;letter-spacing:1.5px;text-transform:uppercase}
nav a{color:#fff;text-decoration:none;margin-left:20px;font-size:.95rem}nav a:hover{color:var(--gold)}
.btn{display:inline-block;background:var(--orange);color:#fff;text-decoration:none;font-weight:bold;padding:13px 26px;border-radius:40px;border:0;cursor:pointer;font-size:1rem;font-family:inherit;transition:background .2s}
.btn:hover{background:var(--burnt)}.btn.ghost{background:transparent;border:2px solid var(--gold);color:var(--gold)}.btn.ghost:hover{background:var(--gold);color:var(--purple)}
nav .btn{margin-left:20px;padding:9px 18px}
.hero{background:linear-gradient(120deg,rgba(43,20,80,.97) 45%,rgba(43,20,80,.82)),url(plaid.webp) center/180px;color:#fff;padding:70px 0 80px}
.hero .wrap{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center}
.eyebrow{display:inline-block;background:var(--gold);color:var(--purple);font-weight:bold;font-size:.8rem;letter-spacing:2px;text-transform:uppercase;padding:6px 14px;border-radius:30px;margin-bottom:18px}
.hero h1{font-size:3rem}.hero h1 span{color:var(--gold)}
.hero p{font-size:1.15rem;color:#E9E0F5;max-width:540px}
.hero .ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
.hero .seal{justify-self:center;width:min(340px,80%);border-radius:50%;box-shadow:0 0 0 10px rgba(242,194,75,.25),0 20px 50px rgba(0,0,0,.4)}
.motto{font-family:Georgia,serif;font-style:italic;color:var(--gold);font-size:1.2rem;margin-top:8px}
section{padding:70px 0}
.title{text-align:center;max-width:680px;margin:0 auto 40px}.title h2{font-size:2.2rem;color:var(--purple)}
.title p{color:var(--muted)}.title .bar{width:70px;height:4px;background:var(--orange);margin:0 auto 18px;border-radius:2px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:22px}
.card{background:#fff;border-radius:14px;padding:28px;border-top:5px solid var(--orange);box-shadow:0 6px 22px rgba(43,20,80,.08)}
.card h3{color:var(--purple);font-size:1.25rem}.card p{color:var(--muted);margin:0}
.card .ic{font-size:2rem;margin-bottom:10px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.band{background:var(--purple);color:#fff}.band .title h2{color:#fff}.band .title p{color:#D9CCEB}
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}
.step{background:var(--purple2);border-radius:14px;padding:24px;border:1px solid rgba(242,194,75,.3)}
.step:before{counter-increment:s;content:counter(s);display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--gold);color:var(--purple);font-weight:bold;margin-bottom:12px}
.step h3{font-size:1.1rem}.step p{color:#D9CCEB;margin:0;font-size:.95rem}
.docs{list-style:none;padding:0;margin:0}.docs li{padding:8px 0 8px 30px;position:relative;border-bottom:1px dashed var(--line)}
.docs li:before{content:"✓";position:absolute;left:0;color:var(--orange);font-weight:bold}
.give{background:linear-gradient(rgba(251,247,240,.94),rgba(251,247,240,.94)),url(plaid.webp) center/160px}
.etransfer{background:var(--purple);color:var(--gold);font-weight:bold;font-size:1.25rem;padding:16px 22px;border-radius:12px;border:3px solid var(--gold);text-align:center;word-break:break-word}
form.f{background:#fff;border-radius:16px;padding:30px;box-shadow:0 8px 30px rgba(43,20,80,.1)}
.f fieldset{border:0;padding:0;margin:0 0 26px}
.f legend{font-family:Georgia,serif;font-size:1.25rem;color:var(--purple);font-weight:bold;padding-bottom:6px;margin-bottom:14px;border-bottom:3px solid var(--orange);width:100%}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}.grid .full{grid-column:1/-1}
.f label{display:block;font-size:.88rem;font-weight:bold;color:var(--purple);margin-bottom:5px}
.f label .req{color:var(--burnt)}
.f input,.f select,.f textarea{width:100%;padding:11px 13px;border:1.5px solid var(--line);border-radius:9px;font:inherit;background:#FDFBFF;color:var(--ink)}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--lav);box-shadow:0 0 0 3px rgba(138,92,194,.18)}
.f textarea{min-height:110px;resize:vertical}
.opts{display:flex;gap:18px;flex-wrap:wrap;padding-top:4px}.opts label{font-weight:normal;color:var(--ink);display:flex;align-items:center;gap:6px;margin:0}
.opts input{width:auto}
.hp{position:absolute;left:-9999px}
.msg{display:none;margin-top:16px;padding:14px 16px;border-radius:10px;font-weight:bold}
.msg.ok{display:block;background:#E8F6EC;color:#1E6B34}.msg.err{display:block;background:#FDECEA;color:#9B2C1F}
.note{font-size:.85rem;color:var(--muted)}
.contact-list{list-style:none;padding:0;margin:0}.contact-list li{margin-bottom:16px}
.contact-list b{display:block;color:var(--purple)}
footer{background:#1C0C36;color:#CFC2E3;padding:40px 0 24px;font-size:.92rem}
footer .wrap{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}
footer h4{color:var(--gold);font-family:Georgia,serif;margin:0 0 10px;font-size:1.05rem}
footer a{color:#CFC2E3;text-decoration:none}footer a:hover{color:var(--gold)}
footer .copy{grid-column:1/-1;border-top:1px solid #3A2560;padding-top:18px;text-align:center;color:#9A8BB5}
.page-hero{background:var(--purple);color:#fff;padding:50px 0;text-align:center}.page-hero h1{font-size:2.4rem}.page-hero p{color:#D9CCEB;margin:0}
@media(max-width:860px){nav a:not(.btn){display:none}.hero .wrap,.split,footer .wrap{grid-template-columns:1fr}.hero h1{font-size:2.3rem}.hero .seal{width:220px;order:-1}.grid{grid-template-columns:1fr}}
/* Fluent Forms skin */
.fluentform .ff-el-group{margin-bottom:16px}
.fluentform .ff-el-input--label label{font-weight:bold;color:#2B1450;font-size:.9rem}
.fluentform .ff-el-form-control{border:1.5px solid #E6DCEB;border-radius:9px;padding:11px 13px;background:#FDFBFF;font-family:inherit}
.fluentform .ff-el-form-control:focus{border-color:#8A5CC2;box-shadow:0 0 0 3px rgba(138,92,194,.18)}
.fluentform .ff-el-section-break .ff-el-section-title{font-family:Georgia,serif;color:#2B1450;font-size:1.3rem;margin-top:14px}
.fluentform .ff-el-section-break hr{border:0;border-top:3px solid #E8741A;margin:6px 0 4px}
.fluentform .ff-btn-submit{background:#E8741A!important;color:#fff!important;border-radius:40px!important;padding:13px 28px!important;font-weight:bold;border:0!important}
.fluentform .ff-btn-submit:hover{background:#B5521B!important}
.fluentform .ff-message-success{background:#E8F6EC;color:#1E6B34;border:0;border-radius:10px;font-weight:bold}
.fluentform .ff-el-is-required.asterisk-right label:after{color:#B5521B}
.f .ff_columns_total_2{gap:0}
.formbox{background:#fff;border-radius:16px;padding:30px;box-shadow:0 8px 30px rgba(43,20,80,.1)}
.formbox h3{font-family:Georgia,serif;color:#2B1450;border-bottom:3px solid #E8741A;padding-bottom:6px}
.entry{max-width:860px;margin:0 auto}

/* === v2 restyle: ivory palette, lighter purple === */
:root{--ivory:#FBF6EA;--ivory2:#F3EAD6;--gold2:#C9A227}
body{background:var(--ivory)}
header.top{background:#FFFDF8;color:var(--purple);border-bottom:3px solid var(--gold2);box-shadow:0 2px 14px rgba(43,20,80,.08)}
header.top+.plaid{display:none}
header.top .wrap{padding:10px 20px}
.brand{color:var(--purple)}
.brand img{width:84px;height:84px;border:3px solid var(--gold2);background:#fff;padding:2px;box-shadow:0 3px 12px rgba(43,20,80,.25);filter:saturate(1.2) contrast(1.1) brightness(1.05)}
.brand b{font-size:1.35rem;color:var(--purple)}
.brand small{color:var(--burnt);font-weight:bold}
nav a{color:var(--purple);font-weight:bold}nav a:hover{color:var(--orange)}
nav .btn{color:#fff}
.hero{background:radial-gradient(ellipse at 80% 100%,rgba(242,194,75,.28),transparent 60%),linear-gradient(180deg,#FFFDF8,var(--ivory2));color:var(--ink);padding:60px 0 0;overflow:hidden}
.hero .wrap{align-items:end}
.hero .wrap>div:first-child{padding-bottom:60px}
.hero h1{color:var(--purple)}.hero h1 span{color:var(--orange)}
.hero p{color:#4A3B5C}
.motto{color:var(--burnt)}
.hero .btn.ghost{border-color:var(--purple);color:var(--purple)}.hero .btn.ghost:hover{background:var(--purple);color:#fff}
.hero .wrap{grid-template-columns:1fr 1.15fr}.hero .kids{width:100%;max-width:none;justify-self:center;display:block;filter:drop-shadow(0 12px 18px rgba(43,20,80,.18))}
.band{background:var(--ivory2);color:var(--ink)}
.band .title h2{color:var(--purple)}.band .title p{color:var(--muted)}
.step{background:#fff;border:1px solid #E9DCC0;box-shadow:0 6px 20px rgba(43,20,80,.06)}
.step:before{background:var(--purple);color:#fff}
.step h3{color:var(--purple)}.step p{color:var(--muted)}
.page-hero{background:linear-gradient(180deg,#FFFDF8,var(--ivory2));color:var(--purple);border-bottom:1px solid #E9DCC0}
.page-hero p{color:var(--muted)}
.card{border-top-color:var(--gold2)}
.give{background:var(--ivory2)}
@media(max-width:860px){.brand img{width:64px;height:64px}.brand b{font-size:1.05rem}.hero{padding-top:40px}.hero .wrap>div:first-child{padding-bottom:10px}.hero .kids{order:2}}/* v3 crest */
header.top .wrap{padding:4px 20px}
.brand img{width:104px;height:104px;border:0;border-radius:50%;background:none;padding:0;box-shadow:none;filter:saturate(1.15) contrast(1.08);margin:-2px 0}
.brand b{font-size:1.5rem}
@media(max-width:860px){.brand img{width:72px;height:72px}.brand b{font-size:1.05rem}}/* v4 kids */
@media(min-width:861px){.hero .wrap{grid-template-columns:.85fr 1.15fr!important;max-width:1240px}.hero .kids{width:118%!important;max-width:none!important;margin-left:-6%}}
@media(max-width:860px){.hero .kids{width:100%;max-width:520px;margin:0 auto}}/* v5 band */
header.top{border-bottom:0;position:sticky}
header.top::after{content:"";display:block;height:14px;
 background:
  repeating-linear-gradient(90deg,transparent 0 22px,rgba(43,20,80,.55) 22px 30px,transparent 30px 40px,rgba(242,194,75,.85) 40px 42px,transparent 42px 52px,rgba(43,20,80,.55) 52px 60px,transparent 60px 80px),
  linear-gradient(180deg,#2B1450 0 3px,#F2C24B 3px 4px,#B5521B 4px 6px,#E8741A 6px 10px,#B5521B 10px 11px,#F2C24B 11px 12px,#2B1450 12px 14px);
 box-shadow:0 3px 10px rgba(43,20,80,.18)}
/* v5 kids: three pupils */
.hero .kids{width:auto!important;max-width:100%!important;max-height:540px;margin:0 auto!important;justify-self:center}
@media(max-width:860px){.hero .kids{max-height:420px}}
/* v6 purple sections */
#admissions,#support{background:radial-gradient(ellipse at 15% 0%,rgba(232,116,26,.18),transparent 55%),linear-gradient(160deg,#2B1450,#3D1E6D)!important;color:#F3EAD6}
#admissions .title h2,#support h2{color:#FBF6EA!important}
#admissions .title p,#support p{color:#E2D6EE!important}
#admissions .step{background:#FBF6EA;border:0;border-top:4px solid #E8741A}
#admissions .step:before{background:#E8741A;color:#fff}
#support .eyebrow{background:#E8741A;color:#fff}
#support .etransfer{background:rgba(251,246,234,.08);border-color:#F2C24B;color:#F2C24B}
#support .note a{color:#F2C24B}
#support .formbox{box-shadow:0 12px 34px rgba(0,0,0,.3)}
#support .formbox p{color:#5E5270!important}/* v7 pledge btn */
#support .note:has(a[href*="printable"]){text-align:center;margin-top:18px!important}
#support .note a[href*="printable"]{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border:2px solid #F2C24B;border-radius:40px;color:#F2C24B;font-weight:bold;font-size:1rem;text-decoration:none;font-family:"Trebuchet MS",Helvetica,Arial,sans-serif;transition:background .2s,color .2s}
#support .note a[href*="printable"]::before{content:"\2913";font-size:1.1em}
#support .note a[href*="printable"]:hover{background:#F2C24B;color:#2B1450}