*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#241b2a;background:#fffafc;line-height:1.65}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}button{font:inherit}.container{width:min(1160px,92%);margin:auto}.skip-link{position:absolute;left:-9999px;top:auto}.skip-link:focus{left:10px;top:10px;background:#fff;padding:10px;z-index:9999}.topbar{background:#2a0d34;color:#fff;font-size:.82rem}.topbar-inner{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar a{color:#ffd1e5;font-weight:800}.site-header{position:sticky;top:0;z-index:900;background:rgba(255,250,252,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(91,35,130,.10)}.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:48px;height:48px;border-radius:14px;object-fit:cover}.brand span{display:flex;align-items:baseline;gap:7px;color:#3e1558;letter-spacing:.04em}.brand b{font-size:1rem}.brand small{font-size:.68rem;color:#2c8f50;font-weight:900}.nav-links{display:flex;align-items:center;gap:22px}.nav-links a{font-size:.9rem;font-weight:780;color:#44334a}.nav-links a:hover{color:#8c258e}.nav-cta{background:#5b2382;color:#fff!important;padding:11px 16px;border-radius:999px;box-shadow:0 10px 28px rgba(91,35,130,.18)}.menu-button{display:none;background:transparent;border:0;color:#5b2382;font-size:1.7rem}.hero{position:relative;overflow:hidden;padding:88px 0 80px;background:radial-gradient(circle at 15% 10%,rgba(232,62,140,.12),transparent 30%),radial-gradient(circle at 85% 20%,rgba(45,143,80,.13),transparent 30%),linear-gradient(180deg,#fffafc,#fbf7ff)}.hero:after{content:"";position:absolute;width:340px;height:340px;border-radius:50%;background:rgba(91,35,130,.07);right:-160px;bottom:-150px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:72px}.kicker,.eyebrow{display:inline-block;font-size:.77rem;letter-spacing:.14em;font-weight:900;color:#2c8f50;text-transform:uppercase;margin-bottom:14px}.hero h1,.section h2{font-family:Georgia,"Times New Roman",serif;line-height:1.02;letter-spacing:-.035em;color:#341344}.hero h1{font-size:clamp(3.4rem,7vw,6.5rem);max-width:720px}.hero h1 span{color:#dd2b84;font-style:italic}.hero-lede{font-size:1.13rem;max-width:650px;margin-top:24px;color:#65556c}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.btn{min-height:50px;padding:0 20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:850;transition:.2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:#5b2382;color:#fff;box-shadow:0 14px 30px rgba(91,35,130,.22)}.btn-pink{background:#cf337f;color:#fff}.btn-ghost{border:1px solid rgba(91,35,130,.18);background:#fff;color:#4c1d68}.hero-trust{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin-top:29px;max-width:620px}.hero-trust span{font-size:.82rem;font-weight:800;color:#4f4154;position:relative;padding-left:18px}.hero-trust span:before{content:"✓";position:absolute;left:0;color:#2c8f50}.hero-visual{position:relative}.hero-frame{position:relative;border-radius:45% 45% 18px 18px;overflow:hidden;aspect-ratio:.92;box-shadow:0 30px 70px rgba(60,21,81,.20);border:8px solid #fff}.hero-frame img{width:100%;height:100%;object-fit:cover}.hero-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 70%,rgba(48,12,60,.16))}.floating-card{position:absolute;right:-20px;bottom:34px;background:#fff;padding:16px 19px;border-radius:16px;box-shadow:0 16px 50px rgba(50,20,65,.18);display:grid}.floating-card strong{color:#5b2382}.floating-card span{font-size:.75rem;color:#706276}.brand-strip{background:#32103e;color:#fff;padding:20px 0}.strip-grid{display:flex;align-items:center;justify-content:center;gap:17px;flex-wrap:wrap;text-transform:uppercase;letter-spacing:.08em;font-weight:850;font-size:.76rem}.strip-grid i{width:5px;height:5px;background:#f04c99;border-radius:50%}.section{padding:90px 0}.section-head{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:end;margin-bottom:44px}.section h2{font-size:clamp(2.4rem,4.7vw,4.2rem)}.section h2 em{color:#d63384;font-weight:500}.section-head>p{color:#6c5b72}.services-section{background:#fff}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{padding:28px;border:1px solid #f0e3ef;border-radius:20px;background:linear-gradient(180deg,#fff,#fffafd);min-height:260px;transition:.25s ease}.service-card:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(70,25,85,.08);border-color:#dec9e4}.service-number{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#f7eaf4;color:#7e2d88;font-weight:900;font-size:.78rem;margin-bottom:28px}.service-card h3{font-family:Georgia,serif;color:#3a164b;font-size:1.32rem}.service-card p{color:#6e6073;font-size:.91rem;margin-top:10px}.price{display:block;margin-top:18px;font-weight:850;color:#2c8f50;font-size:.84rem}.pricing-note{margin-top:20px;padding:17px 20px;background:#f5faf6;border-left:4px solid #2c8f50;border-radius:10px;color:#526256;font-size:.9rem}.about-section{background:#f8f1f9}.about-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:72px;align-items:center}.about-visual{position:relative;max-width:500px}.about-visual>img{width:100%;aspect-ratio:.82;object-fit:cover;border-radius:28px;box-shadow:0 30px 70px rgba(62,20,78,.15)}.about-badge{position:absolute;right:-28px;bottom:28px;background:var(--pz-green);color:#fff;width:150px;height:150px;border-radius:50%;display:grid;place-content:center;text-align:center;border:8px solid #f8f1f9}.about-badge b{font-family:Georgia,serif;font-size:2.4rem;line-height:1}.about-badge span{font-size:.72rem;max-width:100px}.about-copy>p{margin-top:19px;color:#66566b}.credential-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}.credential-grid div{background:#fff;padding:17px;border-radius:14px;border:1px solid #eaddea;display:grid}.credential-grid b{font-size:.86rem;color:#4d1b67}.credential-grid span{font-size:.72rem;color:#7a6c7e;margin-top:4px}.signature{font-family:Georgia,serif;font-style:italic;color:#a22572!important}.products-section{background:#fff}.product-intro-grid{display:grid;grid-template-columns:1fr .78fr;gap:56px;align-items:center;margin-bottom:42px}.product-intro-grid h2{margin-bottom:20px}.product-intro-grid p{color:#6e5f72}.product-intro-grid>img{width:100%;max-height:430px;object-fit:cover;border-radius:24px;box-shadow:0 22px 55px rgba(53,21,70,.12)}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.product-card{background:#fffafb;border:1px solid #f0e1eb;border-radius:18px;overflow:hidden}.product-card img{width:100%;aspect-ratio:1/1.05;object-fit:cover}.product-card>div{padding:18px}.product-card h3{font-family:Georgia,serif;color:#431657;font-size:1.18rem}.product-card p{font-size:.82rem;color:#2c8f50;font-weight:800;margin-top:7px}.product-card small{display:block;font-size:.76rem;line-height:1.5;color:#746477;margin-top:8px}.fineprint{font-size:.73rem;color:#78697c;margin-top:18px}.education-section{background:#f4faf6}.education-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.education-grid article{background:#fff;padding:22px 18px;border-radius:16px;border:1px solid #deeee2}.education-grid b{display:block;color:#3b174e;font-family:Georgia,serif;font-size:1.08rem}.education-grid p{font-size:.79rem;color:#69766c;margin-top:8px}.academy-banner{margin-top:35px;padding:36px;border-radius:22px;background:linear-gradient(125deg,#3d124d,#6e2788 65%,#98285d);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:40px}.academy-banner h3{font-family:Georgia,serif;font-size:2rem}.academy-banner p{color:#f2e8f4;max-width:800px;margin-top:8px;font-size:.88rem}.academy-disclaimer{opacity:1;font-size:.75rem!important}.eyebrow.light{color:#b8edc9}.btn-light{background:#fff;color:#521c67;white-space:nowrap}.gallery-section{background:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;gap:11px}.gallery-item{border:0;padding:0;background:none;overflow:hidden;border-radius:15px;cursor:zoom-in}.gallery-item.featured{grid-column:span 2;grid-row:span 2}.gallery-item.tall{grid-row:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.35s ease}.gallery-item:hover img{transform:scale(1.035)}.policy-section{background:#fbf5fb}.policy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.policy-grid article{background:#fff;padding:24px;border-radius:16px;border:1px solid #eee0ed}.policy-grid h3{font-family:Georgia,serif;color:#4a1c5f;font-size:1.12rem}.policy-grid p{font-size:.84rem;color:#706174;margin-top:7px}.faq-section{background:#fff}.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.faq-grid>div:first-child p{color:#6d5e71;margin-top:18px}.accordion{display:grid;gap:10px}.accordion details{border:1px solid #ede0ed;border-radius:14px;padding:0 18px;background:#fffafb}.accordion summary{cursor:pointer;padding:17px 0;font-weight:820;color:#3d174f}.accordion details p{padding:0 0 17px;color:#6c5d70;font-size:.88rem}.contact-section{background:#fff;padding-top:40px}.contact-card{background:linear-gradient(125deg,#40124f,#6c2482 60%,#b32774);border-radius:28px;padding:48px;color:#fff;display:grid;grid-template-columns:1.05fr .95fr;gap:55px}.contact-card h2{color:#fff}.contact-card p{color:#f5eaf7;margin-top:15px;max-width:650px}.contact-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.btn-outline-light{border:1px solid rgba(255,255,255,.5);color:#fff}.contact-details{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.contact-details>div{padding:19px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.13);border-radius:14px;display:grid}.contact-details small{font-size:.65rem;letter-spacing:.12em;color:#d9efdf;font-weight:900}.contact-details b,.contact-details a{font-size:.88rem;margin-top:7px;color:#fff}footer{background:#25102d;color:#d8ccd9;padding:52px 0 22px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer-brand img{width:180px;height:auto;max-height:none;object-fit:contain;object-position:left center;border-radius:12px}.footer-brand p{margin-top:15px;font-size:.83rem}.footer-grid h3{color:#fff;font-family:Georgia,serif;margin-bottom:12px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:7px}.footer-grid a,.footer-grid span{font-size:.82rem;color:#cdbfd0}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:36px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:.75rem}.lightbox{position:fixed;inset:0;z-index:2000;background:rgba(21,8,25,.92);display:none;place-items:center;padding:30px}.lightbox.open{display:grid}.lightbox img{max-width:min(1050px,92vw);max-height:88vh;border-radius:14px;box-shadow:0 30px 80px rgba(0,0,0,.45)}.lightbox button{position:fixed;right:25px;top:18px;background:transparent;border:0;color:#fff;font-size:2.4rem;cursor:pointer}@media(max-width:980px){.menu-button{display:block}.nav-links{display:none;position:absolute;top:112px;left:0;width:100%;background:#fffafb;padding:24px 4%;flex-direction:column;align-items:stretch;border-bottom:1px solid #eaddea}.nav-links.active{display:flex}.nav-links a{padding:7px}.hero-grid,.about-grid,.product-intro-grid,.faq-grid,.contact-card{grid-template-columns:1fr}.hero-visual{max-width:620px}.section-head{grid-template-columns:1fr;gap:20px}.service-grid{grid-template-columns:repeat(2,1fr)}.product-grid{grid-template-columns:repeat(2,1fr)}.education-grid{grid-template-columns:repeat(2,1fr)}.credential-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(3,1fr)}.policy-grid{grid-template-columns:repeat(2,1fr)}.about-visual{margin:auto}.academy-banner{align-items:flex-start;flex-direction:column}.contact-details{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.topbar-inner{justify-content:center}.topbar-inner span{display:none}.nav-wrap{height:70px}.nav-links{top:104px}.brand-mark{width:42px;height:42px}.hero{padding:58px 0}.hero-grid{gap:35px}.hero h1{font-size:clamp(3rem,16vw,4.5rem)}.hero-trust{grid-template-columns:1fr}.floating-card{position:relative;right:auto;bottom:auto;margin:-18px 14px 0}.section{padding:68px 0}.section h2{font-size:clamp(2.2rem,12vw,3.4rem)}.service-grid,.product-grid,.education-grid,.policy-grid{grid-template-columns:1fr}.product-card{display:grid;grid-template-columns:130px 1fr}.product-card img{height:100%;aspect-ratio:auto}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:180px}.gallery-item.featured{grid-column:span 2}.gallery-item.tall{grid-row:span 1}.about-badge{right:-5px;width:125px;height:125px}.contact-card{padding:32px 24px}.contact-details{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.strip-grid{gap:11px}.strip-grid span{font-size:.65rem}}

