/* =========================================================
   Cosmos Divine Care - Main Stylesheet
   Colors: Orange #F7941E / #F26522, Navy #131142, Grey #f5f5f5
   ========================================================= */
:root{
  --orange:#F7941E;
  --orange2:#F26522;
  --navy:#131142;
  --navy2:#1B1464;
  --dark:#222;
  --grey:#f4f4f6;
  --text:#666;
  --coral:#F0705A;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Poppins',sans-serif;color:var(--text);font-size:15px;line-height:1.7;background:#fff}
img{max-width:100%}
a{text-decoration:none;color:inherit;transition:.25s}
ul{list-style:none}
h1,h2,h3,h4,h5{color:#333;line-height:1.3}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
.orange{color:var(--orange)!important}
.bold{font-weight:600}
.btn{display:inline-block;background:var(--orange);color:#fff;padding:12px 30px;border-radius:30px;font-weight:600;font-size:14px;border:none;cursor:pointer;transition:.3s}
.btn:hover{background:var(--orange2);transform:translateY(-2px)}
.btn-submit{background:#2779a7;border-radius:4px;padding:10px 28px}
.btn-submit:hover{background:#1f6289}

/* ---------- Top bar ---------- */
.topbar{background:#efefef;font-size:13px;padding:8px 0}
.topbar-inner{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.topbar a{color:#555}
.topbar a.orange{font-weight:500}
.topbar .sep{color:var(--orange);font-weight:700;margin:0 10px}
.topbar a:hover{color:var(--orange)}

/* ---------- Header ---------- */
.site-header{background:#e9e9ea;position:sticky;top:0;z-index:100;box-shadow:0 1px 6px rgba(0,0,0,.08)}
.header-inner{display:flex;align-items:center;gap:30px;min-height:80px}
.logo{display:flex;align-items:center;gap:10px}
.logo img{height:58px}
.logo-icon{font-size:38px;color:#e02b2b}
.logo-text{line-height:1}
.logo-text .script{font-family:'Yellowtail',cursive;font-size:32px;color:var(--orange2);display:block}
.logo-text small{display:block;color:#2f9e44;font-weight:700;letter-spacing:2px;font-size:12px}
.main-nav{display:flex;align-items:center;gap:26px;margin-left:auto}
.main-nav a{color:#222;font-size:15px;font-weight:400;padding:8px 0}
.main-nav a:hover,.main-nav a.active{color:var(--orange)}
.dropdown{position:relative}
.dropdown i{font-size:11px}
.dropdown-menu{position:absolute;top:100%;left:0;background:#fff;min-width:230px;box-shadow:0 8px 20px rgba(0,0,0,.12);border-radius:6px;padding:8px 0;display:none;z-index:50}
.dropdown:hover .dropdown-menu{display:block}
.dropdown-menu a{display:block;padding:9px 18px;font-size:14px}
.dropdown-menu a:hover{background:#faf3ea;color:var(--orange)}
.header-call{background:#fff;text-align:center;padding:14px 26px;border-bottom:4px solid var(--coral);line-height:1.35}
.header-call i{color:var(--orange);font-size:22px;display:block;margin-bottom:4px}
.header-call span{font-size:13px;color:#666;display:block}
.header-call a{font-size:24px;font-weight:700;color:var(--navy)}
.nav-toggle{display:none;background:none;border:none;font-size:24px;color:var(--navy);margin-left:auto;cursor:pointer}

/* ---------- Page banner ---------- */
.page-banner{background:var(--navy);height:220px;position:relative}
.breadcrumb-box{position:absolute;bottom:0;right:20px;background:#fff;padding:16px 30px;border-radius:8px 8px 0 0;font-size:14px}
.breadcrumb-box a{color:var(--navy);font-weight:600}
.breadcrumb-box span{color:var(--orange)}

/* ---------- Hero slider ---------- */
.hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#fdf3e3,#fbe3d0 40%,#f9d9c8)}
.slide{display:none;position:relative;min-height:min(calc(100vh - 170px),760px)}
.slide.active{display:block;animation:fade .8s}
@keyframes fade{from{opacity:.3}to{opacity:1}}
.slide-bg{position:absolute;inset:0;background-size:cover;background-position:center}
.slide-content{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:120px 20px 140px}
.slide-content .small{font-size:13px;letter-spacing:1px;font-weight:600;color:#333;text-transform:uppercase}
.slide-content h1{font-size:clamp(40px,5vw,68px);line-height:1.08;font-weight:800;color:#111;margin:14px 0 18px;max-width:620px}
.slide-content p{color:#444;max-width:480px;margin-bottom:26px}
.slide-person{position:absolute;right:5%;bottom:0;z-index:1;height:96%;display:flex;align-items:flex-end}
.slide-person img{height:100%;width:auto;object-fit:contain;position:relative;z-index:2}
.slide-person.rings{bottom:auto;top:50%;transform:translateY(-50%);height:78%}
.slide-person.rings img{border-radius:38% 62% 55% 45%/45% 42% 58% 55%}
.slide-person.rings::before,.slide-person.rings::after{content:'';position:absolute;background-size:contain;background-repeat:no-repeat;z-index:1;pointer-events:none}
.slide-person.rings::before{inset:-7% -9% -5% -8%;background-image:url('../images/img4-slider-11.png')}
.slide-person.rings::after{inset:-4% -5% -8% -10%;background-image:url('../images/img3-slider-11.png')}
@media(max-width:860px){.slide-person{display:none}}
.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;background:rgba(255,255,255,.6);border:none;width:38px;height:38px;cursor:pointer;color:#333;font-size:16px}
.hero-prev{left:0}.hero-next{right:0}
.hero-dots{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);z-index:5;display:flex;gap:8px}
.hero-dots span{width:10px;height:10px;border-radius:50%;background:#fff;opacity:.55;cursor:pointer}
.hero-dots span.active{opacity:1;background:var(--orange)}

/* ---------- Sections ---------- */
.section{padding:70px 0}
.section-grey{background:var(--grey)}
.sec-label{color:var(--orange);font-weight:600;font-size:14px}
.sec-title{font-size:34px;font-weight:700;color:#333}
.sec-title.orange-title{color:var(--orange)}

/* What we do */
.whatwedo-top{display:grid;grid-template-columns:1fr 1.4fr;gap:40px;align-items:start;margin-bottom:50px}
.whatwedo-top h2{font-size:36px;font-weight:700;color:#444;text-align:right}
.whatwedo-top .welcome b{color:var(--orange)}
.vmm{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;text-align:center}
.vmm .icon{width:70px;height:70px;margin:0 auto 14px;border:2px solid #ddd;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:26px;color:#555}
.vmm h4{color:var(--orange);margin-bottom:10px;font-size:18px}

/* Life changer */
.lifechanger{display:grid;grid-template-columns:1fr 1.1fr;gap:50px;align-items:center}
.lc-images{position:relative;padding-bottom:60px}
.lc-images .img1{border:8px solid #fff;box-shadow:0 10px 30px rgba(0,0,0,.15);border-radius:4px}
.lc-images .img2{position:absolute;right:0;bottom:0;width:55%;border:8px solid #fff;box-shadow:0 10px 30px rgba(0,0,0,.15);border-radius:4px}
.lifechanger .sec-title{color:var(--orange);font-size:34px;margin:6px 0 20px}
.lc-call{display:flex;align-items:center;gap:12px;margin-top:22px}
.lc-call i{color:var(--orange);font-size:26px}
.lc-call small{display:block;color:#777}
.lc-call a{font-size:24px;font-weight:700;color:var(--navy)}

/* Commitment banner */
.commit{display:grid;grid-template-columns:1fr 1fr;min-height:420px}
.commit-left{background:#6d6d6d;color:#fff;display:flex;flex-direction:column;justify-content:center;padding:60px 8vw}
.commit-left h2{color:#fff;font-size:36px;font-weight:700;margin-bottom:28px}
.commit-right{position:relative;background-size:cover;background-position:center}
.commit-right::before{content:'';position:absolute;inset:0;background:rgba(240,90,70,.72)}
.play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:96px;height:96px;border-radius:50%;background:#fff;color:var(--navy);font-size:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 0 0 14px rgba(255,255,255,.25),0 0 0 26px rgba(255,255,255,.12)}
.play-btn:hover{color:var(--orange)}

/* Services accordion + about */
.services-about{display:grid;grid-template-columns:1fr 1.1fr;gap:50px;align-items:start}
.accordion .acc-item{background:#fff;border-radius:8px;margin-bottom:12px;box-shadow:0 3px 12px rgba(0,0,0,.06);overflow:hidden}
.acc-head{display:flex;align-items:center;gap:14px;padding:15px 18px;cursor:pointer;font-weight:600;color:#333;font-size:14px}
.acc-head .toggle{width:28px;height:28px;min-width:28px;border-radius:50%;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px}
.acc-item.open .acc-head{color:var(--orange)}
.acc-body{display:none;padding:0 20px 18px 60px;font-size:14px}
.acc-item.open .acc-body{display:block}
.about-side .sec-title{color:var(--orange);font-size:32px;margin:6px 0 18px}
.about-side img{border-radius:6px;margin-top:22px}

/* NDIS section */
.ndis{background:#f5f5f5;color:#555;position:relative;overflow:hidden}
.ndis-bg{position:absolute;top:0;right:0;bottom:0;width:46%;background-size:cover;background-position:left center;z-index:1}
@media(max-width:900px){.ndis-bg{display:none}}
.ndis .container{position:relative;z-index:2}
.ndis-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:center}
.ndis h2{color:var(--orange);font-size:36px;font-weight:700;margin-bottom:20px}
.ndis h3{color:var(--orange);font-size:22px;margin:18px 0 8px;font-weight:700}
.ndis .hl{color:var(--orange);font-weight:600}
.ndis-logo{background:#5b2d8e;color:#fff;font-size:40px;font-weight:700;display:inline-block;padding:20px 30px;border-radius:6px;font-family:'Poppins'}
.ndis-cta{background:linear-gradient(90deg,var(--coral),var(--orange));border-radius:40px;padding:16px 30px;display:flex;justify-content:space-between;align-items:center;color:#fff;font-weight:600;margin-top:40px;flex-wrap:wrap;gap:10px}
.ndis-cta a{color:#fff;font-size:13px;letter-spacing:1px}
.ndis-cta a:hover{text-decoration:underline}

/* Pricing strip */
.pricing-strip{background:linear-gradient(90deg,var(--coral),var(--orange));color:#fff;padding:55px 0}
.pricing-strip .container{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}
.pricing-strip h2{color:#fff;font-size:34px;font-weight:700;max-width:600px}
.pricing-strip a{font-size:13px;font-weight:700;letter-spacing:1px;border-bottom:2px solid #fff;padding-bottom:3px}

/* ---------- Inner pages ---------- */
.page-content{padding:60px 0}
.page-content h1.page-title{color:var(--orange);font-size:34px;margin-bottom:30px}
.content-html{max-width:1000px;margin:0 auto}
.content-html p{margin-bottom:16px}
.content-html h3{color:var(--orange);margin:26px 0 12px;font-size:22px;text-align:center}
.content-html h4{margin:20px 0 8px;color:#444}
.content-html ul{list-style:disc;padding-left:24px;margin-bottom:16px}
.content-html a{color:var(--orange);text-decoration:underline}
.content-html .center{text-align:center}
.pricing-logo{text-align:center;margin-bottom:30px}
.pricing-logo .script{font-family:'Yellowtail',cursive;font-size:52px;color:var(--orange2)}
.pricing-logo small{display:block;color:var(--orange2);letter-spacing:4px;font-weight:700;font-size:18px}
.pricing-logo i{font-size:56px;color:#e02b2b}

/* Services page brochures */
.service-brochures{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.service-brochures img:first-child{grid-column:1/-1;width:70%;margin:0 auto}
.service-brochures img{border-radius:6px;box-shadow:0 4px 14px rgba(0,0,0,.1)}
.svc-benefits{text-align:center;max-width:850px;margin:0 auto}
.svc-benefits h4{color:var(--orange);margin:26px 0 6px;font-size:19px}
.svc-divider{border:none;border-top:1px solid #e5e5e5;margin:45px auto;max-width:900px}

/* ---------- Forms ---------- */
.dyn-form{max-width:1050px}
.form-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px 26px}
.ff{grid-column:span 6;display:flex;flex-direction:column}
.ff.w-half{grid-column:span 3}
.ff.w-third{grid-column:span 2}
.ff label{font-weight:500;color:#333;font-size:14.5px;margin-bottom:7px}
.ff .req{color:#e02b2b}
.ff input:not([type=checkbox]):not([type=radio]),.ff select,.ff textarea{border:1px solid #c9c9c9;border-radius:3px;padding:10px 12px;font-family:inherit;font-size:14px;width:100%;background:#fff}
.ff input:focus,.ff select:focus,.ff textarea:focus{outline:none;border-color:var(--orange)}
.choices{display:flex;flex-direction:column;gap:7px;font-size:14px}
.choices-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px 20px}
.choice{display:flex;align-items:center;gap:8px;font-weight:400!important;color:#444}
.choice input{accent-color:var(--orange)}
.ff-heading h3{color:#333;font-size:17px;font-weight:600;border-bottom:1px solid #eee;padding-bottom:8px;margin-top:12px}
.ff-sub{font-size:13px;color:#888}
.file-drop{border:2px dashed #c9c9c9;border-radius:4px;padding:26px;text-align:center;color:#888;font-size:13px;position:relative}
.file-drop i{display:block;font-size:22px;margin-bottom:6px;color:#aaa}
.file-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.form-success{background:#e7f7ec;border:1px solid #7ecf98;color:#1d7a3c;padding:14px 18px;border-radius:6px;margin-bottom:24px;font-weight:500}
.form-success i{margin-right:8px}
.hp{position:absolute;left:-9999px;opacity:0;height:0}
.dyn-form .btn-submit{margin-top:26px}

/* ---------- Footer ---------- */
.site-footer{background:var(--navy);color:#c9cadd;font-size:14px}
.footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;padding:65px 20px 45px}
.fcol h4{color:#fff;font-size:19px;margin-bottom:10px}
.fline{width:100%;height:1px;background:rgba(255,255,255,.15);margin-bottom:18px}
.fcol .ack{font-size:13.5px}
.socials{display:flex;gap:10px;margin-top:20px}
.socials a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px}
.socials a:hover{background:var(--orange)}
.flags{display:flex;gap:12px;margin-top:22px}
.flag{width:64px;height:40px;display:block;position:relative;border-radius:2px;overflow:hidden}
.flag-aboriginal{background:linear-gradient(#000 50%,#cc0000 50%)}
.flag-aboriginal span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:18px;height:18px;background:#ffce00;border-radius:50%}
.flag-tsi{background:#0a5233}
.flag-tsi::before,.flag-tsi::after{content:'';position:absolute;left:0;right:0;height:7px;background:#000;border-top:2px solid #fff;border-bottom:2px solid #fff}
.flag-tsi::before{top:4px}.flag-tsi::after{bottom:4px}
.flag-tsi span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:16px;height:16px;border:2px solid #fff;border-radius:0 0 50% 50%}
.contact-list li{margin-bottom:10px;display:flex;gap:10px}
.contact-list i{color:var(--orange);margin-top:5px}
.contact-list a:hover{color:var(--orange)}
.flinks li{margin-bottom:9px}
.flinks a{color:var(--orange);font-weight:500;font-size:13.5px}
.flinks a:hover{text-decoration:underline}
.copyright{background:#191919;text-align:center;padding:20px 0;font-size:13.5px;color:#999}

/* ---------- Responsive ---------- */
@media(max-width:992px){
  .whatwedo-top,.lifechanger,.services-about,.ndis-grid,.commit{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .vmm{grid-template-columns:1fr}
  .whatwedo-top h2{text-align:left}
  .slide-content h1{font-size:38px}
  .header-call{display:none}
  .choices-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .nav-toggle{display:block}
  .main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;align-items:flex-start;padding:14px 20px;gap:4px;box-shadow:0 10px 20px rgba(0,0,0,.1)}
  .main-nav.open{display:flex}
  .main-nav a{padding:10px 0;width:100%}
  .dropdown-menu{position:static;display:block;box-shadow:none;padding-left:14px}
  .footer-grid{grid-template-columns:1fr}
  .ff.w-half,.ff.w-third{grid-column:span 6}
  .choices-grid{grid-template-columns:1fr}
  .sec-title,.pricing-strip h2,.ndis h2,.commit-left h2{font-size:26px}
  .slide-content h1{font-size:30px}
}

/* ---- dynamic form v2 ---- */
.ff-html{font-size:14px;color:#555;line-height:1.7}
.ff-html p{margin-bottom:10px}
.ff-html h1,.ff-html h2,.ff-html h3,.ff-html h4{color:#222;margin:10px 0 8px}
.ff-html a{color:var(--orange)}
.ff-html ol,.ff-html ul{margin:6px 0 10px 22px}
.rating-row{display:flex;gap:18px;margin-top:6px}
.rating-choice{cursor:pointer;position:relative}
.rating-choice input{position:absolute;opacity:0}
.rating-choice img{width:52px;height:52px;border-radius:50%;transition:.15s;filter:grayscale(15%)}
.rating-choice input:checked + img{outline:3px solid var(--orange);outline-offset:2px;transform:scale(1.08);filter:none}
.rating-choice:hover img{transform:scale(1.08)}
.choices-inline{display:flex;flex-wrap:wrap;gap:6px 22px}
.choices-cols-2{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 18px}
.choices-cols-3{display:grid;grid-template-columns:repeat(3,1fr);gap:6px 18px}
.form-steps-head{margin-bottom:18px}
.steps-label{font-size:13px;font-weight:600;color:#444;margin-bottom:6px}
.steps-bar{height:10px;background:#e6e6e6;border-radius:6px;overflow:hidden}
.steps-bar span{display:block;height:100%;background:#5cb85c;border-radius:6px;transition:width .3s}
.form-step{display:none}
.form-step.active{display:block}
.step-nav{margin-top:20px;display:flex;gap:10px}
.btn-step,.btn-submit{background:#04578c;border-radius:4px;padding:10px 22px;color:#fff;font-weight:600}
.btn-step:hover,.btn-submit:hover{background:#033f66}
@media(max-width:640px){.rating-row{gap:10px}.rating-choice img{width:42px;height:42px}.choices-cols-3{grid-template-columns:1fr 1fr}}

/* ---- signature pad ---- */
.sig-pad canvas{width:100%;max-width:600px;height:160px;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:crosshair;display:block;touch-action:none}
.sig-tools{display:flex;align-items:center;gap:12px;margin-top:6px}
.sig-clear{background:#eee;border:1px solid #ccc;border-radius:4px;padding:4px 14px;font-size:13px;cursor:pointer}
.sig-clear:hover{background:#e2e2e2}
.sig-hint{font-size:12px;color:#999}


/* ---- slider entry animations ---- */
@keyframes heroFadeUp{from{opacity:0;transform:translateY(38px)}to{opacity:1;transform:none}}
@keyframes heroFadeDown{from{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:none}}
@keyframes heroFadeRight{from{opacity:0;transform:translateX(70px)}to{opacity:1;transform:none}}
@keyframes heroFadeRightC{from{opacity:0;transform:translateY(-50%) translateX(70px)}to{opacity:1;transform:translateY(-50%)}}
.slide.active .slide-content .small{animation:heroFadeDown .7s .1s both}
.slide.active .slide-content h1{animation:heroFadeUp .8s .25s both}
.slide.active .slide-content p{animation:heroFadeUp .8s .45s both}
.slide.active .slide-content .btn{animation:heroFadeUp .8s .65s both}
.slide.active .slide-person{animation:heroFadeRight 1s .3s both}
.slide.active .slide-person.rings{animation:heroFadeRightC 1s .3s both}
