/* Attachment styles: four independent pieces orbit a flexible sense of security. */
.guide-theme[data-guide-theme="attachment"]{--theme-ink:#455a55;--theme-accent:#a3a78f;--theme-glow:#ebece3;--theme-pale:#f6f7f1;--theme-border:#dce3d8;--theme-warm:#dec8ae}
.guide-theme[data-guide-theme="attachment"] .intro-hero{background:radial-gradient(ellipse 45% 77% at 91% 45%,#e6e7e1,transparent 85%),linear-gradient(138deg,#fffefa,#f2f4ed)}
.guide-theme[data-guide-theme="attachment"] .intro-hero h1{max-width:68%}
.guide-theme[data-guide-theme="attachment"] .intro-hero .intro-copy{max-width:66%}
.attachment-art{position:absolute;z-index:1;right:-1%;top:50%;width:min(44%,430px);transform:translateY(-50%);pointer-events:none}
.attachment-art img{display:block;width:100%;height:auto}
.att-intro{background:linear-gradient(135deg,#f1f4ec,#fcf9f0);border:1px solid #dce4d7;border-radius:18px;padding:27px 33px;margin:30px 0}
.att-intro h2{font:600 clamp(23px,2.4vw,30px)/1.6 var(--font-heading);margin:0 0 12px;color:#485d53}
.att-intro p{color:#677968;font-size:13px;line-height:2.15;margin:0}
.att-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:27px}
.att-card{--att-tone:#8fad9c;display:flex;gap:20px;position:relative;min-height:226px;padding:26px;border:1px solid #d8e4d9;border-radius:17px;background:#fffefa;transition:transform .22s,box-shadow .22s}
.att-card:hover{transform:translateY(-4px);box-shadow:0 15px 32px #405c4815}
.att-card[data-style="anxious"]{--att-tone:#8fad9c;background:linear-gradient(143deg,#fbfffb,#eff6f0)}
.att-card[data-style="avoidant"]{--att-tone:#a6b4bf;background:linear-gradient(143deg,#fbfdff,#eff3f6)}
.att-card[data-style="fearful"]{--att-tone:#bbaac1;background:linear-gradient(143deg,#fffdfd,#f4eff5)}
.att-card[data-style="secure"]{--att-tone:#d0b18e;background:linear-gradient(143deg,#fffcf8,#f6f1e8)}
.att-card-icon{flex:0 0 68px;height:68px;display:grid;place-items:center}
.att-card-icon svg{width:65px;height:65px}
.att-card strong{font:600 23px/1.6 var(--font-heading);color:#405a50}
.att-card .att-sub{display:block;font:600 11px/1.5 var(--font-body);color:#8b9587;margin:4px 0 10px}
.att-card p{font-size:12px;line-height:1.95;color:#66786d;margin:0 0 11px}
.att-card .att-arrow{font-size:11px;font-weight:700;color:#587a67}
.att-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:23px}
.att-grid a,.att-grid article{border:1px solid #dce5db;padding:23px 21px;border-radius:15px;background:#fffefa}
.att-grid h3{font:600 18px/1.7 var(--font-heading);color:#506b5a;margin:0 0 10px}
.att-grid p{font-size:12px;line-height:2;color:#758277;margin:0 0 15px}
.att-grid .read-more{font-weight:700;font-size:11px;color:#668c74}
.att-situation{display:grid;grid-template-columns:1fr 56px 1fr;align-items:center;gap:15px;margin:25px 0}
.att-situation .att-person{background:#f1f5ef;padding:25px;border-radius:15px;border:1px solid #dce6d9;min-height:172px}
.att-situation .att-person:last-child{background:#f4f1f4;border-color:#e2dce5}
.att-situation .att-person strong{display:block;color:#526b59;font:600 17px/1.7 var(--font-heading);margin-bottom:7px}
.att-situation .att-person p{font-size:13px;color:#65786a;line-height:2;margin:0}
.att-situation .att-between{text-align:center;color:#a8b7a6;font-size:35px}
.att-step{counter-reset:att-counter;list-style:none;padding:0;margin:22px 0}
.att-step li{counter-increment:att-counter;position:relative;padding:16px 22px 16px 62px;background:#f9faf5;border:1px solid #e0e7da;border-radius:13px;margin-bottom:12px;line-height:2}
.att-step li:before{content:counter(att-counter,decimal-leading-zero);position:absolute;left:19px;top:15px;color:#b2a88b;font:600 22px Georgia,serif}
.att-linklist{display:flex;gap:11px;flex-wrap:wrap;margin:24px 0}
.att-linklist a{padding:9px 13px;border:1px solid #d6e4d8;background:#fcfdfa;border-radius:30px;color:#597b61;font-size:12px}
.att-linklist a:hover{background:#eaf2e8}
.att-source{margin:25px 0;background:#f4f6f1;border-left:3px solid #a4bba5;padding:17px 22px;font-size:12px;color:#66796c}
.att-source a{text-decoration:underline;text-underline-offset:4px}
.att-feature{display:grid;grid-template-columns:120px 1fr;gap:23px;align-items:center;padding:25px;border:1px solid #dce5d9;border-radius:17px;background:linear-gradient(125deg,#f2f5ee,#fffaf3)}
.att-feature img{width:120px;height:auto}
.att-feature h3{font:600 21px var(--font-heading);color:#4e6658;margin:0 0 10px}
.att-feature p{font-size:12px;color:#748177;line-height:2;margin:0 0 11px}
.att-feature a{font-size:12px;color:#577a65;font-weight:700}
.att-badges{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0 25px}
.att-badges span{padding:5px 12px;background:#eff4ef;border-radius:20px;font-size:11px;color:#5b7a65}
@media(max-width:820px){.att-card{min-height:250px;padding:20px;gap:12px}.att-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.attachment-art{opacity:.43;width:42%}}
@media(max-width:620px){.guide-theme[data-guide-theme="attachment"] .intro-hero h1,.guide-theme[data-guide-theme="attachment"] .intro-hero .intro-copy{max-width:100%}.attachment-art{right:-30px;top:77%;width:205px;opacity:.14}.att-cards,.att-grid{grid-template-columns:1fr}.att-card{min-height:180px}.att-situation{grid-template-columns:1fr}.att-situation .att-between{font-size:25px;transform:rotate(90deg)}.att-feature{grid-template-columns:80px 1fr;padding:17px;gap:13px}.att-feature img{width:80px}.att-feature h3{font-size:17px}.att-intro{padding:21px 20px}}
@media(prefers-reduced-motion:reduce){.att-card{transition:none;transform:none!important}}