/* Contact inquiry form */
.inquiry-section{background:#fffafc}
.inquiry-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;align-items:start}
.inquiry-copy h2{margin:10px 0 18px}
.form-privacy{font-size:.9rem;color:#6f6173}
.contact-form{background:#fff;border:1px solid rgba(91,35,130,.14);border-radius:24px;padding:28px;box-shadow:0 18px 50px rgba(54,18,67,.08)}
.form-row{display:grid;gap:8px;margin-bottom:18px}
.form-two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-form label{font-weight:800;color:#35133f}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;box-sizing:border-box;border:1px solid #d9cedd;border-radius:12px;padding:13px 14px;font:inherit;background:#fff;color:#2f2033}
.contact-form textarea{resize:vertical}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:3px solid rgba(91,35,130,.16);border-color:#6b2a8e}
.form-status{min-height:1.4em;margin:0 0 12px;font-weight:700}
.form-note{display:block;margin-top:12px;color:#78697c}
.square-shop-button[aria-disabled="true"]{opacity:.62;cursor:not-allowed}
.square-shop-note{font-size:.9rem;color:#78697c;margin-top:10px}

@media (max-width:800px){
  .inquiry-grid{grid-template-columns:1fr;gap:26px}
}
@media (max-width:560px){
  .form-two{grid-template-columns:1fr}
  .contact-form{padding:20px}
}

.form-status.success{font-weight:700;}
.form-status.error{font-weight:700;}
.contact-form button[disabled]{opacity:.65;cursor:not-allowed;}


/* Client Photo & Media Release */
.release-section{background:var(--surface,#fff);}
.release-head{align-items:start;}
.release-layout{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:2rem;align-items:start;}
.release-info{padding:1.5rem;border-radius:1.25rem;background:rgba(108,44,145,.06);position:sticky;top:7rem;}
.release-info h3{margin-top:0;}
.release-info ul{padding-left:1.2rem;margin:1rem 0;}
.release-info li{margin:.55rem 0;}
.release-form{position:relative;}
.release-fieldset{border:1px solid rgba(38,21,46,.14);border-radius:1rem;padding:1rem 1.1rem;margin:0 0 1rem;}
.release-fieldset legend{font-weight:800;padding:0 .4rem;}
.compact-fieldset{margin:0;}
.release-choice{display:flex;gap:.7rem;align-items:flex-start;margin:.65rem 0;line-height:1.45;}
.release-choice input{margin-top:.25rem;flex:0 0 auto;}
.release-ack{padding:1rem;border-radius:1rem;background:rgba(108,44,145,.06);}
.guardian-fields{padding:1rem 1.1rem;margin:0 0 1rem;border-left:4px solid var(--purple,#6c2c91);background:rgba(108,44,145,.05);border-radius:.75rem;}
.guardian-fields h3{margin-top:0;}
.release-form .form-note{display:block;margin-top:.35rem;}
@media (max-width:900px){
  .release-layout{grid-template-columns:1fr;}
  .release-info{position:static;}
}


/* ==========================================
   FINAL PROFESSIONAL VISUAL POLISH — v4
   ========================================== */
:root{
  --pz-purple:#5b2382;
  --pz-purple-dark:#35133f;
  --pz-pink:#cf337f;
  --pz-green:#267b46;
  --pz-ink:#2f2033;
  --pz-muted:#706174;
  --pz-line:#e8dce9;
  --pz-soft:#fbf7fc;
  --pz-soft-purple:#f6eff8;
  --pz-success:#176b37;
  --pz-danger:#9c2943;
}

section[id]{scroll-margin-top:118px;}
.nav-links{gap:18px;}
.nav-links a{white-space:nowrap;}
.nav-links a:focus-visible,
.btn:focus-visible,
.gallery-item:focus-visible{
  outline:3px solid rgba(91,35,130,.22);
  outline-offset:3px;
}
.service-card,.product-card,.policy-grid article,.accordion details{
  box-shadow:0 6px 22px rgba(62,20,78,.035);
}
.btn{transition:transform .18s ease,box-shadow .18s ease,background .18s ease;}
.btn:hover{box-shadow:0 14px 30px rgba(91,35,130,.16);}
footer a:hover,.contact-details a:hover{
  text-decoration:underline;
  text-underline-offset:3px;
}

/* Shared form polish */
.contact-form{
  border-color:rgba(91,35,130,.12);
  box-shadow:0 20px 55px rgba(54,18,67,.07);
}
.contact-form input:not([type="radio"]):not([type="checkbox"]),
.contact-form select,
.contact-form textarea{
  width:100%;
  min-height:48px;
  box-sizing:border-box;
}
.contact-form textarea{min-height:140px;}
.form-status.success{
  min-height:auto;
  padding:12px 14px;
  border-radius:10px;
  background:#edf8f0;
  color:var(--pz-success);
  border:1px solid #cce9d4;
}
.form-status.error{
  min-height:auto;
  padding:12px 14px;
  border-radius:10px;
  background:#fff0f3;
  color:var(--pz-danger);
  border:1px solid #f1cbd4;
}

/* Photo Release */
.release-section{
  background:linear-gradient(180deg,#fff 0%,#fffafd 100%);
  border-top:1px solid rgba(91,35,130,.06);
}
.release-head{margin-bottom:34px;}
.release-head>p{max-width:520px;}
.release-layout{
  display:grid;
  grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);
  gap:34px;
  align-items:start;
}
.release-info{
  padding:28px;
  border:1px solid rgba(91,35,130,.10);
  border-radius:22px;
  background:linear-gradient(180deg,#f9f3fa,#fff);
  box-shadow:0 12px 35px rgba(54,18,67,.05);
  position:sticky;
  top:116px;
}
.release-info h3{
  font-family:Georgia,"Times New Roman",serif;
  color:var(--pz-purple-dark);
  font-size:1.4rem;
  margin-bottom:8px;
}
.release-info p,.release-info li{color:#625368;}
.release-info li::marker{color:var(--pz-purple);}
.release-info .form-privacy{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(91,35,130,.10);
  color:#796c7d;
  font-size:.82rem;
}

.release-form{
  position:relative;
  padding:32px;
  border-radius:24px;
  background:#fff;
}
.release-required{
  text-align:right;
  margin:-8px 0 18px;
  color:#78697c;
  font-size:.78rem;
}
.release-required span{color:var(--pz-pink);font-weight:900;}

.release-form-intro{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin:6px 0 18px;
  padding-top:8px;
}
.release-form-intro:not(:first-child){
  margin-top:28px;
  padding-top:24px;
  border-top:1px solid var(--pz-line);
}
.release-step-number{
  width:30px;
  height:30px;
  border-radius:50%;
  display:grid;
  place-items:center;
  flex:0 0 30px;
  background:var(--pz-purple);
  color:#fff;
  font-weight:900;
  font-size:.78rem;
}
.release-form-intro h3{
  margin:0;
  color:var(--pz-purple-dark);
  font-size:1.08rem;
  line-height:1.25;
}
.release-form-intro p{
  margin:3px 0 0;
  color:#7a6c7e;
  font-size:.8rem;
}

/* Critical visual fix: stop generic form CSS from making radios/checkboxes 100% wide */
.release-form input[type="radio"],
.release-form input[type="checkbox"]{
  appearance:auto;
  -webkit-appearance:auto;
  width:18px !important;
  min-width:18px !important;
  max-width:18px !important;
  height:18px !important;
  min-height:18px !important;
  padding:0 !important;
  margin:2px 0 0 !important;
  border:0;
  flex:0 0 18px;
  accent-color:var(--pz-purple);
  box-shadow:none !important;
}

.release-fieldset{
  min-width:0;
  border:1px solid var(--pz-line);
  border-radius:16px;
  padding:16px;
  margin:0 0 16px;
  background:#fff;
}
.release-fieldset legend{
  color:var(--pz-purple-dark);
  font-size:.9rem;
  line-height:1.2;
  padding:0 8px;
  font-weight:800;
}
.permission-fieldset{background:#fcf9fd;}

.contact-form label.release-choice{
  display:grid;
  grid-template-columns:18px minmax(0,1fr);
  gap:11px;
  align-items:start;
  width:100%;
  margin:8px 0;
  padding:12px 13px;
  border:1px solid transparent;
  border-radius:12px;
  color:var(--pz-ink);
  font-weight:550;
  line-height:1.45;
  cursor:pointer;
}
.contact-form label.release-choice:hover{
  background:var(--pz-soft-purple);
  border-color:#e1cfe6;
}
.contact-form label.release-choice:has(input:checked){
  background:#f5edf8;
  border-color:#b98ec9;
}
.release-choice span{
  min-width:0;
  overflow-wrap:break-word;
}
.release-choice strong{color:var(--pz-purple-dark);}

#releaseUsesFieldset{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:10px;
}
#releaseUsesFieldset legend{grid-column:1/-1;}
#releaseUsesFieldset .release-choice{margin:4px 0;}

.release-form .form-two:has(.compact-fieldset){margin-bottom:16px;}
.compact-fieldset{min-width:0;height:100%;}
.compact-fieldset .release-choice{padding:9px 11px!important;}

.guardian-fields{
  padding:20px;
  margin:4px 0 18px;
  border:1px solid #d8c1df;
  border-left:4px solid var(--pz-purple);
  background:#faf5fb;
  border-radius:14px;
}
.guardian-fields h3{
  color:var(--pz-purple-dark);
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.2rem;
  margin-bottom:14px;
}

.release-ack{
  margin-top:6px!important;
  padding:16px!important;
  background:#f8f2fa!important;
  border-color:#dfcbe5!important;
}
#photoReleaseSubmit{
  min-width:220px;
  margin-top:4px;
}
.release-form>.form-note:last-child{
  max-width:520px;
  line-height:1.5;
}

@media(max-width:1080px){
  .menu-button{display:block}
  .nav-links{
    display:none;
    position:absolute;
    top:112px;
    left:0;
    width:100%;
    background:#fffafb;
    padding:24px 4%;
    flex-direction:column;
    align-items:stretch;
    border-bottom:1px solid #eaddea
  }
  .nav-links.active{display:flex}
  .nav-links a{padding:7px}
}
@media(max-width:900px){
  .release-layout{grid-template-columns:1fr;gap:22px;}
  .release-info{position:static;}
}
@media(max-width:650px){
  .release-form{padding:20px;}
  #releaseUsesFieldset{grid-template-columns:1fr;}
  .release-head{margin-bottom:26px;}
  .release-info{padding:22px;}
  #photoReleaseSubmit{width:100%;}
}

#releaseUsesFieldset.is-disabled,
.release-form .compact-fieldset:has(input:disabled){
  opacity:.55;
}
.release-form input:disabled{cursor:not-allowed;}


/* Privacy section */
.privacy-section{background:#fbf7fc;}
.privacy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.privacy-grid article{
  background:#fff;
  border:1px solid #eadfea;
  border-radius:18px;
  padding:24px;
  box-shadow:0 8px 28px rgba(54,18,67,.045);
}
.privacy-grid h3{
  font-family:Georgia,"Times New Roman",serif;
  color:#4a1c5f;
  font-size:1.15rem;
}
.privacy-grid p{margin-top:8px;color:#706174;font-size:.88rem;}
@media(max-width:700px){.privacy-grid{grid-template-columns:1fr;}}


/* v6 accessibility contrast refinement
   Darker green for normal-size text on light backgrounds (WCAG AA). */
.brand small,
.kicker,
.eyebrow,
.price,
.product-card p{
  color:var(--pz-green);
}


/* Security hardening: visually hidden anti-spam honeypot fields */
.form-honeypot{
  position:absolute !important;
  left:-10000px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}


/* v10 form protection / accessibility finalization */
.turnstile-wrap{
  margin:4px 0 16px;
  max-width:100%;
}
.turnstile-slot{
  width:100%;
  min-height:65px;
}
.turnstile-wrap[hidden]{display:none!important;}
.form-status:empty{display:block;}
.fineprint,
.release-required{
  color:#78697c;
}


/* v11 final accessibility / interaction corrections */
.visually-hidden{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
body.modal-open{overflow:hidden;}
a:focus-visible,
button:focus-visible,
summary:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
  outline:3px solid #5b2382;
  outline-offset:3px;
}
.lightbox button:focus-visible{
  outline-color:#fff;
  border-radius:8px;
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
  }
}


/* v13 production hardening and future-proofing */
.brand small,
.kicker,
.eyebrow,
.price,
.product-card p{
  color:var(--pz-green);
}
.about-badge{background:var(--pz-green);}
.academy-disclaimer{opacity:1;}

@media(max-width:1080px){
  .nav-links{
    top:100%;
    box-shadow:0 16px 32px rgba(42,13,52,.12);
  }
}

.js-required-warning{
  margin:0 0 16px;
  padding:13px 14px;
  border:1px solid #e2cbdc;
  border-left:4px solid var(--pz-pink);
  border-radius:10px;
  background:#fff7fb;
  color:#5b465e;
  font-size:.86rem;
}
.js-required-warning a{
  color:#4c1d68;
  font-weight:800;
  text-decoration:underline;
  text-underline-offset:2px;
}
html.js .js-required-warning{display:none!important;}
html.no-js .js-submit-only{display:none!important;}
.release-version-note{font-size:.72rem;}



/* =========================================================
   v14 FINAL RESPONSIVE / ACCESSIBILITY / FAILURE-MODE HARDENING
   ========================================================= */

/* WCAG reflow: prevent intrinsic grid minimums from widening the page. */
@media(max-width:980px){
  .hero-grid,
  .about-grid,
  .product-intro-grid,
  .faq-grid,
  .contact-card,
  .section-head{
    grid-template-columns:minmax(0,1fr);
  }
  .hero-grid>*,
  .about-grid>*,
  .product-intro-grid>*,
  .faq-grid>*,
  .contact-card>*,
  .section-head>*{
    min-width:0;
  }
  .about-visual{
    width:100%;
    max-width:500px;
  }
}
@media(max-width:650px){
  .about-grid,
  .product-intro-grid{
    grid-template-columns:minmax(0,1fr);
  }
  .about-grid>*,
  .product-intro-grid>*{
    min-width:0;
    max-width:100%;
  }
  .product-intro-grid>img{min-width:0;}
  .product-card{
    grid-template-columns:minmax(0,130px) minmax(0,1fr);
  }
  .product-card>div{min-width:0;}
  .product-card h3,
  .product-card p,
  .product-card small{overflow-wrap:anywhere;}
  .hero-actions .btn,
  .contact-actions .btn{
    max-width:100%;
    white-space:normal;
    text-align:center;
  }
}
@media(max-width:360px){
  .product-card{
    grid-template-columns:minmax(0,110px) minmax(0,1fr);
  }
  .product-card>div{padding:15px;}
}

/* Mobile menu stays usable in short landscape viewports. */
@media(max-width:1080px){
  html.js .nav-links{
    max-height:calc(100dvh - 112px);
    overflow-y:auto;
    overscroll-behavior:contain;
  }
}
@media(max-width:650px){
  html.js .nav-links{
    max-height:calc(100dvh - 104px);
  }
}

/* No-JS: never leave a dead hamburger or inaccessible navigation. */
html.no-js .menu-button{display:none!important;}
.no-js-nav{
  display:none;
  border-bottom:1px solid #eaddea;
  background:#fffafb;
}
@media(max-width:1080px){
  html.no-js .no-js-nav{display:block;}
}
.no-js-nav-inner{
  display:flex;
  flex-wrap:wrap;
  gap:8px 16px;
  padding:14px 0;
}
.no-js-nav a{
  display:inline-flex;
  align-items:center;
  min-height:40px;
  color:#44334a;
  font-weight:800;
  font-size:.88rem;
}
.no-js-nav .no-js-book{
  color:#fff;
  background:var(--pz-purple);
  border-radius:999px;
  padding:0 14px;
}
@media(max-width:650px){
  .no-js-nav-inner{
    display:grid;
    grid-template-columns:1fr;
    gap:2px;
  }
  .no-js-nav a{min-height:44px;}
}

/* Gallery is visibly non-interactive if its JavaScript controller never loads. */
html.no-js .gallery-item{cursor:default;}
.gallery-item:disabled{opacity:1;}

/* Strong two-tone keyboard indicator: visible on both light and dark surfaces. */
:where(a,button,summary,input,select,textarea):focus-visible{
  outline:3px solid #fff;
  outline-offset:2px;
  box-shadow:0 0 0 6px #5b2382;
}
.lightbox button:focus-visible{
  outline:3px solid #fff;
  outline-offset:2px;
  box-shadow:0 0 0 6px #5b2382;
}

/* Conditional Contact requirement is explicit to all users. */
.form-help{
  margin:-6px 0 18px;
  color:#6f6173;
  font-size:.82rem;
}

/* Keep Turnstile mount points shrinkable; JS selects compact below 310px. */
.turnstile-slot{min-width:0;max-width:100%;}


/* Text-only zoom resilience: all single-column responsive grids may shrink below min-content width. */
@media(max-width:900px){
  .release-layout{grid-template-columns:minmax(0,1fr);}
  .release-layout>*{min-width:0;}
}
@media(max-width:800px){
  .inquiry-grid{grid-template-columns:minmax(0,1fr);}
  .inquiry-grid>*{min-width:0;}
}
@media(max-width:700px){
  .privacy-grid{grid-template-columns:minmax(0,1fr);}
  .privacy-grid>*{min-width:0;}
}
@media(max-width:650px){
  .service-grid,
  .product-grid,
  .education-grid,
  .policy-grid,
  .credential-grid,
  .contact-details,
  .footer-grid{
    grid-template-columns:minmax(0,1fr);
  }
  .service-grid>*,
  .product-grid>*,
  .education-grid>*,
  .policy-grid>*,
  .credential-grid>*,
  .contact-details>*,
  .footer-grid>*{
    min-width:0;
  }
}
@media(max-width:980px){
  .academy-banner .btn-light{
    max-width:100%;
    white-space:normal;
    text-align:center;
  }
}


/* 200% text-only zoom: keep form controls and long hero words inside the viewport. */
.hero h1,
.hero h1 span{overflow-wrap:anywhere;}
.about-badge span{max-width:100%;overflow-wrap:anywhere;}
.contact-form input,
.contact-form select,
.contact-form textarea,
.form-row{min-width:0;max-width:100%;}
.release-fieldset legend{max-width:100%;overflow-wrap:anywhere;}
@media(max-width:560px){
  .form-two{grid-template-columns:minmax(0,1fr);}
  .form-two>*{min-width:0;}
}


/* Prevent implicit grid/flex min-content tracks from expanding under large text settings. */
.form-row{grid-template-columns:minmax(0,1fr);}
.release-form-intro>div{min-width:0;}
.release-form-intro h3,
.release-form-intro p,
.contact-form label{overflow-wrap:anywhere;}

/* v14 final intrinsic-size resilience: large user text settings must not widen the page. */
.nav-wrap,
.nav-links,
.education-grid,
.contact-details,
.service-grid,
.product-grid,
.policy-grid,
.credential-grid,
.footer-grid{
  min-width:0;
}
@media(min-width:981px){
  .nav-wrap{
    height:auto;
    min-height:78px;
    padding-block:8px;
    flex-wrap:wrap;
  }
  .nav-links{
    min-width:0;
    flex:1 1 560px;
    flex-wrap:wrap;
    justify-content:flex-end;
  }
}
.education-grid{grid-template-columns:repeat(5,minmax(0,1fr));}
.contact-details{grid-template-columns:repeat(2,minmax(0,1fr));}
.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.product-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
.policy-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.credential-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.footer-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);}
.education-grid article,
.education-grid b,
.education-grid p,
.contact-details > div,
.contact-details b,
.contact-details a,
.service-card,
.service-card h3,
.service-card p,
.policy-grid article,
.policy-grid h3,
.policy-grid p,
.credential-grid div,
.credential-grid b,
.credential-grid span,
.footer-grid > div,
.footer-grid a,
.footer-grid span{
  min-width:0;
  overflow-wrap:anywhere;
}
@media(max-width:980px){
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .education-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .credential-grid{grid-template-columns:minmax(0,1fr);}
  .policy-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .contact-details{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:650px){
  .service-grid,
  .product-grid,
  .education-grid,
  .policy-grid,
  .credential-grid,
  .contact-details,
  .footer-grid{
    grid-template-columns:minmax(0,1fr);
  }
}

/* v14 final text-resize resilience. Break only when a word cannot otherwise fit. */
body{overflow-wrap:anywhere;}
.brand,
.brand span,
.academy-banner > *,
.release-info,
.release-info li,
.privacy-grid > *,
.section-head > *,
.about-copy,
.inquiry-copy,
.contact-card > *{
  min-width:0;
}
.brand span{
  flex-wrap:wrap;
  line-height:1.12;
}
.menu-button{
  flex:0 0 auto;
  font-size:28px;
  line-height:1;
}
.academy-banner h3,
.academy-banner p,
.section h2,
.release-info li{
  max-width:100%;
  overflow-wrap:anywhere;
}
@media(max-width:360px){
  .about-badge{
    width:125px;
    height:auto;
    min-height:125px;
    padding:12px;
    border-radius:24px;
  }
  .about-badge span{max-width:100%;}
}

/* Ultra-narrow resilience: no control may impose a minimum width wider than its form. */
#photoReleaseSubmit,
#contactSubmit{
  min-width:0;
  max-width:100%;
  white-space:normal;
  overflow-wrap:anywhere;
  text-align:center;
}
@media(max-width:280px){
  .btn{
    min-width:0;
    max-width:100%;
    padding-inline:12px;
    white-space:normal;
    overflow-wrap:anywhere;
    text-align:center;
  }
  #photoReleaseSubmit,
  #contactSubmit{
    width:100%;
  }
}

/* Large-text resilience: action labels may wrap instead of creating internal horizontal scroll. */
.btn,
.btn-light{
  min-width:0;
  max-width:100%;
  white-space:normal;
  overflow-wrap:anywhere;
  text-align:center;
}


/* Team profile — Kottia Cotton */
.team-profile{
  width:100%;
  min-width:0;
  margin-top:48px;
  padding:30px;
  border:1px solid #eaddea;
  border-radius:24px;
  background:#fff;
  box-shadow:0 18px 45px rgba(62,20,78,.08);
  display:grid;
  grid-template-columns:auto minmax(0,1fr) minmax(260px,.58fr);
  gap:28px;
  align-items:center;
}
.team-profile-mark{
  width:92px;
  height:92px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#5b2382,#cf337f);
  color:#fff;
  font-family:Georgia,"Times New Roman",serif;
  font-size:2rem;
  font-weight:800;
  letter-spacing:.03em;
  box-shadow:0 12px 28px rgba(91,35,130,.18);
}
.team-profile-copy,
.team-contact,
.team-contact a,
.team-contact strong{min-width:0;}
.team-profile-copy .eyebrow{margin-bottom:7px;}
.team-profile-copy h3{
  font-family:Georgia,"Times New Roman",serif;
  color:#341344;
  font-size:clamp(1.85rem,3vw,2.55rem);
  line-height:1.05;
}
.team-role{
  margin-top:7px;
  color:#277d46;
  font-weight:850;
}
.team-profile-copy>p:last-child{
  margin-top:12px;
  color:#66566b;
}
.team-contact{display:grid;gap:10px;}
.team-contact a{
  padding:13px 15px;
  border:1px solid #eaddea;
  border-radius:13px;
  background:#fffafd;
  display:grid;
  transition:.2s ease;
}
.team-contact a:hover{
  transform:translateY(-2px);
  border-color:#d6bddc;
  box-shadow:0 10px 24px rgba(70,25,85,.08);
}
.team-contact small{
  color:#277d46;
  font-size:.64rem;
  font-weight:900;
  letter-spacing:.12em;
}
.team-contact strong{
  margin-top:3px;
  color:#4d1b67;
  font-size:.82rem;
  overflow-wrap:anywhere;
}
@media(max-width:980px){
  .team-profile{grid-template-columns:auto minmax(0,1fr);}
  .team-contact{
    grid-column:1/-1;
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:650px){
  .team-profile{
    margin-top:36px;
    padding:24px 20px;
    grid-template-columns:minmax(0,1fr);
    gap:20px;
  }
  .team-profile-mark{width:78px;height:78px;font-size:1.7rem;}
  .team-contact{grid-column:auto;grid-template-columns:minmax(0,1fr);}
}


/* Multi-stylist booking and team integration */
.booking-section{background:linear-gradient(180deg,#f8f1f9,#fff);}
.stylist-grid,.client-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.stylist-option,.client-status-option{appearance:none;text-align:left;border:2px solid #eaddea;border-radius:20px;background:#fff;padding:24px;display:grid;gap:8px;color:var(--pz-ink,#2f2033);cursor:pointer;box-shadow:0 8px 26px rgba(62,20,78,.05);}
.stylist-option:hover,.client-status-option:hover{border-color:#cdaed3;transform:translateY(-2px);}
.stylist-option[aria-pressed="true"]{border-color:var(--pz-purple,#5b2382);box-shadow:0 0 0 4px rgba(91,35,130,.10);}
.stylist-option[aria-pressed="true"]::after{content:'Selected ✓';font-weight:900;color:var(--pz-green,#267b46);}
.stylist-name{font-family:Georgia,"Times New Roman",serif;font-size:1.5rem;color:var(--pz-purple-dark,#35133f);font-weight:800;}
.booking-status-step{margin-top:26px;padding:26px;border:1px solid #e8dce9;border-radius:20px;background:#fff;}
.booking-step-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px;}
.booking-step-heading h3{font-family:Georgia,"Times New Roman",serif;color:var(--pz-purple-dark,#35133f);font-size:1.55rem;}
.booking-change{border:1px solid #d9cadc;background:#fff;border-radius:999px;padding:9px 14px;color:var(--pz-purple,#5b2382);font-weight:800;cursor:pointer;}
.client-status-option b{color:var(--pz-purple,#5b2382);margin-top:5px;}
.consultation-notice{margin-top:24px;padding:20px;border-left:4px solid var(--pz-green,#267b46);border-radius:12px;background:#f3faf5;}
.consultation-notice strong{color:var(--pz-purple-dark,#35133f);}
.consultation-notice p{margin-top:7px;color:#59665d;}
.booking-fallback:not(:empty){margin-top:18px;padding:14px 16px;border-radius:12px;background:#fff3f5;border:1px solid #efcbd4;color:#7d2338;font-weight:700;}
.team-intro{width:min(1160px,92%);margin:50px auto 20px;}
.team-intro h2{font-family:Georgia,"Times New Roman",serif;color:var(--pz-purple-dark,#35133f);font-size:clamp(2rem,4vw,3.2rem);}
.team-intro p{max-width:780px;margin-top:12px;color:#66566b;}
.profile-actions{margin-top:20px;}
#contactPreferredStylistWrap[hidden],#bookingStatusStep[hidden]{display:none!important;}
.stylist-option:focus-visible,.client-status-option:focus-visible,.booking-change:focus-visible{outline:3px solid rgba(91,35,130,.25);outline-offset:3px;}
@media(max-width:700px){.stylist-grid,.client-status-grid{grid-template-columns:1fr}.booking-step-heading{flex-direction:column}.stylist-option,.client-status-option{padding:20px}}

.no-js .stylist-grid,.no-js #bookingStatusStep{display:none!important;}

/* Static topic pages — shared Pazzion Stylez visual language */
.detail-page{background:#fffafc}.detail-header{position:sticky}.detail-nav-wrap{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.detail-nav{display:flex;align-items:center;justify-content:flex-end;gap:18px;flex-wrap:wrap}.detail-nav a{font-size:.9rem;font-weight:780;color:#44334a}.detail-nav .nav-cta{color:#fff}.detail-hero{padding:76px 0;background:radial-gradient(circle at 10% 15%,rgba(232,62,140,.10),transparent 30%),radial-gradient(circle at 85% 15%,rgba(45,143,80,.11),transparent 28%),linear-gradient(180deg,#fffafc,#fbf7ff)}.detail-hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:64px;align-items:center}.detail-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3rem,6vw,5.4rem);line-height:1.02;letter-spacing:-.035em;color:#341344}.detail-lede{font-size:1.12rem;color:#65556c;max-width:660px;margin-top:22px}.detail-visual{border-radius:30px;overflow:hidden;background:#f4eaf5;box-shadow:0 30px 70px rgba(60,21,81,.16);aspect-ratio:4/5}.detail-visual img{width:100%;height:100%;object-fit:cover}.detail-content{background:#fff}.detail-content-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:56px;align-items:start}.detail-content article>p{color:#66566b;margin-top:18px;max-width:760px}.detail-card{background:#f8f1f9;border:1px solid #eaddea;border-radius:22px;padding:28px;box-shadow:0 18px 45px rgba(62,20,78,.06)}.detail-card h2{font-size:2rem}.detail-card p{color:#66566b;margin-top:14px}.detail-card .btn{margin-top:22px}.detail-links{background:#fbf5fb}.detail-link-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:30px}.detail-link-grid a{display:grid;gap:6px;padding:22px;border-radius:18px;background:#fff;border:1px solid #eaddea;box-shadow:0 6px 22px rgba(62,20,78,.035)}.detail-link-grid strong{color:#4d1b67}.detail-link-grid span{color:#706174;font-size:.84rem}.detail-link-grid a:hover{border-color:#cdb5d5;transform:translateY(-2px)}
@media(max-width:900px){.detail-nav-wrap{padding:12px 0;align-items:flex-start}.detail-nav{gap:10px 14px}.detail-hero-grid,.detail-content-grid{grid-template-columns:1fr}.detail-visual{max-width:620px}.detail-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.detail-nav-wrap{min-height:auto;display:grid}.detail-nav{justify-content:flex-start}.detail-nav a{font-size:.82rem}.detail-hero{padding:54px 0}.detail-hero-grid{gap:34px}.detail-copy h1{font-size:clamp(2.7rem,14vw,4rem)}.detail-link-grid{grid-template-columns:1fr}.detail-content-grid{gap:30px}}
.service-links{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:18px}.service-links a,.profile-detail-link,.section-detail-link{color:#5b2382;font-weight:850;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.service-links a{font-size:.8rem}.service-links a:hover,.profile-detail-link:hover,.section-detail-link:hover{color:#cf337f}.profile-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.section-detail-link{display:inline-block;margin-top:16px;font-size:.88rem}

/* 2026-08-30 audit remediation: richer static service guides and breadcrumbs */
.breadcrumb-wrap{padding-top:18px}.breadcrumbs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.82rem;color:#746578}.breadcrumbs a{color:#5b2382;font-weight:800;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.breadcrumbs [aria-current="page"]{font-weight:800;color:#4f4154}.detail-guide{background:#fffafc}.detail-faq{background:#fff}.detail-section-head{max-width:850px}.detail-section-head h2{max-width:820px}.detail-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px}.detail-guide-card{padding:26px;border:1px solid #eaddea;border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(62,20,78,.045)}.detail-guide-card h3{font-family:Georgia,"Times New Roman",serif;font-size:1.45rem;line-height:1.18;color:#4d1b67}.detail-guide-card p{margin-top:13px;color:#66566b}.detail-faq-list{display:grid;gap:12px;margin-top:30px;max-width:920px}.detail-faq-list details{border:1px solid #eaddea;border-radius:16px;background:#fffafd;padding:0 20px}.detail-faq-list summary{cursor:pointer;list-style:none;padding:18px 32px 18px 0;font-weight:850;color:#4d1b67;position:relative}.detail-faq-list summary::-webkit-details-marker{display:none}.detail-faq-list summary::after{content:'+';position:absolute;right:2px;top:15px;font-size:1.45rem;color:#2c8f50}.detail-faq-list details[open] summary::after{content:'–'}.detail-faq-list details p{padding:0 0 20px;color:#66566b;max-width:820px}.detail-faq-list summary:focus-visible,.breadcrumbs a:focus-visible{outline:3px solid rgba(91,35,130,.25);outline-offset:4px;border-radius:4px}[aria-invalid="true"]{outline:3px solid rgba(185,34,78,.22);outline-offset:2px}
@media(max-width:900px){.detail-guide-grid{grid-template-columns:1fr}.breadcrumb-wrap{padding-top:14px}}
